2012-01-19 31 views
2

我正在使用SharpSSH庫上傳文件到SFTP服務器。我可以通過家用電腦做到這一點,但是從我工作的電腦上,我無法訪問服務器。在聯繫了位於另一個國家的系統管理員之後,他們告訴我需要通過代理訪問SFTP服務器,因爲公司所有的互聯網訪問都通過該代理。如何通過代理使用SharpSSH SFTP庫for .NET?

我搜查了很多,雖然有些帖子表明,這是可能的,我不明白如何在.NET(VB.NET專門)做到這一點。這裏有一個完美的作品從家裏(或從繞過代理...不可能生產的網關)的代碼看起來像

Dim objBo As New Tamir.SharpSsh.Sftp("STFP_SERVER_IP", "username", "password") 
objBo.Connect() 
objBo.Put(strFilename, "/outbox/master_" + Today.Date.ToString("ddMMyyyyHH") + Today.Now.Millisecond.ToString + ".TXT") 
objBo.Put(strFilename2, "/outbox/detail_" + Today.Date.ToString("ddMMyyyyHH") + Today.Now.Millisecond.ToString + ".TXT") 
objBo.Close() 

如何通過代理連接?

+0

我已經做了一些與SharpSSH庫的工作,我承認這是相當過時的(這是來自Java的一個糟糕的端口)。你可能想看看sshnet.codeplex.com,這似乎被維護,並可能有辦法處理這個。 – MattGWagner

+0

我在http://bitbucket.org/mattgwagner/sharpssh的fork中對代理的某些支持進行了修補,在這種情況下可能會有用。 – MattGWagner

+0

嗨MattGWagner!在我能夠使用代理之前,優派叉可能是最好的,我沒有問題,是否有代理從你的例子? –

回答

0

自從我問這個問題已經很長時間了,但是如果我記得正確的話,我通過在部署服務的服務器上執行端口轉發來解決此問題。

0

我從來沒有使用過SharpSSH--但我有幾個使用FTP的項目,其中一些項目每天處理超過1000個FTP請求。

起初我試圖使用.Net WebRequestMethods.Ftp - 但經過一些測試後,我選擇購買Chilkat軟件包。

即使使用HTML代理 - 他們的支持是5星 - 他們在他們的網站上有幾個樣本,它工作得很好。

這是我最喜歡的工具之一。請注意,我與奇爾卡特沒有任何關係 - 只是一個真正喜歡他們對產品的承諾的用戶。