Linux용 공유 AMI 사용 준비
Linux용 공유 AMI를 사용하기 전에 다음 과정에 따라 다음 과정을 따라 외부 사용자의 인스턴스 액세스를 허용하는 자격 증명 프로그램이나 민감한 정보를 외부로 전송할 수 있는 원격 로그인 설정이 포함된 AMI인지를 확인해야 합니다. 시스템 보안성 향상에 대한 정보는 AMI에서 사용하는 Linux 배포 제품용 문서를 참조하세요.
인스턴스에 대한 액세스가 끊기는 사고를 방지하려면 두 개의 SSH 세션을 시작해 한 세션에서 출처가 확실하지 않은 자격 증명 프로그램을 제거하고 SSH를 사용해 인스턴스에 로그인을 시도해 보고, 문제없음이 확인될 때까지 다른 세션을 오픈된 상태로 유지하는 것을 권장합니다.
-
허용되지 않은 퍼블릭 SSH 키를 확인하고 비활성화합니다. AMI를 시작할 때는 파일에 포함된 키만 사용해야 합니다. 다음 명령은
authorized_keys
파일을 찾습니다.[ec2-user ~]$
sudo find / -name "authorized_keys" -print -exec cat {} \;
-
루트 사용자의 암호 방식 인증을 비활성화합니다.
sshd_config
파일을 열고PermitRootLogin
줄을 다음과 같이 편집합니다.PermitRootLogin without-password
또는 인스턴스에 루트 사용자로 로그인하여 기능을 비활성화할 수 있습니다.
PermitRootLogin No
sshd 서비스를 재시작합니다.
-
인스턴스에 로그인할 수 있는 다른 사용자가 있는지 확인합니다. 수퍼유저 권한을 가진 사용자에게 특히 유의해야 합니다. 알 수 없는 계정은 모두 암호를 제거하거나 잠금 설정합니다.
-
개방 포트 중 사용하지 않는 포트 및 들어오는 연결을 수신하는 네트워크 서비스가 실행 중이지 않은 포트를 확인합니다.
-
사전 구성을 통한 원격 로그인을 방지하려면 기존의 구성 파일을 삭제하고
rsyslog
서비스를 재시작해야 합니다. 예:[ec2-user ~]$
sudo rm /etc/rsyslog.conf
[ec2-user ~]$
sudo service rsyslog restart
-
모든 cron 작업의 유효성을 확인합니다.
보안을 위협하는 것으로 생각되는 퍼블릭 AMI를 발견했다면 AWS 보안 팀에 연락하세요. 자세한 정보는 AWS 보안 센터