반응형

EC2 인스턴스를 생성하면 기본 계정(ec2-user)이 생성됩니다.

기본 계정의 경우 다수에게 알려져 있기 때문에 보안에 취약할 수 있습니다.

기본 계정 외 sudo 권한이 있는 새로운 계정을 생성하고
기존의 기본 계정은 삭제하여 불법적인 접근을 막을 수 있도록 해보겠습니다.

🧑‍🔧 신규 계정 생성 및 기본 계정 설정

퍼블릭 키 확인

로컬에 저장된 기존 계정(ec2-user)의 키 페어 파일에서 퍼블릭 키를 검색하여
ssh-rsa … 로 시작하는 반환 결과를 확인합니다.

ssh-keygen -y -f {키_페어_파일}

사용자 계정 생성

EC2 인스턴스에 접속한 후 SUDO 권한이 있는 계정으로 새로운 계정을 생성하고
새로 생성한 계정으로 전환합니다.

sudo adduser {신규_계정명}
sudo su - {신규_계정명}

사용자 계정 root에 .ssh 디렉토리를 만들고 권한을 700으로 변경합니다.

mkdir .ssh
chmod 700 .ssh

.ssh/authorized_keys 파일을 생성하고 권한을 600으로 변경합니다.

cd .ssh
touch authorized_keys
chmod 600 authorized_keys

에디터로 authorized_keys 파일을 열어
앞서 확인했던 키 페어 파일의 퍼블릭 키를 붙여 넣고 저장합니다.

sudo 권한 부여

새로운 계정에 sudo 권한을 부여하고, 기존 계정(ec2-user)은 삭제하기 위해
ec2-user 계정에서 /etc/sudoers.d/90-cloud-init-users 파일에 새로운 계정을 추가하고 저장합니다.

✍️ sudoers 관련 파일들은 visudo 명령으로만 수정할 수 있습니다.

sudo visudo -f /etc/sudoers.d/90-cloud-init-users
# Created by cloud-init v. 19.3-45.amzn2 on Wed, 20 Jul 2022 04:30:09 +0000

# User rules for ec2-user
ec2-user ALL=(ALL) NOPASSWD:ALL
{신규_계정명} ALL=(ALL) NOPASSWD:ALL

새로운 계정으로 로그인 한 후 sudo 권한을 확인합니다.

기본 계정 제거

더 이상 사용하지 않을 기존 계정은 삭제합니다.

sudo userdel -r {사용자_계정}

🔗 참고 링크

https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/managing-users.html

 

Linux 인스턴스에서 사용자 계정 관리 - Amazon Elastic Compute Cloud

퍼블릭 키를 연속된 한 줄에 붙여넣는지 확인합니다. 퍼블릭 키는 여러 줄로 분할되지 않아야 합니다.

docs.aws.amazon.com

https://blog.outsider.ne.kr/505

 

Ubuntu에서 sudo 명령어로 root권한 얻지 못할때 :: Outsider's Dev Story

메인OS는 아니지만 우분투를 사용한지도 좀 되긴 했지만 항상 X-window상에서만 사용하다가 보니 꽤 많은 부분이 자동설정되어 있이서 따로 의식하지 못하고 있었습니다. 서버에 설치된 우분투에

blog.outsider.ne.kr

https://jojoldu.tistory.com/433

 

2. Ansible (앤서블) 로 전체 서버 계정 추가하기 - CLI로 계정 추가하기

이번 시간엔 앤서블 CLI를 통해 각 호스트에 루트 권한을 가진 계정을 추가해보겠습니다. 2-1. 모듈? 실습에 들어가기 앞서 앤서블의 모듈에 대해 간단하게 소개하겠습니다. 앤서블의 공식 홈페이

jojoldu.tistory.com

 

반응형

+ Recent posts