2008-09-04 3 views
12

FileZilla를 사용하여 SFTP를 통해 서버에 연결하고 서버의 SSH 키를 FileZilla의 키 캐시에 추가하는 것을 허용했습니다.FileZilla FTP 클라이언트의 키 캐시에서 SFTP SSH 키를 추출하는 방법

키 파일을 사용할 수있게해야하는 다른 SFTP 응용 프로그램에서이 캐시 된 키를 추출하려면 어떻게해야합니까?

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

+0

I가 촬영하고있어 최종 결과 EnterpriseDT.com의 라이브러리를 사용하여 Java를 통해 SFTP를 수행하는 것입니다. API의 일부에는 연결할 때 키 파일이나 키 텍스트 자체를 제공해야합니다. SFTP 서버에서 중요한 정보를 가져 오는 방법에 대한 정보를 찾을 수없는 것 같습니다. 그래서 SFTP 서버에서 연결할 수 있도록 연결하려고합니다. 아이디어? –

답변

12

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

퍼티는 호스트 키도 저장하지만 16 진수로 인코딩합니다. HKCUR \ Software \ SimonTatham \ PuTTY \ SshHostKeys

0

내가 오해하고있는 경우가 아니라면 그렇게하지 않아도됩니다.

다른 응용 프로그램 (예 : PuTTY)을 사용하여 서버에 연결하고 그 전에 서버를 보지 못한 경우 키를 승인하라는 메시지가 표시됩니다.

왜 이렇게할지 궁금하지만 각 응용 프로그램에는 키를 저장할 수있는 고유 한 방법이있을 수 있습니다.

+0

그는 자바로 자신의 응용 프로그램을 작성하고 있기 때문에. – PRMan

5

토마스가 정확했습니다. FileZilla는 PuTTY의 PSFTP 프로그램을 피기 백하고 나열된 레지스트리 키 (HKCUR \ Software \ SimonTatham \ PuTTY \ SshHostKeys)에 16 진수 형식으로 인코딩 된 저장된 키를 저장합니다. 나는에서 known_hosts 형식의 키를 필요, 그래서 그의 추천에 windows version of openssh를 설치할 수 있고 서버를 공격하고 올바른 형식으로 키 정보를 저장하기 위해 SSH-키 스캔 도구를 사용하여 :

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

감사합니다 토마스와!

5

팁 덕분에 감사합니다!

새로운 이민자가 귀하의 답변을 읽는 것을 돕기 위해.
ssh-keyscan을 실행하기 전에 openssh가 기본적으로 설치된다고 가정하면 몇 가지 명령을 실행해야합니다 (자세한 내용은 빠른 시작/readme 설치를 읽으십시오).
다음은 호스트 키를 얻을 수있는 명령입니다. 당신이 오히려 GUI를 사용하려는 경우

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 
관련 문제