트러블슈팅›DevOps•
1분
•Proxmox 도커컨테이너 SSH 비밀번호 로그인 안 될 때 해결법
sshd_config 수정했는데 왜 아직도 비밀번호 로그인이 안 될까?
증상
sshd_config에 PasswordAuthentication yes로 설정했는데도 아래 에러가 발생하는 경우
Permission denied (publickey).
원인
SSH 데몬은 설정 파일을 아래 순서로 읽으며, 나중에 읽히는 파일이 앞의 설정을 덮어씁니다.
1. /etc/ssh/sshd_config
2. /etc/ssh/sshd_config.d/*.conf (숫자 순서대로)
Proxmox LXC 템플릿이 Ubuntu Cloud Image 기반인 경우, /etc/ssh/sshd_config.d/60-cloudimg-settings.conf 파일이 자동으로 생성되어 있으며 기본값이 PasswordAuthentication no로 설정되어 있습니다.
sshd_config에서 아무리 yes로 바꿔도 이 파일이 마지막에 읽히면서 no로 덮어써버리기 때문에 비밀번호 로그인이 계속 막히는 것입니다.
확인 방법
Proxmox 웹 UI 콘솔에서 아래 명령어로 충돌 설정을 확인할 수 있습니다.
grep -r PasswordAuthentication /etc/ssh/
출력 예시
/etc/ssh/sshd_config: PasswordAuthentication yes # ❌ 무시됨
/etc/ssh/sshd_config.d/60-cloudimg-settings.conf: PasswordAuthentication no # ✅ 최종 적용
해결 방법
# 1. conf 파일 덮어쓰기
echo "PasswordAuthentication yes" > /etc/ssh/sshd_config.d/60-cloudimg-settings.conf
# 2. SSH 재시작
systemctl restart sshd
이후 정상적으로 비밀번호 로그인이 가능합니다.
ssh root@<서버IP> -p <포트>
보안 주의사항
비밀번호 인증을 활성화한 후에는 공개키 등록을 마치고 다시 no로 되돌리는 것을 권장합니다.
비밀번호 인증을 영구적으로 열어두면 브루트포스 공격에 노출될 수 있습니다.
# 공개키 등록
ssh-copy-id -p <포트> root@<서버IP>
# 비밀번호 인증 다시 비활성화
echo "PasswordAuthentication no" > /etc/ssh/sshd_config.d/60-cloudimg-settings.conf
systemctl restart sshd