SSH의 상수 "공개 키에 대한 암호 입력"

SSH의 상수 "공개 키에 대한 암호 입력"

그 이유는 무엇일까요?SSH <호스트>공개 키 비밀번호를 묻는 중입니다.

Enter passphrase for key '/home/%d/.ssh/id_rsa.pub':

좋은 비밀번호를 제공했는데도요?

공급자를 특정할 때 pkcs11 pam 모듈 로그인에 문제가 없으며 다음을 통해 키를 추가해도 문제가 없습니다.ssh-add

100% 클라이언트 측 문제입니다. SSH 에이전트가 요청을 포착하는 것일 수 있습니까?

계속해서 비밀번호를 묻는 메시지가 표시되는데 올바른 비밀번호조차 인정되지 않는다는 뜻인가요? "내가 공급자를 특정할 때"란 정확히 무엇을 의미합니까 ..? 게르하르트 디

$ ssh {host}
Enter passphrase for key '/home/%d/.ssh/id_rsa.pub': 
Enter passphrase for key '/home/%d/.ssh/id_rsa.pub': 
Enter passphrase for key '/home/%d/.ssh/id_rsa.pub': 
Permission denied (publickey).


$ ssh-add
Enter passphrase for /home/%d/.ssh/id_rsa: 
Identity added: /home/%d/.ssh/id_rsa (/home/%d/.ssh/id_rsa)

$ ssh {host}
logged in 

재부팅 후 암호 입력이 실패하여 SSH를 실행할 수 없지만 pkcs11을 통해 에이전트 또는 SSH에 키를 추가할 수 있습니다.

$ ssh -I /usr/lib/x86_64-linux-gnu/pkcs11/opensc-pkcs11.so {host}
Enter PIN for 'PIV_II (PIV Card Holder pin)': 
...
logged in

추신. distro = debian sid, %d는 내 홈 폴더입니다.

솔루션 -> SSH 구성 항목 변경:

Jakuje가 쓴 것처럼 문제는 잘못된 SSH 구성 파일 항목에 있었습니다.

# ~/.ssh/config

Host {host}
    IdentityFile  ~/.ssh/id_rsa.pub   # should be ~/.ssh/id_rsa 

답변1

당신은 아마도 다음 과 같은 줄 ssh_config에 있을 것입니다~/.ssh/config

Host *
  IdentityFile /home/%d/.ssh/id_rsa.pub

또는 유사합니다. 여기에는 두 가지 문제가 있습니다. 대체는 %d전체 홈 디렉토리를 의미하며 IdentityFile옵션은 공개 키가 아닌 개인 키를 가져와야 합니다.

암호를 요구하는 이유는 여기에 설명되어 있습니다.업스트림 버그(즉, OpenSSH는 OpenSSL에서 반환된 오류의 유효성을 검사하지 않으며 모든 오류는 잘못된 암호로 해석됩니다.) 이 문제는 다음 업데이트에서 수정되어야 합니다.

아니면 이 키를 사용하려는 유사한 별칭이 있을 수 있습니까? 의 출력은 무엇입니까 type ssh?

관련 정보