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

Debian 伺服器入門教學(二):以 Wu-ftpd 建置高安全 FTP 站台

編輯:關於伺服器

為什麼選 Wu-ftpd?

apt-cache search ftpd 列出十餘種 FTP 服務,Wu-ftpd (Washington University FTP Daemon) 為歷史最悠久、部署最廣、功能最完整的免費 FTP 伺服器,支援虛擬主機、壓縮傳輸、連線控制、上傳/下載日誌、目錄限制等企業級特性。Debian 套件版本 2.6.2,穩定可靠。

安裝與初始化

apt-get install wu-ftpd

安裝精靈詢問:

  • 建立匿名 FTP 帳號?→ Yes
  • FTP 根目錄?→ 預設 /home/ftp
  • 建立上傳目錄?→ Yes(自動建立 incoming,權限 daemon:ftp 0666)

安裝完成會提示 libnss_files.so 缺失導致匿名用戶看到 UID/GID 數字而非名稱,手動複製至 /home/ftp/lib 並 chmod 444 可修正(非必須)。

安全基礎加固(chroot 環境權限收斂)

chmod 555 /home/ftp
chmod 111 /home/ftp/bin/*
chmod 555 /home/ftp/lib/*
chmod 444 /home/ftp/etc/*

確保匿名用戶進入 chroot 後無法寫入系統目錄、無法執行非必要二進制檔。

核心配置檔:/etc/wu-ftpd/ftpaccess

依區塊說明關鍵指令:

1. 管理員聯絡信箱

email ftpadmin@yourdomain.com

2. UID/GID 存取控制

# deny-uid %-99   # 範例語法,視需求啟用
# allow-uid ftpadmin
# allow-gid ftpadmin

3. 登入失敗鎖定

loginfails 5

4. 目錄限制(核心安全)

restricted-uid kanaka

啟用後,用戶 kanaka 僅能見到自己的家目錄,無法向上遍歷,極大降低資訊洩露風險。

5. 使用者分類

class all real,guest,anonymous *
class local real localhost loopback
class remote guest,anonymous *
class rmtuser real !*.example.com

依來源 IP 與帳號類型分級,後續可針對不同 class 套用不同配額、超時、權限。

6. 連線數限制

limit all 30 Any /etc/wu-ftpd/msg.toomany

7. 歡迎/說明檔

readme README* login
readme README* cwd=*

8. 壓縮/打包傳輸支援

compress yes local remote all
tar yes local remote all

用戶下載目錄時可直接 get dir.tar.gz,伺服器端即時打包壓縮傳輸,節省頻寬。

9. 傳輸日誌

log transfers anonymous,guest,real inbound,outbound

10. 閒置逾時

limit-time anonymous 30

11. 匿名用戶指令限制

rename no anonymous
delete no anonymous
overwrite no anonymous
chmod no anonymous
umask no anonymous

12. 匿名上傳控制

# upload /home/ftp * no
# upload /home/ftp /pub/incoming yes ftp daemon 0666 nodirs

僅允許上傳至 /pub/incoming,檔案屬主 ftp:daemon,權限 0666,禁止建立子目錄。

其他配置檔速覽

  • ftpusers:拒絕登入帳號清單(root、daemon、bin、sys、sync 等系統帳號預設列入)。
  • ftpconversions:定義壓縮/解壓縮指令對應(.gz→gzip、.bz2→bzip2、.tar→tar 等),預設已涵蓋主流格式,確認 /home/ftp/bin 具備對應執行檔(如 bzip2 需自行 apt-get install bzip2 並複製)。
  • welcome.msg、msg.deny、msg.nodns、msg.toomany、pathmsg:各種提示訊息自訂。

驗證與上線

  1. 本機 ftp localhost 測試匿名/實名登入、目錄可見度、上傳下載權限。
  2. 遠端用戶端測試被動/主動模式、SSL/TLS(若啟用)。
  3. 檢查 /var/log/ftp.log 或 xferlog 確認記錄完整。

下一步規劃

  • ftpmirror 建立鏡像站。
  • 整合 mod_wrap (tcp_wrappers) 強化存取控制。
  • 啟用 FTPS (SSL/TLS) 加密傳輸通道。

本系列教學順序:(一) Apache+MySQL+PHP → (二) Wu-ftpd → (三) Exim 郵件 → (四) 其他服務。

Copyright © Windows教程網 All Rights Reserved