
내 원격 서버에 새 사용자를 설정하려고 합니다.
sudo 액세스 권한을 가진 새 사용자를 만들었습니다.
adduser username
usermod -aG sudo username
그런 다음 파일에서 /etc/ssh/sshd_config
해당 사용자에게 SSH 액세스를 허용했습니다.
AllowUsers username root
그리고 SSH를 다시 시작했습니다.
service sshd reload
마지막으로 사용자로 로그인하고 공개 SSH 키를 파일에 복사했습니다 ~/.ssh/authorized_keys
.
하지만 Permission denied (publickey)
해당 사용자로 SSH를 시도하면 여전히 오류가 발생합니다.
ssh [email protected]
문제없이 루트 사용자로 ssh를 사용할 수 있습니다.
ssh [email protected]
뭔가 빠졌나요?
답변1
로부터SSH 태그 위키:
문제 해결
공개 키 인증이 작동하지 않는 경우: 서버 측에서 홈 디렉터리(~), ~/.ssh 디렉터리 및 ~/.ssh/authorized_keys 파일이 모두 해당 소유자만 쓸 수 있는지 확인하세요. 특히, 그 중 어느 것도 그룹에서 쓸 수 있어서는 안 됩니다(사용자가 그룹에 혼자인 경우에도 마찬가지입니다). chmod 755 또는 chmod 700은 괜찮지만 chmod 770은 그렇지 않습니다.
문제가 있을 때 확인해야 할 사항:
- ssh -vvv를 실행하면 많은 디버깅 출력을 볼 수 있습니다. SSH로 연결할 수 없는 이유를 묻는 질문을 게시하는 경우 다음 출력을 포함하세요(호스트 및 사용자 이름을 익명화할 수 있음).
- 가능하다면 일반적으로 /var/log/daemon.log 또는 /var/log/auth.log 또는 이와 유사한 서버 로그를 확인하십시오.
- 공개 키 인증이 작동하지 않으면 권한, 특히 그룹 비트(위 참조)를 다시 확인하세요.