SSH 키 교체 - AWS Transfer Family

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

SSH 키 교체

보안상 SSH 키 교체는 보안 모범 사례로 권장됩니다. 일반적으로 이러한 교체는 보안 정책의 일부로 지정되며, 자동화된 방식으로 구현됩니다. 보안 수준에 따라, 대단히 민감한 통신의 경우 SSH 키 쌍을 한 번만 사용할 수도 있습니다. 이렇게 하면 저장된 키 때문에 발생하는 모든 위험을 제거할 수 있습니다. 하지만 SSH 보안 인증을 일정 기간 보관하고, SFTP 사용자에게 과도한 부담을 주지 않는 주기를 설정하는 방법이 더 보편적입니다. 가장 일반적인 주기는 3개월입니다.

참고

코드형 인프라를 사용한 자동화된 SSH 키 교체는 섹션을 참조하세요Transfer Family Terraform 모듈.

SSH 키 교체는 2가지 방식으로 실행합니다.

  • 콘솔에서 새 SSH 퍼블릭 키를 업로드하고 기존 SSH 퍼블릭 키를 삭제할 수 있습니다.

  • API를 사용하면 DeletesSHPublickey API를 사용하여 사용자의 SSH (Secure Shell) 퍼블릭 키를 삭제하고 ImportSSHPublic Key API를 사용하여 사용자 계정에 새 Secure Shell(SSH) 퍼블릭 키를 추가하여 기존 사용자를 업데이트할 수 있습니다.

Console
콘솔에서 키 로테이션을 수행하려면
  1. https://console.aws.amazon.com/transfer/ AWS Transfer Family 콘솔을 엽니다.

  2. 서버 페이지로 이동합니다.

  3. 서버 ID 열에서 식별자를 선택하여 서버 세부 정보 페이지를 표시합니다.

  4. 사용자에서 SSH 퍼블릭 키를 교체하려는 사용자의 확인란을 선택한 다음 작업을 선택하고 키 추가를 선택하여 키 추가 페이지를 확인합니다.

    or

    사용자 세부 정보 페이지를 보려면 사용자 이름을 선택한 다음 SSH 퍼블릭 키 추가를 선택하여 키 추가 페이지를 확인합니다.

  5. 새 SSH 퍼블릭 키를 입력하고 키 추가를 선택합니다.

    중요

    SSH 퍼블릭 키의 형식은 생성한 키 타입에 따라 다릅니다.

    • RSA 키의 경우, 그 형식은 ssh-rsa string입니다.

    • ED25519 키의 경우, 그 형식은 ssh-ed25519 string입니다.

    • ECDSA 키의 경우, 키는 생성한 키 크기에 따라 ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, 또는 ecdsa-sha2-nistp521(으)로 시작합니다. 그런 다음 다른 키 타입과 마찬가지로 시작 문자열 뒤에 string이(가) 옵니다.

    사용자 세부 정보 페이지로 돌아오면 방금 입력한 새 SSH 퍼블릭 키가 SSH 퍼블릭 키 섹션에 표시됩니다.

  6. 삭제할 보안 인증 옆의 확인란을 선택하고 삭제를 선택합니다.

  7. 단어 delete를 입력하여 삭제 작업을 확인한 다음 삭제를 선택합니다.

API
API를 사용하여 키 로테이션을 수행하려면
  1. macOS, Linux 또는 Unix 작동 시스템에서는 명령 터미널을 엽니다.

  2. 다음 명령을 입력하여 삭제하려는 SSH 키를 검색합니다. 이 명령을 사용하려면, serverID를 Transfer Family 서버의 서버 ID로 바꾸고 username를 사용자 이름으로 바꾸세요.

    aws transfer describe-user --server-id='serverID' --user-name='username'

    이 명령은 사용자에 대한 세부 정보를 반환합니다. "SshPublicKeyId": 필드 내용을 복사합니다. 이 값은 이 절차의 뒷부분에서 입력해야 합니다.

    "SshPublicKeys": [ { "SshPublicKeyBody": "public-key", "SshPublicKeyId": "keyID", "DateImported": 1621969331.072 } ],
  3. 다음으로, 사용자의 새 SSH 키를 가져옵니다. 프롬프트에 다음 명령을 입력합니다. 이 명령을 사용하려면 serverID를 Transfer Family 서버의 서버 ID로 바꾸고 username를 사용자 이름으로 바꾸고 public-key를 새 퍼블릭 키의 지문으로 바꾸세요.

    aws transfer import-ssh-public-key --server-id='serverID' --user-name='username' --ssh-public-key-body='public-key'

    이 명령이 성공하면 출력이 반환되지 않습니다.

  4. 마지막으로 다음 명령을 실행하여 이전 키를 삭제합니다. 이 명령을 사용하려면 serverID를 Transfer Family 서버의 서버 ID로 바꾸고 username를 사용자 이름으로 바꾸고 keyID-from-step-2를 이 절차의 2단계에서 복사한 키 ID 값으로 바꾸세요.

    aws transfer delete-ssh-public-key --server-id='serverID' --user-name='username' --ssh-public-key-id='keyID-from-step-2'
  5. (옵션) 이전 키가 더 이상 존재하지 않는지 확인하려면 2단계를 반복합니다.