我嘗試使用Azure虛擬機的活動連接連接到遠程FTP服務器。我得到的錯誤是從Azure虛擬機打開活動的FTP連接
非法PORT命令。
我沒有問題連接到其他FTP站點使用被動連接,但該FTP服務器只支持活動。我的問題與this question基本相同,只是我的問題不是由Windows防火牆引起的。我通過關閉防火牆幾秒鐘並重新嘗試連接來驗證這一點,但沒有運氣。
我的理論是,這與Azure的「端點」有關,儘管我無法驗證並且我不知道如何設置它們來允許這樣做。
任何想法?
我嘗試使用Azure虛擬機的活動連接連接到遠程FTP服務器。我得到的錯誤是從Azure虛擬機打開活動的FTP連接
非法PORT命令。
我沒有問題連接到其他FTP站點使用被動連接,但該FTP服務器只支持活動。我的問題與this question基本相同,只是我的問題不是由Windows防火牆引起的。我通過關閉防火牆幾秒鐘並重新嘗試連接來驗證這一點,但沒有運氣。
我的理論是,這與Azure的「端點」有關,儘管我無法驗證並且我不知道如何設置它們來允許這樣做。
任何想法?
是的,這看起來像一個丟失的端點(+入站規則,如果你想啓用防火牆)。 在主動模式下服務器連接回特定端口(由客戶端,PORT命令傳遞)上的客戶端 - longer explanation
爲了在Azure上使用主動模式,你必須:
限制你FTP客戶端使用特定的端口(或範圍)和公共IP(它在您的VM的壁紙上) eg FileZilla: 每個客戶都應該有這個選項。除非你不幸運用.NET Framework FTPWebRequest。
在你的Azure的VM的Endpoint settings相同的端口(或範圍)添加端點: 沒有辦法添加端口範圍在點擊你有一個(很煩人)
就是這樣。你可以運行FileZilla「網絡連接嚮導」來驗證這些設置,你應該看到類似這樣的內容:
Connecting to probe.filezilla-project.org
Response: 220 FZ router and firewall tester ready
USER FileZilla
Response: 331 Give any password.
PASS 3.9.0.6
Response: 230 logged on.
Checking for correct external IP address
IP 23.102.xx.xxx cd-bac-dd-bcg
Response: 200 OK
PREP 6000
Response: 200 Using port 6000, data token 1941533557
PORT 23,102,xx,xxx,23,112
Response: 200 PORT command successful
LIST
Response: 150 opening data connection
Response: 200 Successful
QUIT
Response: 200 goodbye!
完美,非常感謝! – Will 2014-11-03 21:07:44