IT/AWS

[AWS] PPK Key (puttygen) 생성 | 자체 PEM Key 생성 | SSH 내부 접속

o_zeew 2022. 6. 17. 13:22

(1) .ppk Key (putty key) 생성

(2) 자체 .pem Access Key 생성

(3) SSH로 내부 접속


 1. .ppk Key 생성 (Putty) 

 

1. puttygen 다운

putty.org - Download PuTTY
64-bit

 

2. Key 생성

public/private key 생성

 

  * puttygen에서 Key 생성 시 마우스를 화면 위에서 움직여줘야 생성 가능

생성중

 

  - test 이름으로 public key 저장

 

  - test1 이름으로 private key 저장

 

  - test2 이름으로 OpenSSH key 저장

 

  - 생성 확인

 

  * .ppk 형식으로 생성한 test, test1 파일은 형식이 지금까지 실습때 사용했던 Key 와는 다른 모습

 

  * .pem 방식이 익숙한 모습

 

  ※ puttygen은 key의 형식이 다르기 때문에 AWS에서 별도 지원 ※

 

 


 

 

 2. 자체 .pem Access Key 생성

  * 스크립트 작성 시 옵션 없이 작성하면 필수 항목들을 물어보는 질문에 답하기가 어려워지기 때문에 옵션으로 미리 설정

 

1. SSH KEY 생성

  - -m : 포맷 지정, AWS에서는 .pem을 권장

  - -f : 출력하는 파일의 이름 지정

  - -q : 질문 하지 말라는 뜻
  - -N "" : 패스워드 X

옵션 지정해서 생성 시 별 다른 질문 없이 생성 가능 (스크립트 작성 용이)

 

2. 생성된 Key 확인

jwoh(private key), jwoh.pub(public key) 확인 가능
private key 확인

 

  * Public Key에서는 ssh-rsa 뒤의 띄어쓰기 한칸을 제외하고는 띄어쓰기가 존재 X

  * Public Key는 AAAA로 시작

public key 확인

 

  * 맨 끝의 = 뒤에 오는 컴퓨터이름은 삭제 가능

 

3. AWS에 공개키 올리기

  * 따로 저장해둔 웹 콘솔 접속 url을 사용하여 admin으로 로그인

region 서울
키 페어 가져오기

 

  - 생성한 Public Key를 복사해서 붙여넣기

키 페어 가져오기
키 페어 등록 완료

 

 


 

 

 3. SSH로 내부 접속

  - 인스턴스 2개 생성 후 첫번 째 인스턴스에만 Elastic IP 할당

  - 첫번째 인스턴스에 xShell 접속 후 SSH로 두번째 인스턴스에 내부 접속

SSH 구성도

 

1. 인스턴스 생성

첫번째 인스턴스 생성

 

  - 위에서 가져온 키 페어 사용

 

  - 서브넷 WEB_A 지정

  - 편리한 관리를 위해 퍼블릭 IP 자동 할당 비활성화

 

  - 생성 완료

web_a, web_c, was_a, was_c 생성

 

2. Elastic IP 생성 및 할당

인스턴스 WEB_A에게 연결

 

  - 인스턴스 ssh_linux_web_a에 xShell 접속을 위해 공인 IP 할당

web_a만 public IP 할당

 

3. 첫번째 인스턴스 xShell 접속

이름과 호스트 IP(공인 IP) 작성
사용자 인증 : 새로 생성한 Access Key

 

4. 내부 Ping Test

  - 두번째 인스턴스 내부 IP : 10.0.1.214

  - 세번째 인스턴스 내부 IP : 10.0.2.35

  - 네번째 인스턴스 내부 IP : 10.0.3.115

 

 

5. 첫번째 인스턴스에 Private Key 올리기

  - 첫번째 인스턴스에서 다른 인스턴스로 SSH 접속을 위해선 첫번째 인스턴스에서 Private Key를 보유하고 있어야 한다.

 

  - .ssh 폴더로 이동

  - [dir] 명령어로 폴더 내부 파일 확인

  - 개인키와 공개키 확인 가능

  - [scp -i 개인키 옮길파일 사용자이름@공인IP:저장경로/저장이름]

첫번째 인스턴스에 개인키 복사 완료
id_rsa 파일 복사 완료

 

6. 개인키 권한 설정

  - 개인키의 권한은 반드시 600

권한 변경을 하지 않고 SSH 접속 시도시 나오는 메시지
.ssh/id_rsa의 권한을 600으로 변경

 

7. SSH 접속

두번째 인스턴스 SSH 접속
세번째 인스턴스 SSH 접속
네번째 인스턴스 SSH 접속

 

  * web_c, was_a, was_c 인스턴스는 외부 통신 불가 *