解決方法:
Microsoft 安全性公告 MS09-029-重大



(1) | 指令 | anonymous_enable |
說明 | 不開放Anonymous FTP設為 NO,開放為 YES,匿名登入時使用的本機帳號為 ftp | |
範例 | anonymous_enable = YES | |
(2) | 指令 | local_enable |
說明 | 允許本機帳號登入設為 YES,不允許為 NO | |
範例 | local_enable = YES | |
(3) | 指令 | write_enable |
說明 | 不開放FTP服務有寫入權利設為NO,開放為 YES | |
範例 | write_enable = YES | |
(4) | 指令 | listen listen_port |
說明 | 當 listen設定為 YES 時,表示 vsFTP 以 Standalone (單獨伺服器) 的方式啟動,單獨啟動時listen_port 設定 vsFTP 接受服務請求的連接埠 | |
範例 | listen = YES listen_port = 2121 | |
(5) | 指令 | idle_session_timeout |
說明 | 當使用者不執行任何 FTP指令時,服務自動登出的時間,單位為秒 | |
範例 | idle_session_timeout = 600 | |
(6) | 指令 | ftpd_banner |
說明 | 設定使用者登入 FTP 服務時的歡迎訊息 | |
範例 | ftpd_banner = Welcome to THIT FTP service. | |
(7) | 指令 | max_clients |
說明 | 如果以 standalone模式起動,設定最大可以連接的使用者數目,其他使用者將得到錯誤資訊,預設是 0 不限制 | |
範例 | max_clients = 10 | |
(8) | 指令 | anon_upload_enable |
說明 | 設定是否允許匿名上傳,允許為 YES,不允許為 NO | |
範例 | anon_upload_enable = YES | |
(9) | 指令 | anon_mkdir_write_enable |
說明 | 設定是否允許匿名登錄後,可以建立目錄,允許為 YES,不允許為 NO | |
範例 | anon_mkdir_write_enable = YES | |
| (10) | 指令 | anon_max_rate |
說明 | 設定匿名登入後,最大下載速率,單位為 Bytes/Second | |
範例 | anon_max_rate = 10000 | |
| (11) | 指令 | anon_root |
說明 | 設定匿名登入的根目錄 | |
範例 | anon_root = /var/www | |
| (12) | 指令 | tcp_wrappers |
說明 | 設定是否使用 /etc/hosts.allow 及 /etc/hosts.deny 來控制可以登入的主機位址,是為 YES,否為 NO | |
範例 | tcp_wrappers = YES | |
(13) | 指令 | deny_email_enable banned_email_file |
說明 | 根據匿名登入所輸入的輸入 e-mail,來禁止某些 e-mail登入,當 deny_email_enable 為 YES 時,banned_email_file 為遭禁止的 e-mail 清單檔案 | |
範例 | deny_email_enable = YES | |
(14) | 指令 | chroot_local_user |
說明 | 當設定值為 YES 時,本地使用者將被限制在自己的家目錄中,無法變更目錄 | |
範例 | chroot_local_user = YES |
1. 編輯“/etc/vsftpd/vsftpd.conf”,將 anon_root 的值改成 anon_root = /var/www,在此須注意匿名的根目錄對 ftp 帳號不能具有可寫的權限,因此我們不能將 /var/www 的擁有者改為 ftp,否則 vsftp 將無法登入,對此情況的解決之道是在根目錄下,再產生一個上傳目錄,然後將上傳目錄的擁有者改為 ftp。
2. 將 html 目錄的擁有者(owner) 改成 ftp(匿名登入時使用的本機帳號)
chown ftp html
最後,因vsftpd預設不會重開機後自動開啟,可輸入chkconfig vsftpd on,便可解決
參考資料:
http://120.105.184.250/cswang/thit/Linux/FTPD.htm
http://linux.vbird.org/linux_server/0410vsftpd.php