FileZilla FTP 클라이언트의 키 캐시에서 SFTP SSH 키를 추출하는 방법

StackOverflow https://stackoverflow.com/questions/44089

  •  09-06-2019
  •  | 
  •  

문제

FileZilla를 사용하여 SFTP를 통해 서버에 연결했으며 서버의 SSH 키를 FileZilla의 키 캐시에 추가하는 것을 허용했습니다.

키 파일을 제공해야 하는 다른 SFTP 애플리케이션을 통해 사용할 수 있도록 이 캐시된 키를 키 파일로 추출하려면 어떻게 해야 합니까?

FileZilla 문서에서 이와 관련된 내용을 찾을 수 없습니다.

도움이 되었습니까?

해결책

표준 openssh 콘솔 클라이언트(cygwin 또는 Linux)를 사용하는 경우 호스트 키는 한 줄에 하나씩 ~/.ssh/known_hosts에 저장됩니다.여기에서 라이브러리에 필요한 호스트 키 비트를 파악하는 것은 간단합니다.

Putty는 호스트 키도 저장하지만 이를 16진수로 인코딩하는 것으로 보입니다.HKCUR\Software\SimonTatham\PuTTY\SshHostKeys에서 찾을 수 있습니다.

다른 팁

토마스의 말이 맞았다.FileZilla는 PuTTY의 PSFTP 프로그램을 피기백하고 그가 나열한 레지스트리 키(HKCUR\Software\SimonTatham\PuTTY\SshHostKeys)에 16진수 형식으로 인코딩된 저장된 키를 저장합니다.Known_hosts 형식의 키가 필요했기 때문에 다음을 설치할 수 있었습니다. openssh의 Windows 버전 그의 추천에 따라 ssh-keyscan 도구를 사용하여 서버에 접속하고 키 정보를 올바른 형식으로 저장했습니다.

ssh-keyscan -t rsa <my_ftp_ip_address> > c:\known_hosts
ssh-keyscan -t dsa <my_ftp_ip_address> > c:\known_hosts

토마스와 SO에게 감사드립니다!

팁을 주신 Dougman에게 감사드립니다!

귀하의 답변을 읽는 신규 이민자를 돕기 위해.
ssh-keyscan을 실행하기 전에 openssh가 기본적으로 설치되어 있다고 가정하면 실행해야 할 몇 가지 명령이 있습니다(자세한 내용은 빠른 시작/readme 설치를 참조하세요).
호스트 키를 얻을 수 있는 명령은 다음과 같습니다.

C:\Program Files\OpenSSH\bin>mkgroup -l >> ..\etc\group
C:\Program Files\OpenSSH\bin>mkpasswd -l >> ..\etc\passwd
C:\Program Files\OpenSSH\bin>net start opensshd
The OpenSSH Server service is starting.
The OpenSSH Server service was started successfully.
C:\Program Files\OpenSSH\bin>ssh-keyscan -t rsa vivo.sg.m.com > c:\known_hosts
vivo.sg.m.com SSH-2.0-Sun_SSH_1.1

GUI를 사용하고 싶다면 WinSCP FTP 클라이언트를 사용하여 로그 창이나 최초 연결 팝업에서 호스트 키를 빼낼 수 있습니다. https://winscp.net/eng/docs/ssh_verifying_the_host_key

내가 당신을 오해하지 않는 한 :그럴 필요는 없습니다.

다른 애플리케이션을 사용하여 서버에 연결하는 경우(예:PuTTY) 이전에 서버를 본 적이 없으면 키를 수락하라는 메시지가 표시됩니다.

왜 이렇게 하려는지 알겠습니다. 하지만 각 애플리케이션에는 키를 저장하는 고유한 방법이 있을 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top