Windows 內建 IIS 支援 FTP 服務,無需第三方軟體即可架設檔案傳輸伺服器。本文以 Win7 為例 (Win10/11 步驟一致),涵蓋功能啟用、站點建立、端口設定、SSL、認證授權、防火牆、客戶端測試全流程。
前置條件
- Windows 專業版/企業版/教育版 (家庭版無 IIS 完整功能)。
- 管理員權限。
- 已建立 FTP 根目錄資料夾 (如
D:\FTP_Root) 並設定 NTFS 權限。
步驟 1:啟用 IIS 與 FTP 服務
- 控制台 → 程式集 → 開啟或關閉 Windows 功能。
- 展開「網際網路資訊服務」→ 「FTP 伺服器」→ **勾選全部三項**:
- 展開「全球資訊網服務」→ 「應用程式開發」→ 勾選「.NET 延伸性」、「ASP.NET」、「ISAPI 擴充/篩選器」 (相容性用)。
- 確定 → 等待安裝完成 (可能需重開機)。
步驟 2:建立 FTP 站點 (IIS 管理員)
- 控制台 → 系統與安全性 → 系統管理工具 → **IIS 管理員** (或 Win+R →
inetmgr)。
- 左側連線面板 → 右鍵電腦名稱 → 「新增 FTP 站點」。
- 站點名稱:
LocalFTP / 實體路徑:D:\FTP_Root → 下一步。
- 繫結與 SSL 設定:
- IP 位址:**所有未指派** (聽取所有介面)。
- **連接埠:自訂 (如 2121),避開 80/21/443 等常用埠**。
- 勾選「自動啟動 FTP 站點」。
- SSL:選「允許」 (需憑證) 或「不需要」 (明文傳輸,僅測試環境)。
- 驗證與授權:
- 驗證:**基本驗證** (需建立 Windows 本地帳號) 或 **匿名驗證** (唯讀公開下載)。
- 授權規則:允許存取 → **指定使用者** (如
ftpuser) / **指定角色** / **所有使用者**。
- 權限:**讀取** (下載) / **寫入** (上傳) 按需勾選。
- 完成 → 站點出現在左側樹狀結構。
步驟 3:建立 FTP 專用本地帳號 (基本驗證必備)
lusrmgr.msc → 新增使用者 ftpuser → 設定強密碼 → 勾選「密碼永不過期」、「使用者無法變更密碼」。
- NTFS 權限:
D:\FTP_Root 右鍵 → 內容 → 安全性 → 編輯 → 新增 ftpuser → 給予「讀取/寫入/修改」 (不可完全控制)。
- IIS 管理員 → FTP 站點 → 「FTP 授權規則」→ 新增允許規則 → 指定使用者
ftpuser → 權限讀取/寫入。
步驟 4:防火牆放行 FTP 連接埠 (主動/被動模式皆需)
- 控制台 → 系統與安全性 → Windows Defender 防火牆 → 進階設定。
- 輸入規則 → 新增規則 → 連接埠 → TCP → 特定本機連接埠:21 (控制通道)、2121 (自訂控制埠)、50000-50100 (被動模式資料埠範圍)。
- 允許連線 → 所有設定檔 (網域/私人/公用) → 命名
FTP Server Ports。
- **關鍵:** IIS FTP 站點 → 「FTP 防火牆支援」→ 資料通道連接埠範圍設為
50000-50100,對應外部 IP (若有 NAT)。
步驟 5:客戶端測試驗證
- 瀏覽器 (僅支援被動模式下載):
ftp://192.168.1.10:2121 → 輸入帳密 → 瀏覽/下載。
- 專用 FTP 用戶端 (支援主動/被動、斷點續傳、同步): FileZilla、WinSCP、FlashFXP、CuteFTP、Xftp。
- 命令列測試:
ftp 192.168.1.10 2121 → 輸入帳密 → dir put get bye。
- Windows 檔案總管: 地址列輸入
ftp://ftpuser@192.168.1.10:2121 → 輸入密碼 → 可拖曳上傳下載 (視為網路磁碟機)。
進階議題
- 被動模式與 NAT 穿透: 路由器 Port Forwarding 2121 (控制) + 50000-50100 (資料) → 內網 FTP 伺服器 IP;IIS 設定「對應外部 IP」為公網 IP/DDNS。
- FTPS (FTP over SSL/TLS): 建立/匯入伺服器憑證 (PFX) → IIS 站點 SSL 設定 → 「要求 SSL」→ 客戶端需支援 FTPS (FileZilla/WinSCP 支援)。
- 隔離使用者目錄: FTP 站點 → 「FTP 使用者隔離」→ 「使用者名稱目錄」/「使用者名稱實體目錄」→ 每用戶獨立根目錄。
- 日誌與稽核: IIS → 「FTP 記錄」→ 設定記錄欄位/週期/路徑,配合 Log Parser/ELK 分析。
避坑提醒
- IE/Edge 瀏覽器 FTP 支援已移除/受限,請用專用客戶端或檔案總管。
- 主動模式 (PORT) 需客戶端開放入站埠,內網/NAT 環境**必須用被動模式 (PASV)**。
- 明文 FTP 傳輸帳密與資料極不安全,**生產環境強制啟用 FTPS 或改用 SFTP (SSH)**。