AWS re:Post을(를) 사용하면 다음에 동의하게 됩니다. AWS re:Post 이용 약관

보안 요구 사항을 충족하기 위해 Amazon EC2 Linux 인스턴스에서 SSH 암호를 제거하려면 어떻게 해야 합니까?

4분 분량
0

보안 요구 사항을 충족하기 위해 Amazon Elastic Compute Cloud(Amazon EC2) Linux 인스턴스에서 특정 Secure Shell(SSH) 암호를 제거하고 싶습니다.

간략한 설명

Amazon EC2 Linux 인스턴스의 보안 환경을 유지하려면 안전하지 않은 SSH 암호를 제거하십시오. 그런 다음 암호화 알고리즘만 사용하도록 SSH를 구성합니다.

해결 방법

사전 요구 사항: 시스템이 암호화 정책을 지원하는지 확인하십시오. Amazon Linux 2023 인스턴스는 암호화 정책 기능을 사용하여 암호화 설정을 관리합니다. 암호화 정책을 지원하는 배포판에 대한 자세한 내용을 알아보려면 Ubuntu 웹사이트의 (8) update-crypto-policies 또는 Red Hat Enterprise Linux(RHEL) 웹사이트의 System-wide cryptographic policies을 참조하세요.

시스템에서 암호화 정책을 지원하는지 확인하려면 SSH, Amazon EC2 인스턴스 연결 또는 AWS Systems Manager의 기능인 세션 관리자를 사용하여 인스턴스에 연결하세요. 그리고 나서 다음 명령을 실행합니다.

[user@localhost] # update-crypto-policies --show

다음 예와 비슷한 출력이 표시되면 시스템에서 암호화 정책을 지원하지 않는 것입니다.

update-crypto-policies: command not found

시스템에서 암호화 정책을 지원하는 경우 다음 출력 중 하나가 표시됩니다.

LEGACY
DEFAULT
FUTURE
FIPS

수동으로 SSH 암호 제거

Linux 시스템에서 암호화 정책을 지원하지 않는 경우, sshd_config 파일을 수정하여 SSH 암호를 수동으로 제거하십시오.

sshd_config 파일을 수정하려면 다음 단계를 완료하십시오.

  1. 인스턴스에서 Amazon Machine Image(AMI) 또는 Amazon Elastic Block Store (Amazon EBS) 스냅샷백업으로 생성합니다.

  2. SSH, EC2 인스턴스 연결 또는 세션 관리자를 사용하여 인스턴스에 로그인합니다.

  3. 루트 사용자로 전환하려면 다음 명령을 실행합니다.

     [user@localhost] # sudo -i
  4. 시스템에서 활성화된 암호를 찾으려면 다음 명령을 실행합니다.

    [root@localhost] # sshd -T | grep 'ciphers'
  5. 출력의 목록을 메모한 다음 안전하지 않은 암호를 제거합니다.

  6. /etc/ssh/ 디렉터리로 이동하려면 다음 명령을 실행합니다.

    [root@localhost] # cd /etc/ssh/
  7. sshd_config 파일의 백업을 생성하려면 다음 명령을 실행합니다.

    [root@localhost] # cp sshd_config sshd_config.bak
  8. 텍스트 편집기에서 sshd_config 파일을 열려면 다음 명령을 실행합니다.

    [root@localhost] # vi sshd_config
  9. 파일에 다음과 비슷한 암호 섹션이 포함되어 있는지 확인하세요.

    ciphers chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,aes128-cbc,aes192-cbc,aes256-cbc,blowfish-cbc,cast128-cbc,3des-cbc
  10. 암호 섹션이 파일에 있는 경우 이를 편집하여 안전하지 않은 암호를 제거하십시오. 암호 섹션이 없는 경우 파일 끝에 암호 목록을 추가하세요.

  11. 파일을 저장하고 종료합니다.

  12. 변경 사항을 적용하려면 다음 명령을 실행하여 SSHD 프로세스를 다시 시작합니다.

[root@localhost] # service sshd restart
  1. 업데이트된 암호 목록에 변경 사항이 적용되었는지 확인하려면 다음 명령을 실행합니다.
[root@localhost] # sshd -T | grep 'ciphers'

안전하지 않은 Kex 알고리즘 제거

안전하지 않은 키 교환(Kex) 알고리즘을 제거하려면 다음 단계를 완료하십시오.

  1. 인스턴스에서 Amazon Machine Image(AMI) 또는 Amazon EBS 스냅샷백업으로 생성합니다.

  2. SSH, EC2 인스턴스 연결 또는 세션 관리자를 사용하여 인스턴스에 로그인합니다.

  3. 현재 활성화된 Kex 알고리즘을 찾으려면 다음 명령을 실행합니다.

    [root@localhost] # sshd -T | grep 'kex'
  4. 시스템에서 활성화된 암호를 찾으려면 다음 명령을 실행합니다.

    [root@localhost] # sshd -T | grep 'ciphers'
  5. 출력의 목록을 메모한 다음 안전하지 않은 암호를 제거합니다.

  6. /etc/ssh/ 디렉터리로 이동하려면 다음 명령을 실행합니다.

    [root@localhost] # cd /etc/ssh/
  7. sshd_config 파일의 백업을 생성하려면 다음 명령을 실행합니다.

    [root@localhost] # cp sshd_config sshd_config.bak
  8. Amazon Machine Image (AMI)로 시작하는 줄에서 안전하지 않은 알고리즘을 제거합니다.

  9. 파일에 다음과 비슷한 암호 섹션이 포함되어 있는지 확인하세요.

    ciphers chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,aes128-cbc,aes192-cbc,aes256-cbc,blowfish-cbc,cast128-cbc,3des-cbc
  10. 암호 섹션이 파일에 있는 경우 이를 편집하여 안전하지 않은 암호를 제거하십시오. 암호 섹션이 없는 경우 파일 끝에 암호 목록을 추가하세요.

  11. 파일을 저장하고 종료합니다.

  12. 변경 사항이 적용되었는지 확인하려면 다음 명령을 실행합니다.

[root@localhost] # sshd -T | grep 'kex'

암호화 정책을 사용하여 암호 제거

시스템에서 암호화 정책을 지원하고 이전에 생성된 프로필을 사용하는 경우 다음 단계를 완료하십시오.

  1. 배포에서 사용 가능한 암호화 프로필을 확인하려면 다음 명령을 실행합니다.

    [user@localhost] # ls /usr/share/crypto-policies/policies
  2. 시스템의 정책 설정을 변경하려면 다음 명령을 실행합니다.

    [user@localhost] # sudo update-crypto-policies --set POLICY_NAME

    참고: POLICY_NAME을 정책의 이름(예: FUTURE)으로 바꿉니다.

  3. 새 정책을 적용하려면 다음 명령을 실행하여 시스템을 재부팅합니다.

    [user@localhost] # sudo reboot
  4. 다음 명령을 실행하여 새 정책이 활성화되었는지 확인합니다.

    [user@localhost] # sudo update-crypto-policies --show

이전에 생성한 정책이 보안 요구 사항을 충족하지 않는 경우 암호화 정책에 대한 사용자 지정 정책을 생성하세요.

사용자 지정 정책을 생성하려면 다음 단계를 완료하십시오.

  1. 정책 복사:

    [user@localhost] # sudo cp /usr/share/crypto-policies/policies/DEFAULT.pol /etc/crypto-policies/policies/POLICY_NAME.pol
  2. 텍스트 편집기에서 새 정책 파일을 편집하고 시스템에서 사용하지 않으려는 암호를 제거합니다.

    [user@localhost] # sudo vi /etc/crypto-policies/policies/POLICY_NAME.pol
  3. 파일을 저장하고 종료합니다.

  4. 다음 명령을 실행하여 시스템의 정책 설정을 업데이트합니다.

    [user@localhost] # sudo update-crypto-policies --set POLICY_NAME
  5. 새 정책을 적용하려면 다음 명령을 실행하여 시스템을 재부팅합니다.

    [user@localhost] # sudo reboot
  6. 다음 명령을 실행하여 새 정책이 활성화되었는지 확인합니다.

    [user@localhost] # sudo update-crypto-policies --show

관련 정보

기본 SSH 서버 구성

AL2023 에서 FIPS 모드 활성화

AWS 공식
AWS 공식업데이트됨 2달 전