Port-Forwarding

從靜態 IP 訪問 FileZilla FTP 伺服器的問題

  • February 24, 2014

我正在嘗試從 Comcast Business 上的外部 IP 地址連接到我的 FTP 伺服器。

在網關上,我在埠 20-21 上設置了埠轉發到我的伺服器。此外,我已將埠 7000-8000 轉發到我的伺服器以在被動模式下使用。

在我的 FileZilla 伺服器應用程序中,我設置了被動模式以使用我的靜態 IP 並使用上面列出的埠子集。

不幸的是,由於某種原因,它不能通過外部靜態 IP 工作,但我可以在內部工作。

當我嘗試通過靜態 IP 連接時,FileZila 監視器顯示

Connected, sending welcome message....
220 FileZillaServer version 0.9.37 beta
could not send reply, disconnected

我的防火牆沒有註冊任何阻止事件並且 Windows 防火牆被禁用。我做錯了什麼或錯過了什麼?

如果不對防火牆/NAT 設備進行重新配置,您嘗試執行的操作通常將無法工作。

您目前設置的流量基本上如下(使用範例 IP):

內部客戶端 IP:10.0.0.100

內部 FTP IP:10.0.0.1

外部 FTP IP:1.2.3.4

  1. 內部客戶端(10.0.0.100)打開到 1.2.3.4 的 FTP 連接(埠 21)
  2. 內部客戶端將流量發送到預設網關/防火牆
  3. 防火牆有一條規則,將埠 21 流量發送到 10.0.0.1,並將流量發送到 10.0.0.1,並使用客戶端 IP (10.0.0.100) 的真實源地址發送它
  4. FTP 伺服器直接將響應發送回 10.0.0.100,源地址為 10.0.0.1,並且永遠不會返回防火牆,因為它看到了本地源地址。
  5. 內部客戶端期望 FTP 流量返回源 1.2.3.4 並丟棄來自 10.0.0.1 的響應
  6. FTP 連接超時

您需要在防火牆上設置或啟用髮夾 NAT 規則(或 NAT 反射,或其他各種術語,具體取決於製造商),以便在流量返回之前與外部介面建立 NAT 會話。Comcast 設備可能有一個啟用 NAT 反射的選項,但之前沒有使用過它們,我不能確定它們是否啟用。

真正的問題是你為什麼要這樣做?如果您只是想測試,請使用真正的外部客戶端(有朋友測試或設置外部客戶端)。如果您嘗試以這種方式繼續前進,那麼只需直接使用 IP 或拆分 DNS 解決方案即可。

引用自:https://serverfault.com/questions/377760