2014-03-14 69 views
1

我正在使用Tamir.SharpSSH進行SFTP連接。我有服務器的主機,端口,用戶名,密碼和服務器的指紋。在SharpSSH中驗證指紋

我可以在沒有指紋的情況下連接到服務器。有什麼辦法可以在連接之前匹配我與服務器的指紋?

以下是用於連接我的C#.NET代碼:

Sftp sftp = new Sftp(serverHost, userName, password); 
try 
{ 
     if (portNumber > 0) sftp.Connect(portNumber);     
     else sftp.Connect(); 
     sftp.Put(localFullFilePath, remoteFolder);     
} 

回答

0

您是否嘗試過使用known_hosts文件? 我已經使用下面的代碼解決了問題。

var jsch = new JSch(); 
var sr = new StreamReader(File.Open(@".\known_hosts", FileMode.Open)); 
jsch.setKnownHosts(sr); 
var session = jsch.getSession("user_name", "host"); 
var sftp = session.openChannel("sftp") as ChannelSftp;