SSH가 연결되지 않을 때
“connection timed out”부터 “access denied”까지 단계별로 분석해요. 어디에서 끊겼는지 파악하고 패널 콘솔로 접근을 복구하는 방법을 설명해요.
업데이트 2026년 8월 23일
SSH 접속이 끊기는 증상은 매번 똑같아 보이지만 원인은 다섯 가지이고, 해결 방법도 각각 다릅니다. 오류 메시지부터 확인해 보세요. 그것만으로도 원인을 크게 좁힐 수 있습니다. 가장 중요한 점은, 패널 /hosting/vds/m/<id>의 “Console” 탭을 통해 항상 머신에 접근할 수 있다는 것입니다. 이 콘솔은 네트워크와 시스템 내부 설정과 무관하게 동작합니다.
오류 메시지 읽기
| 메시지 | 끊긴 지점 |
|---|---|
Connection timed out | 패킷이 도달하지 않음: 머신이 꺼져 있거나, 필터가 막고 있거나, 주소가 잘못됨 |
Connection refused | 머신은 응답하지만 해당 포트에서 아무도 대기하지 않음: sshd 서비스가 실행되지 않음 |
Permission denied (publickey) | 네트워크는 정상, 키가 일치하지 않음 |
Permission denied (password) | 비밀번호가 일치하지 않거나 비밀번호 로그인이 비활성화됨 |
Host key verification failed | 머신의 지문이 변경됨 — 보통 재설치 후에 발생 |
세부 정보를 확인하는 것도 유용합니다. ssh -vvv root@YOUR_ADDRESS를 실행하면 어느 단계에서 멈추는지 볼 수 있습니다.
시간 초과
- “Overview” 탭에서 머신 상태를 확인하세요. 그래프가 멈췄다면 머신이 실행되지 않는 것이니, 패널에서 켜거나 재부팅하세요.
- 주소가 올바른지, 머신에 아예 도달할 수 있는지 확인하세요:
ping YOUR_ADDRESS. - 콘솔로 로그인해서 필터를 확인하세요:
ss -tulpn | grep sshd
nft list ruleset | head -40 # or iptables -S
ufw status # Debian, Ubuntu
firewall-cmd --list-all # AlmaLinux, CentOS Stream
대표적인 경우가 포트 22를 허용하지 않고 ufw enable을 실행한 것입니다. 콘솔에서 명령어 한 줄이면 해결됩니다: ufw allow 22/tcp.
- 로그인 실패가 반복된 뒤 fail2ban이 차단했는지 확인하세요:
fail2ban-client status sshd; 차단 해제는fail2ban-client set sshd unbanip YOUR_IP입니다.
연결 거부
서비스가 실행되지 않거나 다른 포트에서 대기하고 있는 경우입니다.
systemctl status sshd || systemctl status ssh
journalctl -u sshd -n 50 --no-pager
sshd -t # check configuration for errors
systemctl restart sshd
대부분 sshd -t로 해결됩니다. /etc/ssh/sshd_config의 오타 하나만 있어도 재시작 후 서비스가 시작되지 않습니다. 포트를 변경했다면 -p NUMBER로 접속하고, 필터에서 해당 포트를 허용하는 것도 잊지 마세요.
권한 거부
키 오류가 나온다면 머신에서 확인하세요:
ls -la /root/.ssh
chmod 700 /root/.ssh && chmod 600 /root/.ssh/authorized_keys
grep -E 'PermitRootLogin|PubkeyAuthentication|PasswordAuthentication' /etc/ssh/sshd_config
권한이 허용 범위보다 엄격하면 sshd는 아무 메시지 없이 거부합니다. 패널의 “Access” 탭에 있는 키 목록은 통째로 교체됩니다. 새 키를 추가할 때 작동하던 키를 실수로 삭제하지 마세요. 목록을 저장하면 실행 중인 머신이 재부팅되므로, 한 번에 전체를 수정하세요.
root 비밀번호를 잊었다면 “Access” 탭에서 확인하세요. 암호화되어 저장되어 있으며 버튼을 클릭하면 표시됩니다. 시스템 내부에서 비밀번호를 변경했다면 패널은 이를 알지 못합니다. 콘솔로 로그인해서 passwd 명령어로 변경하거나, “Change password”를 클릭하세요. 패널이 새 비밀번호를 발급하고 머신을 재부팅합니다.
Host key verification failed
시스템을 재설치하면 지문이 변경됩니다. 내 쪽에서 이전 항목을 삭제하세요:
ssh-keygen -R YOUR_ADDRESS
재설치한 적이 없다면 새 지문을 무작정 확인하지 말고, 콘솔을 통해 검증하세요: ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub.
아무것도 도움이 되지 않았을 때
머신을 복구 모드로 부팅하세요: “Access” 탭 → 부팅 모드 → SystemRescue 디스크. 머신이 이미지로 시작되고, 비밀번호 없이 root로 로그인할 수 있으며, 디스크는 /dev/sda로 보입니다. 마운트한 뒤 설정을 편집하세요:
mount /dev/sda1 /mnt
nano /mnt/etc/ssh/sshd_config
그다음 일반 부팅 모드로 되돌리고 머신을 재부팅하세요.
SSH 설정을 변경하기 전에 두 번째 세션을 열어 두세요. 새 설정 때문에 접속이 막히더라도 기존 연결을 통해 해결할 수 있고, 콘솔을 띄울 필요가 없습니다.