본문 바로가기
DevOps/AWS

Cloud9에서 키페어 생성 후 AWS에 등록

by 태옹 2023. 8. 7.

키페어를 생성하는 방법에는 다음의 두 가지 방법이 있다.

1. AWS 콘솔에서 키페어 생성 -> Cloud9 인스턴스로 가지고 오기

2. Cloud9 인스턴스에서 키페어 생성 -> AWS에 등록하기

 

우리는 2번째 방법(SSH KEYGEN 사용)을 사용하여 키페어를 등록해본다.

 


1. SSH 키 페어를 생성 후 .pem 확장자로 복사

ssh-keygen -t rsa -b 2048 -C "" -f "$HOME/.ssh/<키페어이름>" -N "" && sudo cp /home/ec2-user/.ssh/<키페어이름> /home/ec2-user/.ssh/<키페어이름>.pem

 

 

👇🏻 명령어 설명

더보기

1. ssh-keygen -t rsa -b 2048 -C "" -f "$HOME/.ssh/<키페어이름>" -N "":

  • ssh-keygen : SSH 키 생성을 위한 명령어입니다.
  • -t rsa : RSA 암호화 알고리즘을 사용하여 키를 생성합니다.
  • -b 2048 : 2048 비트 길이의 키를 생성합니다.
  • -C "" : 주석(comment)을 추가하는 옵션입니다. 여기서는 빈 문자열이 주석으로 사용되었습니다.
  • -f "$HOME/.ssh/<키페어이름>" : 생성된 키의 저장 위치와 이름을 지정합니다. $HOME은 사용자의 홈 디렉토리를 나타냅니다. 따라서 키는 사용자의 .ssh 디렉토리에 <키페어이름> 이름으로 저장됩니다.
  • -N "" : 키의 암호를 설정하는 옵션입니다. 여기서는 빈 문자열이므로 암호 없이 키가 생성됩니다.

 

2. && : 이전 명령어가 성공적으로 완료되면 다음 명령어를 실행

 

3. sudo cp /home/ec2-user/.ssh/<키페어이름> /home/ec2-user/.ssh/<키페어이름>.pem:

  • sudo : 명령을 관리자 권한(root)으로 실행합니다.
  • cp : 파일을 복사하는 명령어입니다.
  • /home/ec2-user/.ssh/<키페어이름> : 원본 파일의 경로입니다.
  • /home/ec2-user/.ssh/<키페어이름>.pem : 복사될 대상 파일의 경로입니다. 기본적으로는 원본 파일의 이름에 .pem 확장자가 추가됩니다.

 

위의 명령어를 실행하고 ls /home/ec2-user/.ssh 로 확인해보면 아래와 같이 3개의 파일이 생성됨을 확인할 수 있다.

(tf-key는 키페어이름)

tf-key  tf-key.pem  tf-key.pub

 

 

2. AWS에 public key 등록

aws ec2 import-key-pair --key-name "<키페어이름>" --public-key-material fileb://~/.ssh/<키페어이름>.pub

AWS CLI를 사용하여 Cloud9 인스턴스에 생성된 publick key를 가져온다.

 

👇🏻 명령어 설명

더보기

--public-key-material fileb://~/.ssh/<키페어이름>.pub:

  • --public-key-material: 키 페어의 공개 키 내용을 지정하는 옵션입니다.
  • fileb://: 파일의 내용을 바이트로 읽어들이는 접두사입니다. (AWS CLI에서 사용되는 특별한 접두사)
  • ~/.ssh/<키페어이름>.pub: 사용자의 홈 디렉토리의 .ssh 폴더에 위치한 <키페어이름>.pub 파일. 이 파일은 ssh keygen 명령어로 생성된 RSA 키 페어의 공개 키를 포함하고 있습니다.

 

다음 실습에서는 이렇게 생성한 키페어를 가지고 인스턴스와 로드밸런서를 생성해볼 것이다. 👾

댓글