문제 해결

SSH가 여전히 비밀번호를 묻나요? 6가지 원인과 해결책

SSH 키를 추가했는데도 비밀번호를 묻습니다 ── 서버가 키를 거부하고 있습니다. 여섯 가지 원인(권한, 사용자 오류, 키 미제시, sshd 설정, SELinux, 미설치)과 어느 것인지 찾는 방법.

CC Chen Chen· 창업자·2026년 6월 24일·5분 분량

왜 SSH가 여전히 비밀번호를 묻는가

키를 설정했는데도 SSH가 계속 비밀번호를 요구한다면 ── 이는 서버가 당신의 키를 받아들이지 않고 비밀번호 인증으로 되돌아갔다는 뜻입니다. 원인은 거의 항상 여섯 가지 중 하나입니다: 공개 키가 authorized_keys에 없음, 파일이나 디렉터리의 권한이 너무 개방적, 잘못된 사용자로 로그인, 클라이언트가 키를 제시하지 않음, sshd에서 키 인증이 비활성화됨, 또는 SELinux가 파일에 잘못된 레이블을 붙임. 어느 것인지 빠른 것부터 찾는 방법을 알려드립니다.

여섯 가지 원인

#원인확인
1키가 authorized_keys에 없음정말로 사용자에게 복사했나요?
2권한이 너무 개방적(가장 흔함)~/.ssh 700, authorized_keys 600, 홈은 그룹 쓰기 불가
3사용자 이름이 틀림키는 사용자별 ── 로그인하는 사용자에게 설치했나요?
4클라이언트가 키를 제시하지 않음ssh -v에 "Offering public key…"가 보이나요?
5sshd가 키 인증을 허용하지 않음sshd_config에 PubkeyAuthentication yes가 있나요?
6SELinux 컨텍스트가 틀림RHEL/Fedora:restorecon -R ~/.ssh

서버가 알려주게 하라

가장 빠른 진단은 접속하는 동안 서버의 인증 로그를 보는 것입니다. 작동하는 세션(또는 콘솔)에서:

sudo tail -f /var/log/auth.log    # Debian/Ubuntu
sudo journalctl -u ssh -f         # systemd

이유를 그대로 말해줍니다 ── Authentication refused: bad ownership or modes for file …(이것이 원인 #2), 또는 user not allowed 등. 클라이언트 측에서는 ssh -v user@host로 당신의 키가 애초에 제시되고 있는지(원인 #4)를 확인할 수 있습니다.

1순위 해결책: 권한

authorized_keys가 너무 읽기 가능하면 OpenSSH는 조용히 무시합니다. 서버에서 로그인 사용자에 대해:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
chown -R $USER:$USER ~/.ssh

당신의 홈 디렉터리가 그룹 또는 전체 쓰기 가능이 아닌지도 확인하세요(chmod g-w,o-w ~). "키를 설치했는데도 비밀번호를 묻는" 경우 대부분이 이 원인입니다. 클라이언트 측의 대칭 문제 ── 당신의 개인 키가 너무 개방적인 경우 ── 는 UNPROTECTED PRIVATE KEY FILE입니다.

나머지 해결책

  • 키 미설치 / 사용자 틀림 ── ssh-copy-id로 올바른 계정에 다시 복사하세요. root에 설치해도 ubuntu로 로그인하는 데는 도움이 되지 않습니다.
  • 클라이언트가 제시하지 않음 ── 올바른 키를 가리키세요: ssh -i ~/.ssh/mykey user@host, 또는 특정 키 사용을 참고하세요.
  • sshd가 비활성화함 ── /etc/ssh/sshd_configPubkeyAuthentication yes를 설정한 뒤 sudo systemctl restart ssh를 실행하세요.

휴대폰에서

모바일에서 이 일의 고통은 장황한 로그를 읽고 그것을 원인에 대응시키는 것입니다. 그 장비로의 작동하는 세션이 있다면, auth.log 줄을 선택해 어시스턴트에게 물어보세요 ── TermAI의 AI가 그것을 읽고, 권한 문제인지 키가 없는 것인지 설정 문제인지를 정확한 명령과 함께 알려줍니다. 그리고 TermAI는 키를 기기 Keychain에 저장하고 당신을 대신해 배포하기 때문에, 클라이언트 측 원인(잘못된 키 제시, 개인 키 권한 오류)은 애초에 발생하지 않습니다.

SSH 키가 거부되는 이유를 설명하는 TermAI의 AI
auth.log 줄을 선택해 AI에게 물어보세요: 권한 문제와 키 누락을 구분하고 정확한 해결책을 제시합니다.

자주 묻는 질문

키를 추가했는데도 SSH가 비밀번호를 묻는 이유는?
서버가 키를 받아들이지 않아 비밀번호로 되돌아갑니다. 대개 ~/.ssh(700) 또는 authorized_keys(600)의 권한이 너무 개방적이거나, 키가 잘못된 사용자 아래에 있거나, 아예 추가되지 않은 것입니다. /var/log/auth.log를 확인하세요.

키가 제시되고 있는지 어떻게 확인하나요?
ssh -v user@host를 실행해 "Offering public key"를 찾으세요. 없다면 -i로 클라이언트에 키를 지정하세요.

"bad ownership or modes"라고 나옵니다 ── 어떻게 하나요?
이것은 권한 원인입니다: chmod 700 ~/.ssh, chmod 600 ~/.ssh/authorized_keys, 그리고 홈 디렉터리가 그룹 쓰기 가능이 아닌지 확인하세요.

서버가 키 인증을 비활성화했을 수도 있나요?
그렇습니다 ── /etc/ssh/sshd_configPubkeyAuthentication yes를 확인하고 sshd를 재시작하세요.

핵심 요약

  • 의미: 서버가 당신의 키를 거부하고 비밀번호로 되돌아갔다
  • 1순위 원인: 권한 ── ~/.ssh 700, authorized_keys 600, 홈은 그룹 쓰기 불가
  • 진단: 서버 측은 /var/log/auth.log, 클라이언트 측은 ssh -v
  • 그 외: 사용자 틀림, 키 미제시, PubkeyAuthentication no, SELinux 컨텍스트
Try TermAI

Free on iOS and Android. 5 AI requests/day on the free tier, plus unlimited SSH/SFTP and built-in Tailscale.

CC
Chen Chen — Founder of TermAI

Writes about mobile DevOps, terminal UX, and the surprising depth of "boring" infrastructure.

Was this useful? ← Back to blog