본문 바로가기

AWS

[오류] PuTTY login 오류

[ppk 생성 방법]

먼저 PuTTYgen을 실행 -> AWS에서 받은 .pem파일을 .ppk로 생성하기 

(1) [Conversions] -> [import key] -> AWS에서 다운로드 받은 pem키 불러오기 

 

(2) Generate 버튼 누르기 -> 이때 화면에 마우스를 대고 왔다갔다 움직이기! (클릭하는 것이 아니라 그냥 왔다갔다 하기, 그냥 가만히 두면 완전 느리게 생성된다... ㅜㅜ)

 

(3) save private key 버튼이 활성화 되어 있을 것이다. -> 이 버튼을 클릭 

 

(4) 경고 메시지 -> "예" 누르기 

 

(5) ppk 파일 생성 -> 생성된 이름과 위치를 등록하라고 창이 나온다(입력하자)

 

 

[정상 접속 과정]

이제 EC2 서버에 접속하자.

 

PuTTY 열기 ->

(1) [Session] -> [Host Name(or IP address)] 에 -> 탄력적 IP 주소를 입력

Host Name 부분 입력

 

(2) [Connection] -> [SSH] -> [Auth] -> Browse... 버튼을 클릭하여 PuTTY gen에서 생성한 ppk 파일을 불러온다. 

 

(3) 하단의 open버튼을 누르면 실행되면서 login as 부분이 나온다. 

입력 -> 접속 성공 모습

 

(4) Ubuntu는 "ubuntu"라고 입력하면 SSH 접속 성공한다. 

 

 

[오류 해결 과정]

하지만 (4) Ubuntu는 "ubuntu"라고 입력하면 SSH 접속 성공한다. 이 부분에서 다음과 같은 오류 메시지 창이 등장했다. 

DIsconnected: No supported authentication methods available (server sent: publickey)

 

(1) [Session] -> [Host Name(or IP address)] 에 -> 탄력적 IP 주소를 입력

이 부분에서 탄력적 IP 주소 대신 "사용자이름@public-dns-hostname"을 입력하면 된다. 

ex) 작성자의 경우 다음과 같이 입력했다. 

"사용자이름@public-dns-hostname" = ubuntu@ec2-00-000-000-000.ap-northeast-2.compute.amazonaws.com

 


[입력 정보 찾는 방법]

 

(1) 사용자 이름은 ubuntu로 했으면 ubuntu이다. ubuntu가 아닌 경우 사이트에서 사용자 이름을 참고하여 작성하면 된다. 

 

https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.html

 

인스턴스 연결 문제 해결 - Amazon Elastic Compute Cloud

디바이스 이름은 인스턴스에서 다르게 표시될 수 있습니다. 예를 들면 /dev/sdf로 탑재된 디바이스가 인스턴스에서는 /dev/xvdf로 표시되기도 합니다. Red Hat 중 일부 버전(CentOS 등 변형 버전 포함)은

docs.aws.amazon.com

 

 

(2) public-dns-hostname는 AWS 사이트에서 [인스턴스] -> [인스턴스 ID] 를 클릭하면 인스턴스에 대한 정보들이 나오는데 그 중 "퍼블릭 IPv4 DNS"를 복사해서 넣으면 된다. (빨간 표시 부분을 클릭하면 복사된다)

AWS 사이트 -> 인스턴스 -> 인스턴스 ID 클릭

 

한 번 접속 성공을 하면 "(1) [Session] -> [Host Name(or IP address)] " 이 부분에서 탄력적 IP 주소를 입력해도 오류 메시지 창이 뜨지 않고 접속에 성공한다. 

 

 

[ 결론 ]

일단 PuTTY를 열고 [Session] -> Host Name(or IP address)부분에서 퍼블릭 IPv4 DNS를 입력하여 접속하자!

접속에 성공하면 퍼블릭 IPv4 DNS이나 탄력적 IP주소 둘 중 아무거나 작성하여 접속해도 상관 없다.