一、禁止系統級別使用者來登入 FTP 伺服器。
為了提高 FTP 伺服器的安全,系統管理員最好能夠為員工設定單獨的 FTP 帳號,而不要把系統級別的使用者給普通使用者來使用,這會帶來很大的安全隱患。在 VSFTP 伺服器中,可以透過配置檔案 vsftpd.ftpusers 來管理登陸帳戶。
不過這個帳戶是一個黑名單,列入這個帳戶的人員將無法利用其帳戶來登入 FTP 伺服器。部署好 VSFTP 伺服器後,我們可以利用 vi 命令來檢視這個配置檔案,發現其已經有了許多預設的帳戶。
其中,系統的超級使用者 root 也在其中。可見出於安全的考慮,VSFTP 伺服器預設情況下就是禁止 root 帳戶登陸 FTP 伺服器的。如果系統管理員想讓 root 等系統帳戶登陸到 FTP 伺服器,則知需要在這個配置檔案中將 root 等相關的使用者名稱刪除即可。
不過允許系統帳戶登入 FTP 伺服器,會對其安全造成負面的影響,為此我不建議系統管理員這麼做。對於這個檔案中相關的系統帳戶管理員最好一個都不要改,保留這些帳號的設定。
如果出於其他的原因,需要把另外一些帳戶也停用掉,則可以把帳戶名字加入到這個檔案中即可。如在伺服器上可能同時部署了 FTP 伺服器與資料庫伺服器。那麼為了安全起見,把資料庫管理員的帳戶列入到這個黑名單,是一個不錯的做法。
二、加強對匿名使用者的控制。
匿名使用者是指那些在 FTP 伺服器中沒有定義相關的帳戶,而 FTP 系統管理員為了便於管理,仍然需要他們進行登陸。
但是他們畢竟沒有取得伺服器的授權,為了提高伺服器的安全性,必須要對他們的許可權進行限制。在 VSFTP 伺服器上也有很多引數可以用來控制匿名使用者的許可權。系統管理員需要根據 FTP 伺服器的安全級別,來做好相關的配置工作。
需要說明的是,匿名使用者的許可權控制的越嚴格,FTP 伺服器的安全性越高,但是同時使用者訪問的便利性也會降低。故最終系統管理員還是需要在伺服器安全性與便利性上取得一個均衡。
下面是我推薦的幾個針對匿名使用者的配置,大家若不清楚該如何配置的話,可以參考這些配置。這些配置兼顧了伺服器的安全與使用者的使用便利。
一是引數 anon_world_readable_only 。這個引數主要用來控制匿名使用者是否可以從 FTP 伺服器上下載可閱讀的檔案。如果 FTP 伺服器部署在企業內部,主要供企業內部員工使用的話,則最好把這個引數設定為 YES 。
然後把一些企業常用表格等等可以公開的檔案放置在上面,讓員工在匿名的情況下也可以下載這些檔案。這即不會影響到 FTP 伺服器的安全,而且也有利於其他員工操作的便利性上。
二是引數 anon_upload_enable 。這個引數列示匿名使用者能否在匿名訪問的情況下向 FTP 伺服器上傳檔案。通常情況下,應該把這個引數設定為 No 。即在匿名訪問時不允許使用者上傳檔案。
否則的話,隨便哪個人都可以上傳檔案的話,那對方若上傳一個病毒檔案,那企業不是要遭殃了。故應該禁止匿名使用者上傳檔案。但是這也有例外。
如有些企業透過 FTP 協議來備份檔案。此時如果企業網路的安全性有所保障的話,可以把這個引數設定為 YES,即允許作業系統呼叫 FTP 命令往 FTP 伺服器上備份檔案。