SSH에는 어떤 지문이 필요합니까?

SSH에는 어떤 지문이 필요합니까?
$ ssh 192.168.29.126
The authenticity of host '192.168.29.126 (192.168.29.126)' can't be established.
ECDSA key fingerprint is SHA256:1RG/OFcYAVv57kcP784oaoeHcwjvHDAgtTFBckveoHE.
Are you sure you want to continue connecting (yes/no/[fingerprint])?

필요한 "지문"은 무엇입니까?

답변1

이 질문은 SSH에서 인식되지 않는 호스트를 신뢰하고 계속 연결하기를 원하는지 묻습니다. 답변할 수 있는 여러 가지 방법이 제공됩니다.

  • yes, 귀하는 이 호스트를 신뢰하고 계속 연결하기를 원합니다.
  • no, 호스트를 신뢰하지 않으며 호스트에 계속 연결하고 싶지 않습니다.
  • [fingerprint]즉, 호스트 키의 해시인 지문을 질문에 대한 답변으로 붙여넣을 수 있다는 의미입니다. 붙여넣은 지문이 호스트의 지문(SSH를 통해 검색됨)과 동일하면 연결이 계속되고 그렇지 않으면 종료됩니다.

질문에 긍정적으로 대답하는 지문은 실제 질문에 표시된 정확한 문자열입니다( SHA256:1RG/OFcYAVv57kcP784oaoeHcwjvHDAgtTFBckveoHE귀하의 경우). 이 지문을 이미 다른 곳에 저장한 경우 긴 문자열을 시각적으로 비교하는 것보다 거기에서 붙여넣는 것이 더 쉽습니다.

간단히 말해서, 세 번째 답변은 호스트의 지문이 귀하가 생각하는 것과 일치하는지 확인하는 편리한 방법을 제공합니다.


질문에 답하려면 지문을 사용하세요.소개받다OpenSSH 8.0(2019)에서.

메시지 읽기 커밋

알 수 없는 호스트 키를 수락하는 경우 호스트 키 지문을 "예"의 동의어로 수락합니다. 이를 통해 대역 외에서 얻은 지문을 예/아니요 프롬프트에 붙여넣고 클라이언트가 비교하도록 할 수 있습니다. 알았어, 마커스 @djm@

답변2

매우 추상적인 사용자 수준에서: 지문은 서버의 암호화 키 쌍에서 파생되며, 그 목적은 예상 값을 확인하기 위한 다른 신뢰할 수 있는 통신 채널을 갖는 것입니다. 이는 실제로 사용자와 대화하고 있다는 확신을 줍니다. 서버 당신은 이야기하고 싶어합니다. (즉, 시스템 지원 센터에 전화하여 "내가 보아야 할 지문을 읽어주세요"라고 요청하면 아마도 당신이 이 질문을 하는 첫 번째 사람이고 어떻게 해야 하는지 알아내야 할 것이라고 말할 것입니다. 최신 버전의 openssh는 지문에 대한 특수 DNS 레코드를 볼 수 있으며 SSH 연결을 전송하려는 사람은 DNS 조회를 전송하거나 위조할 수 없습니다.

아니면 지문이 실제로 어떻게 파생된다는 뜻인가요?

관련 정보