반응형
🔧 윈도우에서 .ppk → .pem 변환 방법
① PuTTYgen 실행
- PuTTY를 이미 설치했다면,
시작 메뉴 → PuTTYgen 검색 → 실행하세요.
(만약 없다면 공식 사이트에서 PuTTY를 설치하세요.)
② .ppk 파일 불러오기
- [Load] 버튼 클릭
- 파일 선택 창에서 오른쪽 하단의 “파일 형식”을 All Files (.) 로 변경
- 변환하려는 .ppk 파일 선택 후 열기
③ PEM 파일로 내보내기
- 메뉴 상단에서
→ Conversions → Export OpenSSH key 클릭 - 파일 이름을 예를 들어 mykey.pem 으로 지정하고 저장
(비밀번호를 걸고 싶지 않다면 “Are you sure…” 메시지에서 Yes 선택)
④ SSH 접속 테스트
변환된 mykey.pem 파일은 OpenSSH 형식이므로,
다음과 같이 SSH 접속 시 사용할 수 있습니다 👇
ssh -i mykey.pem username@서버주소
예시:
ssh -i mykey.pem ubuntu@13.124.56.78
✅ 참고 팁
- 파일 권한 문제가 있을 경우 (특히 WSL이나 리눅스 툴에서 접근할 때):
- chmod 600 mykey.pem
- PuTTYgen이 없는 경우
→ https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
에서 “puttygen.exe”만 다운로드해서 바로 실행 가능합니다. (설치 불필요)
생성된 pem 파일로 ssh 접속시 아래에 권한 에러 발생함

이 에러 메시지는 PEM 키 파일의 권한(permissions)이 너무 넓어서 SSH에서 거부한 상황입니다.
리눅스에서는 chmod 600으로 쉽게 해결되지만, 윈도우 환경에서는 약간 다르게 처리해야 합니다.
아래 단계대로 해결하면 정상적으로 접속할 수 있습니다 👇
🧩 원인
“Permissions for 'server-key.pem' are too open”
SSH는 개인 키 파일이 다른 사용자에게 읽기 가능한 상태면 보안상 위험하다고 판단하여 사용을 거부합니다.
✅ 해결 방법 (Windows PowerShell 기준)
① 관리자 권한으로 PowerShell 실행
- 시작 메뉴에서 PowerShell을 검색 → 오른쪽 클릭 → 관리자 권한으로 실행
② PEM 파일이 있는 폴더로 이동
예시:
cd "C:\Work"
③ 다른 사용자 접근 권한 제거
아래 명령어를 실행합니다 👇
icacls "server-key.pem" /inheritance:r
icacls "server-key.pem" /grant:r "${env:USERNAME}:R"
🔹 첫 번째 줄
→ 상속된 권한을 제거합니다.
🔹 두 번째 줄
→ 현재 로그인한 사용자에게만 읽기 권한(R)을 부여합니다.
④ 권한 확인 (선택)
icacls "server-key.pem"
출력 결과가 다음처럼 나오면 OK입니다 👇
server-key.pem <현재사용자>(R)
Successfully processed 1 files
⑤ SSH 재시도
이제 다시 접속해보세요 👇
ssh -i server-key.pem ubuntu@url.com
반응형
'[====== Development ======] > Etc' 카테고리의 다른 글
| Ubuntu 에 Docker를 설치방법 (0) | 2025.11.05 |
|---|---|
| 윈도우 CMD에서 github 연동방법 (0) | 2025.10.29 |
| Ubuntu Github 로그인 및 Clone 방법 (0) | 2025.10.23 |
| Docker 명령어 모음 (0) | 2025.07.23 |
| Spring Boot 기반의 쇼핑몰 시스템 아키텍처 (1) | 2025.07.19 |