ssh
키만 허용하도록(따라서 비밀번호 요청을 비활성화하도록) 서버를 구성하려고 합니다 .
PuTTY(Windows)를 사용하여 공개 키와 개인 키를 생성했습니다. 현재 루트와 amministratore라는 두 명의 사용자가 있습니다. 나는 루트가 ssh를 사용하여 로그인할 수 있는 것을 원하지 않고 amministratore만 사용하고 싶습니다.
지금까지 수정하고 완료한 내용은 다음과 같습니다.
/etc/ssh/sshd_config
- 바라보다 https://pastebin.com/hp0EQ5hGroot@autoapi:~# ls -ld ~/.ssh drwx------ 2 amministratore amministratore 4096 5월 5일, 16:22 /home/amministratore/.ssh
amministratore@autoapi:~/.ssh$ ls -l 총 4개 -rw-r--r-- 1 amministratore amministratore 398 5월 5일, 16:08 authenticate_keys
root@autoapi:~/.ssh# ls 인증 키
물론 중간에 있는 문자는 삭제했습니다.
root@autoapi:~/.ssh# catauthorized_keys ssh-rsa AAAA.....KKQ== rsa-key-20190504
내가 무엇을 잊었나요?
답변1
SSH를 사용하여 연결하면 클라이언트는 먼저 서버가 허용할 수 있는 내용을 확인합니다. 즉, 특정 키가 허용되는지 묻는 것입니다.앞으로실제로 로그인을 시도합니다. 즉, 특정 키가 허용되지 않으면 클라이언트는 해당 키를 사용하려고 시도하지도 않습니다.
귀하의 증거에 따르면 가장 가능성이 높은 시나리오는 authorized_keys
파일이 공개적으로 읽을 수 있도록 설정되어 있고 구성에서 기본값을 지정하는 것입니다 # StrictModes yes
. 또한 이를 지정 # PasswordAuthentication yes
하므로 서버에서 키 인증을 거부하고 대신 비밀번호를 입력하라는 메시지가 표시됩니다. 이 문제를 해결하려면 두 가지 사항을 변경해야 합니다.
1 권한 변경 authorized_keys
:
chmod go-rwx ~/.ssh/authorized_keys
2 비밀번호 확인 비활성화 /etc/ssh/sshd_config
:
PasswordAuthentication no
답변2
루트 로그인을 허용하지 않도록 구성을 올바르게 설정했습니다.
authorized_keys
amministratore 파일의 권한을 600으로 설정 해야 할 것 같습니다 .