1. 程式人生 > >vsftpd - 配置檔案(推薦)

vsftpd - 配置檔案(推薦)

  • 1)local_root=/ftpfile(當本地使用者登入時,將被更換到定義的目錄下,預設值為各使用者的家目錄) 
  • 2)anon_root=/ftpfile(使用匿名登入時,所登入的目錄) 
  • 3)use_localtime=YES(預設是GMT時間,改成使用本機系統時間)
  • 4)anonymous_enable=NO(不允許匿名使用者登入)
  • 5)local_enable=YES(允許本地使用者登入)
  • 6)write_enable=YES(本地使用者可以在自己家目錄中進行讀寫操作)
  • 7)local_umask=022(本地使用者新增檔案時的umask值)
  • 8)dirmessage_enable=YES(如果啟動這個選項,那麼使用者第一次進入一個目錄時,會檢查該目錄下是否有.message這個檔案,如果有,則會出現此檔案的內容,通常這個檔案會放置歡迎話語,或是對該目錄的說明。預設值為開啟)
  • 9)xferlog_enable=YES(是否啟用上傳/下載日誌記錄。如果啟用,則上傳與下載的資訊將被完整紀錄在xferlog_file 所定義的檔案中。預設為開啟。)
  • 10)connect_from_port_20=YES(指定FTP使用20埠進行資料傳輸,預設值為YES)
  • 11)xferlog_std_format=YES(如果啟用,則日誌檔案將會寫成xferlog的標準格式)
  • 12)ftpd_banner=Welcome to mmall FTP Server(這裡用來定義歡迎話語的字串)
  • 13)chroot_local_user=NO(用於指定使用者列表檔案中的使用者是否允許切換到上級目錄)
  • 14)chroot_list_enable=YES(設定是否啟用chroot_list_file配置項指定的使用者列表檔案)
  • 15)chroot_list_file=/etc/vsftpd/chroot_list(用於指定使用者列表檔案)
  • 16)listen=YES(設定vsftpd伺服器是否以standalone模式執行,以standalone模式執行是一種較好的方式,此時listen必須設定為YES,此為預設值。建議不要更改,有很多與伺服器執行相關的配置命令,需要在此模式下才有效,若設定為NO,則vsftpd不是以獨立的服務執行,要受到xinetd服務的管控,功能上會受到限制)
  • 17)pam_service_name=vsftpd(虛擬使用者使用PAM認證方式,這裡是設定PAM使用的名稱,預設即可,與/etc/pam.d/vsftpd對應) userlist_enable=YES(是否啟用vsftpd.user_list檔案,黑名單,白名單都可以)
  • 18)pasv_min_port=61001(被動模式使用埠範圍最小值)
  • 19)pasv_max_port=62000(被動模式使用埠範圍最大值)
  • 20)pasv_enable=YES(pasv_enable=YES/NO(YES)

    若設定為YES,則使用PASV工作模式;若設定為NO,則使用PORT模式。預設值為YES,即使用PASV工作模式。

    FTP協議有兩種工作方式:PORT方式和PASV方式,中文意思為主動式和被動式。

    一、PORT(主動)方式的連線過程是:客戶端向伺服器的FTP埠(預設是21)傳送連線請求,伺服器接受連線,建立一條命令鏈路。 

    當需要傳送資料時,客戶端在命令鏈路上用 PORT命令告訴伺服器:“我打開了****埠,你過來連線我”。於是伺服器從20埠向客戶端的****埠傳送連線請求,建立一條資料鏈路來傳送資料。

    二、PASV(被動)方式的連線過程是:客戶端向伺服器的FTP埠(預設是21)傳送連線請求,伺服器接受連線,建立一條命令鏈路。 

    當需要傳送資料時,伺服器在命令鏈路上用 PASV命令告訴客戶端:“我打開了****埠,你過來連線我”。於是客戶端向伺服器的****埠傳送連線請求,建立一條資料鏈路來傳送資料。 

    從上面可以看出,兩種方式的命令鏈路連線方法是一樣的,而資料鏈路的建立方法就完全不同。而FTP的複雜性就在於此。