參數 | 是否只能在 Daemon 模式下使用 | 意義 |
-a | 是 | 當您有二張網絡卡或是二個 IP 時,我們可以設定只接受聯機到某一個 IP 的聯機要求。例如: ftpd -D -a 192.168.0.1
此范例表示只接受使用者聯機到 192.168.0.1 這個 IP。 |
-d | 否 | 記錄 FTP 的除錯訊息。除了加入這個參數外,您必須修改 /etc/syslog.conf,并加入下列內容以記錄 FTP 的訊息。
!ftpd*.* /var/log/ftpd.log
|
-h | 否 | 不要顯示 FTP 服務器的主機名稱、軟件信息、版本等。 |
-l | 否 | 記錄 FTP 登入成功及失敗的訊息。如果您使用二次 -l,則使用者上傳、下載、刪除、建立目錄時都會留下記錄。預設的記錄會留在 /var/log/xferlog 中。 |
-P | 是 | 我們知道 FTP 預設會****連接埠 21,以接受客戶端的聯機要求。不過如果您是以獨立的 daemon 方式啟動 FTP,則 可以使用 -P 加上連接埠號以改變預設連接埠。 |
參數 | 意義 |
-o | 限制所有使用者只能上傳檔案,而無法下載任何檔案。 |
-r | 限制所有使用者對于服務器內所有檔案只能只讀,不可以建立目錄、上傳、更改檔名、或任何會動到檔案目錄的指令。 |
一般使用者登入后,預設會進入自己的家目錄中。使用者可以改變工作路徑到系統的任何目錄中。如果您希望使用者登入后只能在自己的家目錄中活動,而不能進入其它系統目錄中,可以使用 chroot 的功能。所謂的 chroot 就是將某一個目錄變成使用者看到的根目錄。例如,我們讓使用者 alex 登入后,將 /home/alex 變成根目錄。則 alex 在使用指令「cd /」時,還是會停留在 /home/alex。如果他使用指令「pwd」查看目前所在路徑,則會顯示 /。如此一來,我們就可以確保使用者不會到處亂跑,進入一些不該進入的地方。這個功能對于提升 FTP 的安全性有莫大的助益。
設定 chroot 的方法很簡單,只要修改 /etc/ftpchroot 即可。下面是一個范例: alex在新增了使用者 ftp 之后,我們就已經支持匿名 FTP 的功能了。現在您可以使用 anonymous 或 ftp 賬號登入,而且不需任何密碼。由于開放了匿名 FTP 后,任何人都可以登入系統,所以匿名賬號登入后一定會使用 chroot,以將匿名使用者限制在家目錄中。
除了強制使用 chroot 外,我們還可以在啟動 FTP 時加上一些參數,以針對匿名使用者進行更多的限制。下表為啟動 FTP 服務時可以使用的參數:參數 | 意義 |
-M | 禁止匿名使用者建立新的目錄。 |
-m | 允許匿名使用者覆寫一個存在的檔案。預設啟動 FTP 時,并不允許匿名使用者覆寫已經存在的檔案。當使用者上傳檔案時,如果已經有同檔名的檔案存在,系統會自動為上傳的檔案改名。 |
-O | 讓匿名使用者只能上傳檔案,下載檔案的功能會被取消。 |
上一篇:ssh 命令說明