내 키 페어 설명하기

내 키 페어 설명하기

Amazon EC2에 저장한 키 페어를 설명(describe)할 수 있어요. 공개 키 자료를 검색하고 시작 시 지정한 공개 키를 식별할 수도 있어요. 이 절에서 콘솔·AWS CLI·PowerShell·IMDS로 이를 확인하는 방법을 살펴볼게요.

출처: 문서

본문

Amazon EC2에 저장한 키 페어를 설명할 수 있어요. 공개 키 자료를 검색하고 시작 시 지정한 공개 키를 식별할 수도 있어요.

키 페어 설명하기

Amazon EC2에 저장된 공개 키에 대해 다음 정보를 볼 수 있어요: 공개 키 이름, ID, 키 유형, 지문(fingerprint), 공개 키 자료, Amazon EC2가 키를 만든 날짜·시간(UTC 시간대, 제3자 도구로 만든 키라면 Amazon EC2로 가져온 날짜·시간), 공개 키와 연결된 모든 태그.

Console(콘솔) —

키 페어 정보를 보려면
  • Amazon EC2 콘솔을 https://console.aws.amazon.com/ec2/에서 엽니다.
  • 왼쪽 탐색기에서 Key Pairs를 선택합니다.
  • Key pairs 표에서 각 공개 키에 대한 정보를 볼 수 있어요.
  • 공개 키의 태그를 보려면 키 옆 체크박스를 선택한 다음 Actions, Manage tags를 선택합니다.

AWS CLI —

키 페어 정보를 보려면

describe-key-pairs 명령을 사용합니다.

aws ec2 describe-key-pairs --key-names key-pair-name

PowerShell —

키 페어 정보를 보려면

Get-EC2KeyPair cmdlet을 사용합니다.

Get-EC2KeyPair -KeyName key-pair-name

공개 키 자료 검색하기

키 페어의 공개 키 자료를 얻을 수 있어요. 다음은 공개 키 예시예요. 참고로 가독성을 위해 줄바꿈이 추가됐어요.

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V
hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr
lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ
qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb
BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE

Private key —

ssh-keygen으로 공개 키 자료를 검색하려면(Linux)

로컬 Linux 또는 macOS 컴퓨터에서 ssh-keygen 명령을 사용합니다. 개인 키를 다운로드한 경로(.pem 파일)를 지정하세요.

ssh-keygen -y -f /path_to_key_pair/my-key-pair.pem

이 ssh-keygen 명령이 실패하면 다음 chmod 명령을 실행해 개인 키 파일에 필요한 권한이 있는지 확인하세요.

chmod 400 key-pair-name.pem
PuTTYgen으로 공개 키 자료를 검색하려면(Windows)

로컬 Windows 컴퓨터에서 PuTTYgen을 시작합니다. Load를 선택합니다. .ppk 또는 .pem 개인 키 파일을 선택합니다. PuTTYgen은 Public key for pasting into OpenSSH authorized_keys file 아래에 공개 키를 표시해요. Save public key를 선택해 파일 이름을 지정하고 파일을 저장한 다음 파일을 열어 공개 키를 볼 수도 있어요.

AWS CLI —

공개 키 자료를 검색하려면

다음 describe-key-pairs 명령을 사용하고 --include-public-key 옵션을 지정합니다.

aws ec2 describe-key-pairs \
--key-names key-pair-name \
--include-public-key \
--query "KeyPairs[].PublicKey"

PowerShell —

공개 키 자료를 검색하려면

Get-EC2KeyPair cmdlet을 사용합니다.

(Get-EC2KeyPair -KeyName key-pair-name -IncludePublicKey $true).PublicKey

IMDSv2 —

Linux

Linux 인스턴스에서 다음 명령을 실행합니다.

TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
&& curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key
Windows

Windows 인스턴스에서 다음 cmdlet을 실행합니다.

[string]$token = Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} -Method PUT -Uri http://169.254.169.254/latest/api/token
Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token" = $token} -Method GET -Uri http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key

IMDSv1 —

Linux

Linux 인스턴스에서 다음 명령을 실행합니다.

curl http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key
Windows

Windows 인스턴스에서 다음 cmdlet을 실행합니다.

Invoke-RestMethod -uri http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key

시작 시 지정한 공개 키 식별하기

인스턴스를 시작할 때 공개 키를 지정하면 공개 키 이름이 인스턴스에 기록돼요. 인스턴스에 대해 보고되는 공개 키 이름은, 인스턴스에서 공개 키를 변경하거나 공개 키를 추가해도 바뀌지 않아요.

Console(콘솔) —

인스턴스 시작 시 지정한 공개 키를 식별하려면
  • Amazon EC2 콘솔을 https://console.aws.amazon.com/ec2/에서 엽니다.
  • 탐색 창에서 Instances를 선택합니다.
  • 인스턴스를 선택합니다.
  • Details 탭의 Instance details 아래에서 Key pair assigned at launch를 찾습니다.

AWS CLI —

인스턴스 시작 시 지정한 공개 키를 식별하려면

다음 describe-instances 명령을 사용합니다.

aws ec2 describe-instances \
--instance-id i-1234567890abcdef0 \
--query "Reservations[].Instances[].KeyName" \
--output text

다음은 출력 예시예요.

key-pair-name

PowerShell —

인스턴스 시작 시 지정한 공개 키를 식별하려면

Get-EC2Instance cmdlet을 사용합니다.

(Get-EC2Instance -InstanceId i-1234567890abcdef0).Instances | Select KeyName

다음은 출력 예시예요.

KeyName
-------
key-pair-name

더 알아보기