Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> 電腦軟體教學 >> 伺服器技術 >> 關於伺服器

IE 存取 IIS FTP 逾時故障分析:主動/被動模式與防火牆的關鍵互動

編輯:關於伺服器

故障現象

  • 環境:Windows Server 2003 + IIS FTP + Windows 防火牆(已開放 TCP 21)
  • CMD `ftp` 連線正常,可 `dir`、`get`
  • IE 連線卡在「正在取得資料夾內容」,最終提示「作業逾時」
  • CuteFTP 使用 PASV(被動)模式失敗,改用 PORT(主動)模式即正常

核心原理:FTP 兩種連線模式

模式資料通道建立方向伺服器端口客戶端端口防火牆視角
PORT(主動)伺服器主動連向客戶端TCP 20>1024 隨機Outbound(通常放行)
PASV(被動)客戶端主動連向伺服器>1024 隨機>1024 隨機Inbound(需額外開放)

IE 預設使用 PASV 模式;CMD `ftp` 預設使用 PORT 模式。

故障原因釐清

防火牆僅開放 TCP 21(命令通道)。PORT 模式下,伺服器從 TCP 20 發起 Outbound 連線,防火牆預設允許;PASV 模式下,客戶端嘗試連接伺服器隨機高埠(Inbound),被防火牆攔截,導致資料通道無法建立,出現逾時。

解決方案

方案一:伺服器端開放 FTP 服務程式(推薦)

  1. Windows 防火牆 →「例外」→「新增程式」
  2. 選擇 %SystemRoot%\system32\ftpd.exe(或 IIS FTP 服務執行檔)
  3. 勾選後,防火牆將允許該程式所有 Inbound/Outbound 連線,涵蓋 PASV 隨機埠。

防火牆新增程式例外

方案二:客戶端強制 IE 使用 PORT 模式

  1. IE →「工具」→「網際網路選項」→「進階」
  2. 取消勾選「使用被動 FTP(相容防火牆和 DSL 數據機)」
  3. 重新啟動 IE。

IE 關閉被動 FTP

進階建議

  • 企業級防火牆(ISA Server、硬體防火牆)需設定 FTP 應用層檢查,動態開放 PASV 埠範圍。
  • IIS FTP 可透過 Metabase 限制 PASV 埠範圍(`PassivePortRange`),再於防火牆精準開放該範圍,提升安全性。
  • 若用戶環境不可控,建議同時提供 PORT/PASV 雙模式支援,並備妥用戶端設定說明文件。
Copyright © Windows教程網 All Rights Reserved