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

VSFTPD 伺服器實戰部署教學:從硬體規劃到權限配置

編輯:Linux 教學

這是我第一次為公司架設 FTP 伺服器,記錄完整過程供參考。硬體採用一台效能較佳的普通 PC,作業系統選用 Windows Server 2003,考量伺服器版本的安全性與穩定性較佳,安裝後套用所有安全補丁。接著在 VMware 中安裝 CentOS 5.4 作為虛擬主機,構建雙層架構。

網路環境與穿透設定

伺服器位於內網,IP 為動態分配,且在虛擬機內部,需解決多層穿透問題:

  1. 動態域名解析(DDNS):在家用路由器啟用 DDNS,綁定免費動態域名(如花生殼),確保 IP 變動不影響存取。
  2. CNAME 別名記錄:在正式域名設定中新增 CNAME 指向免費動態域名,提供友善網址。
  3. 連接埠映射:路由器開啟連接埠 21(FTP)並映射至實體主機,再於 VMware 設定連接埠映射導向虛擬機,確保資料流正確路由。
  4. 防火牆三層防護:路由器、實體主機、虛擬系統皆需開放對應連接埠,任一層阻擋皆會導致通訊失敗。

使用者權限需求與實作

公司有 a~f 六位使用者,權限需求複雜:

  • a:私有目錄 /file,唯獨 a 可存取;同時擁有 b~f 目錄的完整存取權。
  • b:目錄 /file/xxx,所有使用者可讀取。
  • c、d、e、f:各自獨立目錄(/file/xxx/c 等),僅 a、b 及本人可存取,且需能讀取 b 目錄。

實作步驟:

  1. 建立使用者 a~f,將 a、b 加入 c、d、e、f 的群組。
  2. 建立目錄結構:
    a: /file
    b: /file/xxx
    c: /file/xxx/c
    d: /file/xxx/d
    e: /file/xxx/e
    f: /file/xxx/f
  3. 設定權限:
    chown a.a /file; chmod 700 /file          # 僅 a 可存取
    chown b.b /file/xxx; chmod 777 /file/xxx   # 所有人可存取
    chown c.c /file/xxx/c; chmod 770 /file/xxx/c  # c 群組可存取,同 d/e/f
  4. 配置 vsftpd 登入目錄:a 指向 /file,其餘指向 /file/xxx,使 c~f 可經由 /file/xxx 存取 b 的檔案。
  5. 核心 vsftpd.conf 設定:
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
chroot_local_user=YES
user_config_dir=/etc/vsftpd/user_conf
chroot_list_enable=YES
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/ftp_user_list
listen=YES
connect_from_port_20=YES
listen_port=21
pasv_min_port=30000
pasv_max_port=50000
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
ftpd_banner=Welcome to FTP Server!

此架構滿足所有權限需求,歡迎交流優化建議。

Copyright © Windows教程網 All Rights Reserved