기존 프록시 릴레이를 통한 SSH 키 스캔
릴레이의 레이블과 실제 SSH 호스트를 구분하면서 로컬 TCP 릴레이로 후보 호스트 키를 수집합니다.
ssh-keyscan은 SSH의 ProxyCommand 옵션을 받지 않습니다. 따라서 ssh용으로 구성한 프록시가 별도의 스캐너를 자동으로 구성하지는 않습니다.
한 가지 방법은 이미 연결된 로컬 TCP 릴레이를 쓰는 것입니다. 이 릴레이는 필요한 프록시 인증과 CONNECT 교환을 마친 뒤 대상 SSH 서버의 바이트 스트림을 노출합니다. 그 릴레이가 127.0.0.1:2222에서 수신한다면:
ssh-keyscan -p 2222 127.0.0.1 > candidate.keys
ssh-keygen -lf candidate.keys첫 번째 명령은 후보 키를 모으고, 두 번째는 그 지문을 표시합니다. 릴레이는 HTTP 헤더를 스캐너에 넘기는 대신 프록시 응답을 끝까지 소비한 뒤 SSH 스트림을 통과시켜야 합니다.
출력의 호스트 레이블은 로컬 릴레이 엔드포인트를 나타냅니다. 그대로 덧붙여 이제 원격 SFTP 호스트 이름을 가리킨다고 가정하지 마십시오.
키를 known_hosts의 실제 호스트와 포트에 연결하기 전에 신뢰할 수 있는 기록이나 관리자를 통해 지문을 검증하십시오. ssh-keyscan은 접근 가능한 엔드포인트가 제시하는 것만 수집하며, 프록시 연결 성공이 그 키를 인증하지는 않습니다.