
그래서 다음을 사용하여 비밀번호 없는 SSH를 설정했습니다.비밀번호 없는 SSH 로그인을 어떻게 설정하나요?
이것을 설정한 후에는 SSH에 비밀번호가 필요하지 않을 것으로 예상합니다. 내 문제는 SSH에 처음 연결할 때 비밀번호를 묻는 메시지가 표시되지만 그 위에 추가 세션이 있다는 것입니다.~ 아니다비밀번호를 물어보세요.
이미 sshd_config를 확인하여 다음 항목이 포함되어 있는지 확인했습니다.
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
내 권한이 옳다고 확신합니다. 그렇지 않으면 비밀번호 없는 SSH가 전혀 작동하지 않을 것이기 때문입니다.
이 문제에 더 많은 "재미"를 추가하기 위해 컴퓨터(클라이언트 컴퓨터 또는 SSH 서버 컴퓨터)를 다시 시작하면 때때로 작동한다는 것을 알았습니다. 그러다가 컴퓨터를 종료하고 다음날 다시 시도해 보니 더 이상 작동하지 않습니다. 어쩌면 이것은 완전히 무작위일 수도 있지만, 제가 알아차린 것입니다.
답변1
이는 암호화된 집에서 흔히 발생하는 문제이며, 예를 들어 다음과 같은 곳에서 여러 번 답변되었습니다.유닉스, 그러나 공식적인 내용에도 포함되어 있습니다.우분투 문서.
이는 아마도 로그인 시간 동안 홈 디렉토리(따라서 키)에 액세스할 수 없기 때문에 발생합니다. 이는 로그인 후 홈이 네트워크 드라이브(공유 시스템)에서 마운트되거나 홈 디렉토리가 암호화(일반적으로 워크스테이션 설치)되기 때문에 발생할 수 있습니다.
이 문제를 해결하는 것은 복잡하지만 몇 가지 논의를 살펴보겠습니다. 해결책은
AuthorizedKeysFile
키를 액세스할 수 있는 다른 위치로 옮기 거나 키에 대한 글로벌 저장소(/etc/security/authorized_keys
) 또는 일종의 SSO 관리 시스템(IPA, LDAP)으로 이동하여 디렉토리 서버에서 키를 가져오는 것입니다(예, 로컬일 수 있음). ). 대상 시스템을 얼마나 제어할 수 있는지에 따라 다릅니다.아마도 가장 좋은 해결책은 키를 다른 곳에 저장하고 다음 값을 변경하는 것입니다
sshd_config
.AuthorizedKeysFile /etc/ssh/%u/authorized_keys
어쨌든, 을 이동할 경우 authorized_keys
적절한 권한이 있는지 확인하고 공개 키를 사용하여 로그인하면 홈 디렉토리에 액세스할 수 없다는 사실을 염두에 두십시오(비밀번호로 암호화되어 있습니다!). 암호화 방법을 변경하면 됩니다.
답변2
인증서가 올바르게 복사되면 다음과 같은 형식의 연결에서 작동해야 합니다.
ssh hostname\ip -l username
사용자 이름은 .ssh/authorized_keys에 인증서를 갖고 있는 사용자입니다.