2013-08-28 157 views
1

我有一個小巧的C#應用​​程序,它使用SharpSSH庫來簡單地使用SFTP上傳文件。現在,我的客戶端希望使用相同的程序使用SSH/SFTP連接到另一臺服務器,但出於某種原因,服務器已使用「SSH/SFTP over custom port 5929」構建。不知道爲什麼他們改變了端口,但是..C#SharpSSH更改SFTP端口。

我已經查看了所有可以找到的SharpSSH文檔,但是卻沒有發現如何指示它如何使用端口5929來代替正常端口22.我的以爲會使用HOSTNAME:5929,但不知道這是否正確。

任何人都有答案?

回答

2

SshTransferProtocolBase有1個過載的連接方法。 defalut不需要參數,默認爲22號端口。超載需要一個端口號。

所以:

SshTransferProtocolBase ftp = new SshTransferProtocolBase("host","user"); 
ftp.connect(5929); 

以上應該工作。

2

Tamir.SharpSsh對於Connect()方法有一個重載,它接受一個整數並允許設置端口。

Tamir.SharpSsh.Sftp sftpClient = new Sftp(sftpServer, sftpUserName, sftpUserPassword);  
sftpClient.Connect(sftpPort); 
sftpClient.Close(); 
sftpClient = null;