존재하는 경우 키를 사용하고 존재하지 않는 경우 비밀번호를 사용하여 로그인하도록 SSH를 구성할 수 있습니까?

존재하는 경우 키를 사용하고 존재하지 않는 경우 비밀번호를 사용하여 로그인하도록 SSH를 구성할 수 있습니까?

사용자에게 키가 설정되어 있을 때 공개 키 인증을 허용하도록 내부 네트워크에 대해 sshd를 구성하려고 합니다. 또는 사용자에게 키가 설정되어 있지 않을 때 비밀번호를 요청하지만 둘 다 요청하지는 않습니다.

따라서 사용자가 공개 키를 구성한 경우 비밀번호 없이 로그인할 수 있어야 하며, 공개 키를 설정하지 않은 경우에는 비밀번호를 입력해야 합니다.

우분투14.04

OpenSSH 서버1:6.6p1-2ubuntu2

답변1

/etc/ssh/sshd_config에서 이 사용자(또는 모든 사용자)에 대해 PubkeyAuthentication yes PasswordAuthentication yes를 설정해야 합니다. 물론 공개키 인증을 위해 비밀번호도 설정하고 authenticate_keys도 설정하세요.

답변2

(또는 다른 프로그램)을 통해 키를 생성할 때 ssh-keygen다음을 실행하여 서버에 복사해야 합니다.

ssh-copy-id user@host

사용자에게 비밀번호를 한 번 묻고 해당 키를 사용하여 로그인할 수 있습니다(비밀번호는 필요하지 않음).

관련 정보