SSH 키: 생성과 추가
키 쌍을 생성하고 서버 제어판에 공개 키를 추가하는 방법, 저장 시 서버가 재부팅되는 이유, 그리고 Windows Server에서 키가 작동하지 않는 이유를 알아봐요.
업데이트 2026년 8월 23일
SSH 키는 한 쌍의 파일이에요. 개인 키는 본인이 보관하고, 공개 키는 서버에 두죠. 비밀번호와 달리 무차별 대입 공격을 당하지 않아요.
키 쌍 만들기
Windows Terminal, PowerShell, macOS, Linux 모두 명령어가 같아요:
ssh-keygen -t ed25519 -C "artem@laptop"
파일을 묻는 질문이 나오면 Enter를 누르세요 (기본값은 ~/.ssh/id_ed25519예요). 키에 암호 문구를 설정하는 게 좋아요. 노트북을 도난당했을 때 암호 문구가 없는 키는 서버에 곧바로 접근할 수 있게 해주니까요.
두 개의 파일이 생겨요:
| 파일 | 설명 |
|---|---|
id_ed25519 | 개인 키예요. 절대 공유하거나 어디에도 업로드하지 마세요 |
id_ed25519.pub | 공개 키예요. 이걸 제어판에 붙여넣으면 돼요 |
공개 키를 확인하려면:
cat ~/.ssh/id_ed25519.pub
출력되는 줄은 이렇게 생겼어요: ssh-ed25519 AAAAC3Nza... artem@laptop.
제어판에서 키 추가하기
/hosting/vds/m/<id>에서 서버의 제어판을 열고 “접근” 탭의 “SSH 키” 항목으로 가서 키를 입력란에 붙여넣고 “키 저장”을 클릭하세요.
키를 저장하면 실행 중인 서버가 재부팅돼요. 키는 부팅 시 초기 설정으로 적용되기 때문에 재시작 없이는 반영되지 않아요. 재부팅을 견디지 못하는 것은 모두 끊겨요. 열려 있는 연결, 저장되지 않은 데이터, 자동 시작이 없는 서비스요. 운영 중인 서버라면 시간을 잘 골라서 키를 하나씩이 아니라 목록을 한 번에 편집하세요.
키 목록은 전부 교체돼요. 전체 세트를 보내세요. 회사 컴퓨터의 키가 이미 있었다면 새 키만 저장할 경우 기존 키는 작동하지 않게 돼요. 입력란을 비우면 모든 키가 삭제돼요.
형식은 한 줄에 키 하나예요:
ssh-ed25519 AAAAC3Nza... artem@laptop
ssh-ed25519 AAAAC3Nza... artem@work
맨 앞의 유형과 끝의 주석까지 포함해서 줄 바꿈 없이 한 줄 전체를 붙여넣으세요.
/hosting/vds/new에서 주문할 때 바로 키를 지정할 수도 있어요. 그러면 서버가 프로비저닝될 때 키가 추가되어 추가 재부팅이 필요 없어요.
Windows Server에는 SSH 키가 없어요
키 입력란은 Linux 서버에 적용돼요. Windows Server 2022와 2025는 SSH 서버 없이 프로비저닝해요. 제어판의 비밀번호로 Administrator 계정을 사용해 RDP로 로그인하세요. 이런 서버에 저장한 키는 아무것도 잠금 해제하지 못해요. 그래서 주문 마법사에서 해당 입력란이 표시되지 않아요.
접속 방법과 첫 몇 분 동안 해야 할 일은 RDP로 Windows Server에 첫 로그인 문서에서, 접근 보호는 RDP 보안: 포트, 비밀번호, 제한 문서에서 다뤄요.
로그인 테스트하기
현재 세션을 닫지 않고 새 터미널 창에서:
ssh root@203.0.113.10
비밀번호를 묻지 않았다면 키가 작동하는 거예요. 물었다면 아래 오류 표를 확인하세요.
매번 주소를 입력하지 않으려면 ~/.ssh/config 파일을 설정하세요.
비밀번호 로그인 비활성화하기
테스트에 성공한 뒤에만:
nano /etc/ssh/sshd_config
PasswordAuthentication no
PermitRootLogin prohibit-password
systemctl restart ssh
문제가 생기더라도 제어판의 텍스트 콘솔을 통해 서버에 접근할 수 있어요. 이 콘솔은 SSH와 무관하게 작동해요.
자주 발생하는 오류
| 증상 | 원인 |
|---|---|
| 여전히 비밀번호를 물어봄 | .pub 대신 개인 키를 제어판에 붙여넣었거나, 키 이름이 잘못되어 클라이언트가 인식하지 못함 |
UNPROTECTED PRIVATE KEY FILE | 권한이 너무 넓음: chmod 600 ~/.ssh/id_ed25519 |
| 키가 작동하다가 멈춤 | 제어판의 목록이 이 키 없이 덮어써짐 |
| 재설치 후 키가 더 이상 작동하지 않음 | 서버가 재구축되면서 키가 반영되지 않음. “SSH 키”를 열고 목록을 다시 저장하세요 |
비밀번호 비활성화 후 Permission denied (publickey) | 키가 서버에 도달하지 못함. 패널 콘솔로 로그인해서 /root/.ssh/authorized_keys를 확인하세요 |
상세 출력으로 진단하기:
ssh -v root@203.0.113.10
출력에서 클라이언트가 어떤 키를 제시했고 서버가 무엇을 응답했는지 확인할 수 있어요.
PuTTY 사용자는 전용 형식의 키가 필요해요. PuTTY에서 접속하기를 참고하세요.