Linux용 공유 AMI 사용 준비 - Amazon Elastic Compute Cloud

Linux용 공유 AMI 사용 준비

Linux용 공유 AMI를 사용하기 전에 다음 과정에 따라 다음 과정을 따라 외부 사용자의 인스턴스 액세스를 허용하는 자격 증명 프로그램이나 민감한 정보를 외부로 전송할 수 있는 원격 로그인 설정이 포함된 AMI인지를 확인해야 합니다. 시스템 보안성 향상에 대한 정보는 AMI에서 사용하는 Linux 배포 제품용 문서를 참조하세요.

인스턴스에 대한 액세스가 끊기는 사고를 방지하려면 두 개의 SSH 세션을 시작해 한 세션에서 출처가 확실하지 않은 자격 증명 프로그램을 제거하고 SSH를 사용해 인스턴스에 로그인을 시도해 보고, 문제없음이 확인될 때까지 다른 세션을 오픈된 상태로 유지하는 것을 권장합니다.

  1. 허용되지 않은 퍼블릭 SSH 키를 확인하고 비활성화합니다. AMI를 시작할 때는 파일에 포함된 키만 사용해야 합니다. 다음 명령은 authorized_keys 파일을 찾습니다.

    [ec2-user ~]$ sudo find / -name "authorized_keys" -print -exec cat {} \;
  2. 루트 사용자의 암호 방식 인증을 비활성화합니다. sshd_config 파일을 열고 PermitRootLogin 줄을 다음과 같이 편집합니다.

    PermitRootLogin without-password

    또는 인스턴스에 루트 사용자로 로그인하여 기능을 비활성화할 수 있습니다.

    PermitRootLogin No

    sshd 서비스를 재시작합니다.

  3. 인스턴스에 로그인할 수 있는 다른 사용자가 있는지 확인합니다. 수퍼유저 권한을 가진 사용자에게 특히 유의해야 합니다. 알 수 없는 계정은 모두 암호를 제거하거나 잠금 설정합니다.

  4. 개방 포트 중 사용하지 않는 포트 및 들어오는 연결을 수신하는 네트워크 서비스가 실행 중이지 않은 포트를 확인합니다.

  5. 사전 구성을 통한 원격 로그인을 방지하려면 기존의 구성 파일을 삭제하고 rsyslog 서비스를 재시작해야 합니다. 예:

    [ec2-user ~]$ sudo rm /etc/rsyslog.conf [ec2-user ~]$ sudo service rsyslog restart
  6. 모든 cron 작업의 유효성을 확인합니다.

보안을 위협하는 것으로 생각되는 퍼블릭 AMI를 발견했다면 AWS 보안 팀에 연락하세요. 자세한 정보는 AWS 보안 센터 섹션을 참조하세요.