LAN 上 ftp 伺服器的網路配置

LAN 上 ftp 伺服器的網路配置

我正在尋找一種方法來調試/診斷我工作中由多個子網路組成的 LAN。

更具體地說,我試圖找到一些好的工具(windows/linux),它們可以為我提供有關哪些連接埠打開或可以從給定機器存取哪些機器/網路的資訊。

目前,我已在 vSphere 託管的虛擬 Windows 7 電腦上安裝了 FileZilla FTP 伺服器。我已經驗證 ftp 伺服器正在作為服務運行,並且配置為admin具有單一共用資料夾的單一使用者c:\test。但是當我嘗試從筆記型電腦連接時,伺服器日誌給出:

(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> PWD
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> 257 "/" is current directory.
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> TYPE I
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> 200 Type set to I
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> PASV
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> 227 Entering Passive Mode (172,22,80,8,192,35)
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> MLSD
(000012)18-12-2013 15:46:39 - admin (172.22.74.144)> 425 Can't open data connection.
(000012)18-12-2013 15:48:39 - admin (172.22.74.144)> 421 Connection timed out.
(000012)18-12-2013 15:48:39 - admin (172.22.74.144)> disconnected.

我嘗試閱讀本指南,但看不到需要什麼: https://wiki.filezilla-project.org/Network_Configuration

這裡說:

https://forum.filezilla-project.org/viewtopic.php?f=6&t=24925

ftp使用tcp,所以我需要轉送一些連接埠嗎?

在Windows伺服器上我嘗試運行netstat -an

這使:

 TCP    [::]:21                [::]:0                 LISTENING
 TCP    [::]:135               [::]:0                 LISTENING
 TCP    [::]:445               [::]:0                 LISTENING
 TCP    [::]:3389              [::]:0                 LISTENING
 TCP    [::]:49152             [::]:0                 LISTENING
 TCP    [::]:49153             [::]:0                 LISTENING
 TCP    [::]:49154             [::]:0                 LISTENING
 TCP    [::]:49155             [::]:0                 LISTENING
 TCP    [::]:49157             [::]:0                 LISTENING
 TCP    [::1]:14147            [::]:0                 LISTENING

但不知道如何解釋上面的輸出。

我似乎可以 telnet 到連接埠 21 上的機器telnet my-windows-server 21

220-FileZilla Server version 0.9.41 beta
220-written by Tim Kosse ([email protected])
220 Please visit http://sourceforge.net/projects/filezilla/

這是否表明該連接埠已開啟?

更一般地說,解決此類問題時首先要檢查/驗證的事情是什麼?

答案1

您的子網路是否經過過濾(ACL、防火牆...)?

您所above output討論的以數位位址顯示伺服器上的偵聽和非偵聽連接埠以及它們偵聽的介面(以及 TCP/UDP 協定)。

要偵錯此問題,Telnet host port檢查連接埠是否正在偵聽並透過網路開啟是一個很好的起點,但僅適用於 TCP 連接埠。在你的情況下,是的,這表示連接埠 21 已開啟。

您也可以用來nmap myserver取得給定目標主機的開放端口列表,它還能夠檢查 UDP 端口,並且它可以在 Windows 和 Linux 作業系統上運行。

另外,我會在伺服器端使用網路嗅探器tshark或類似的網路嗅探器wireshark來查看發生了什麼事。

請注意,有 2 種 FTP 模式:主動或被動:

  • 主動模式使用連接埠 TCP/21 進行控制,使用連接埠 TCP/20 進行資料(連接埠為固定的)。
  • 被動模式使用連接埠 TCP/21 進行控制,使用 1024 到 65534 之間的任何 TCP 連接埠進行資料。這些連接埠是動態的

就你的情況而言,我認為你的問題必須解決。關於您的錯誤日誌似乎您處於被動模式。

我會嘗試主動模式。

相關內容