Cloud/AWS

[Linux] AWS EC2 비밀번호 설정 및 sudo 권한 부여 방법

yeit 2024. 7. 27. 11:06
728x90

 

Intro

AWS에서는 기본적으로 EC2인스턴스를 접속할 때 key pair(pem키)를 사용해서 접속한다. 하지만 특정 상황에서는 SSH 키가 아닌 비밀번호 기반의 접속이 필요할 수 있다. 그러므로 AWS EC2 인스턴스에 비밀번호 기반 접속을 설정하고 sudo권한까지 부여하는 방법에 대해 알아보자.

 

 

 

AWS EC2 비밀번호 설정 방법

1. EC2 인스턴스 로그인

# ssh -i <key.pem경로> ec2-user@<ec2-instance-public-dns>

 

2. SSH 설정 파일 수정

/etc/ssh/sshd_config에서 PasswordAuthentication을 yes로 변경해 준다.

# vi /etc/ssh/sshd_config
...
PasswordAuthentication yes
...

 

3. SSH 서비스 재시작

변경 사항을 적용하기 위해 SSH 서비스를 재시작해준다.

# systemctl restart sshd

 

4. 사용자 비밀번호 설정

비밀번호를 설정하려는 사용자에 대해 비밀번호를 설정해 준다.

# sudo passwd ec2-user
비밀번호 입력

 

5. 확인

# ssh ec2-user@<Public IP>

 

 

 

sudo 권한 부여하기

최초 계정 생성 후, sudo -i를 해보면 'user is not in the sudoers file.'이라는 문구가 나온다. 이는 현재 사용자가 sudo 명령을 실행할 수 있는 권한이 없다는 의미이다. sudoers 파일에 해당 사용자를 추가해 줘야 sudo 권한을 사용할 수 있다.

 

1. /etc/sudoers 파일 권한 수정

/etc/sudoers 파일의 권한을 조회해 보면 읽기 모드로 되어있다. 이를 chmod로 루트에 쓰기 권한을 추가해 준다.

# ll /etc/sudoers
# chmod +w /etc/sudoers

 

2. /etc/sudoers파일에 사용자 추가

# vi /etc/sudoers
...
## Allow root to run any commands anywhere
root      ALL=(ALL)       ALL
username  ALL=(ALL)       ALL   =>추가

 

3. /etc/sudoers 파일 권한 복구

# chmod -w /etc/sudoers
# ll /etc/sudoers

 

4. 확인

# su - username
# sudo -i

 

728x90