PuTTY로 EC2에 접속할 때 주의해야 할 사항
안녕하세요 클래스메소드 김재욱(Kim Jaewook) 입니다. 이번 블로그에서는 PuTTY로 EC2에 접속할 때 주의해야 할 사항에 대해 정리해 봤습니다.
문제 발생
PuTTY를 이용해 EC2에 접속할 때 다음과 같은 인증 오류를 자주 마주할 수 있습니다.
"Server refused our key"
No supported authentication methods available
(server sent: publickey,gssapi-keyex,gssapi-with-mic)
이러한 오류는 SSH 키, 사용자 계정, EC2 설정 등 다양한 원인으로 발생할 수 있습니다.
특정 해결 방법 하나만이 정답인 것은 아니며, 환경에 따라 원인이 다를 수 있습니다. 따라서 이번 글에서는 위와 같은 오류가 발생했을 때 어떤 부분을 우선적으로 확인해야 하는지, 그리고 실제로 문제를 해결할 때 도움이 되는 점검 항목들을 정리해보겠습니다.
주의해야 할 사항
오류가 발생했다면 아래 항목들을 순서대로 확인해보는 것이 좋습니다.
1. PEM 파일을 PPK 파일로 정상 변환했는지 확인
PuTTY는 기본적으로 .pem 파일을 직접 사용할 수 없기 때문에 .ppk 형식으로 변환해야 합니다.
이 과정에서 잘못된 파일을 선택하거나 변환이 정상적으로 완료되지 않은 경우 인증 오류가 발생할 수 있습니다.
생성(Generate) 과정은 불필요하기 때문에 Load로 키를 불러오기 → .pem 파일 선택 > 개인키 저장(save private key) 순서대로 private key를 생성하면 끝입니다.
2. PuTTY에 PPK 파일이 올바르게 설정되어 있는지 확인
PuTTY에서 아래 경로로 이동하여 인증에 사용할 키 파일이 등록되어 있는지 확인합니다.
Connection
└ SSH
└ Auth
└ Credentials
└ Private key file for authentication
이 항목에 변환한 .ppk 파일이 지정되어 있어야 합니다.
3. PuTTY 버전이 오래되어 SSH 인증 방식과 호환되지 않는 경우
PuTTY 버전이 오래된 경우 최신 SSH 인증 방식이나 암호화 알고리즘을 지원하지 않아 접속이 실패할 수 있습니다.
이 경우 단순 설정 문제가 아니라 클라이언트 프로그램 자체의 문제이므로 PuTTY를 최신 버전으로 업데이트하는 것이 필요합니다.
4. SSM Port Forwarding 세션이 실행 중인지 확인
SSM Port Forwarding을 사용하는 환경이라면 PuTTY로 접속하기 전에 반드시 Port Forwarding 세션이 실행 중이어야 합니다.
예를 들어 다음 명령어를 실행한 상태에서 접속해야 합니다.
aws ssm start-session \
--target EC2_INSTANCE_ID \
--document-name AWS-StartPortForwardingSession \
--parameters portNumber=22,localPortNumber=13322
터미널에 Waiting for connections... 메시지가 표시되고 있어야 하며, 해당 세션을 종료하면 PuTTY 연결도 실패합니다.
해당 과정은 아래 블로그에서 소개하고 있습니다.
5. 로그인 사용자 계정이 올바른지 확인
SSH 키가 정상이어도 로그인 사용자 계정이 잘못되면 인증에 실패할 수 있습니다.
대표적인 예시는 다음과 같습니다.
| AMI 종류 | 기본 사용자 |
|---|---|
| Amazon Linux / Amazon Linux 2 | ec2-user |
| Ubuntu | ubuntu |
| CentOS | centos |
| Debian | admin 또는 debian |
| RHEL | ec2-user |
Amazon Linux 계열 EC2라면 대부분 ec2-user를 사용합니다.
마무리
PuTTY 접속 오류는 처음에는 단순히 SSH 키 문제로 보이는 경우가 많지만, 실제로는 여러 환경 요소가 함께 영향을 주면서 발생하는 경우가 많습니다.
이번 글에서 정리한 내용을 기준으로 보면, 문제의 원인은 대부분 아래 항목들 중 하나에 해당합니다.
PEM 파일을 PPK로 정상 변환하지 않은 경우PuTTY 설정에서 Private key(.ppk)가 제대로 지정되지 않은 경우PuTTY 버전이 오래되어 최신 SSH 인증 방식과 호환되지 않는 경우SSM Port Forwarding 세션이 실행되지 않은 상태에서 접속을 시도한 경우EC2 로그인 사용자 계정이 AMI 환경과 맞지 않는 경우
이러한 요소들은 각각 보면 단순한 설정처럼 보이지만, 실제로는 하나라도 누락되면 Server refused our key 또는 No supported authentication methods available 같은 인증 오류로 이어질 수 있습니다.
특히 중요한 점은, 이 오류는 하나의 원인으로만 발생하는 것이 아니라 여러 조건이 동시에 맞지 않을 때 발생할 수 있다는 점입니다. 그래서 단일 원인으로 단정 짓기보다는 접속 과정 전체를 단계별로 확인하는 것이 필요합니다.
또한 이번 사례처럼 설정 자체에는 문제가 없어 보이는데도 접속이 되지 않는 경우, PuTTY 버전 문제처럼 클라이언트 프로그램 자체가 원인이 되는 경우도 존재합니다. 이런 경우에는 설정을 계속 수정하는 것보다 클라이언트를 최신 버전으로 업데이트하는 것이 더 빠른 해결 방법이 될 수 있습니다.
결론적으로 PuTTY를 통한 EC2 접속 문제를 해결할 때는 특정 설정 하나에만 집중하기보다는, 키 파일, PuTTY 설정, SSM Port Forwarding 상태, 사용자 계정, 클라이언트 버전까지 전체 흐름을 함께 점검하는 것이 가장 확실한 접근 방식입니다.
이 체크리스트 기준으로 하나씩 확인해보면 대부분의 접속 문제는 빠르게 원인을 찾을 수 있습니다.










