CentOS6 vsftpd 安装及优化方法
生活随笔
收集整理的這篇文章主要介紹了
CentOS6 vsftpd 安装及优化方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我在每次配置ftp的時候都會一頭霧水,一直也沒總結一份特別完整有效的方法出來,這次特別記錄一下,以備以后使用
1.安裝vsftpd
yum -y install vsftpd chkconfig vsftpd on2.修改配置文件
vi /etc/vsftpd/vsftpd.conf配置文件詳細注釋如下,自行參考修改
# 是否允許匿名登錄FTP服務器,默認設置為YES允許 # 用戶可使用用戶名ftp或anonymous進行ftp登錄,口令為用戶的E-mail地址。 # 如不允許匿名訪問則設置為NO anonymous_enable=NO # 是否允許本地用戶(即linux系統中的用戶帳號)登錄FTP服務器,默認設置為YES允許 # 本地用戶登錄后會進入用戶主目錄,而匿名用戶登錄后進入匿名用戶的下載目錄/var/ftp/pub # 若只允許匿名用戶訪問,前面加上#注釋掉即可阻止本地用戶訪問FTP服務器 local_enable=YES # 是否允許本地用戶對FTP服務器文件具有寫權限,默認設置為YES允許 write_enable=YES # 掩碼,本地用戶默認掩碼為077 # 你可以設置本地用戶的文件掩碼為缺省022,也可根據個人喜好將其設置為其他值 #local_umask=022 # 是否允許匿名用戶上傳文件,須將全局的write_enable=YES。默認為YES #anon_upload_enable=YES # 是否允許匿名用戶創建新文件夾 #anon_mkdir_write_enable=YES # 是否激活目錄歡迎信息功能 # 當用戶用CMD模式首次訪問服務器上某個目錄時,FTP服務器將顯示歡迎信息 # 默認情況下,歡迎信息是通過該目錄下的.message文件獲得的 # 此文件保存自定義的歡迎信息,由用戶自己建立 #dirmessage_enable=YES # 是否讓系統自動維護上傳和下載的日志文件 # 默認情況該日志文件為/var/log/vsftpd.log,也可以通過下面的xferlog_file選項對其進行設定 # 默認值為NO xferlog_enable=YES # Make sure PORT transfer connections originate from port 20 (ftp-data). # 是否設定FTP服務器將啟用FTP數據端口的連接請求 # ftp-data數據傳輸,21為連接控制端口 connect_from_port_20=YES # 設定是否允許改變上傳文件的屬主,與下面一個設定項配合使用 # 注意,不推薦使用root用戶上傳文件 #chown_uploads=YES # 設置想要改變的上傳文件的屬主,如果需要,則輸入一個系統用戶名 # 可以把上傳的文件都改成root屬主。whoever:任何人 #chown_username=whoever # 設定系統維護記錄FTP服務器上傳和下載情況的日志文件 # /var/log/vsftpd.log是默認的,也可以另設其它 #xferlog_file=/var/log/vsftpd.log # 是否以標準xferlog的格式書寫傳輸日志文件 # 默認為/var/log/xferlog,也可以通過xferlog_file選項對其進行設定 # 默認值為NO #xferlog_std_format=YES # 以下是附加配置,添加相應的選項將啟用相應的設置 # 是否生成兩個相似的日志文件 # 默認在/var/log/xferlog和/var/log/vsftpd.log目錄下 # 前者是wu_ftpd類型的傳輸日志,可以利用標準日志工具對其進行分析;后者是vsftpd類型的日志 #dual_log_enable # 是否將原本輸出到/var/log/vsftpd.log中的日志,輸出到系統日志 #syslog_enable # 設置數據傳輸中斷間隔時間,此語句表示空閑的用戶會話中斷時間為600秒 # 即當數據傳輸結束后,用戶連接FTP服務器的時間不應超過600秒。可以根據實際情況對該值進行修改 #idle_session_timeout=600 # 設置數據連接超時時間,該語句表示數據連接超時時間為120秒,可根據實際情況對其個修改 #data_connection_timeout=120 # 運行vsftpd需要的非特權系統用戶,缺省是nobody #nopriv_user=ftpsecure # 是否識別異步ABOR請求。 # 如果FTP client會下達“async ABOR”這個指令時,這個設定才需要啟用 # 而一般此設定并不安全,所以通常將其取消 #async_abor_enable=YES # 是否以ASCII方式傳輸數據。默認情況下,服務器會忽略ASCII方式的請求。 # 啟用此選項將允許服務器以ASCII方式傳輸數據 # 不過,這樣可能會導致由"SIZE /big/file"方式引起的DoS攻擊 #ascii_upload_enable=YES #ascii_download_enable=YES # 登錄FTP服務器時顯示的歡迎信息 # 如有需要,可在更改目錄歡迎信息的目錄下創建名為.message的文件,并寫入歡迎信息保存后 #ftpd_banner=Welcome to blah FTP service. # 黑名單設置。如果很討厭某些email address,就可以使用此設定來取消他的登錄權限 # 可以將某些特殊的email address抵擋住。 #deny_email_enable=YES # 當上面的deny_email_enable=YES時,可以利用這個設定項來規定哪些郵件地址不可登錄vsftpd服務器 # 此文件需用戶自己創建,一行一個email address即可 #banned_email_file=/etc/vsftpd/banned_emails # 用戶登錄FTP服務器后是否具有訪問自己目錄以外的其他文件的權限 # 設置為YES時,用戶被鎖定在自己的home目錄中,vsftpd將在下面chroot_list_file選項值的位置尋找chroot_list文件 # 必須與下面的設置項配合 chroot_list_enable=YES # 被列入此文件的用戶,在登錄后將不能切換到自己目錄以外的其他目錄 # 從而有利于FTP服務器的安全管理和隱私保護。此文件需自己建立 chroot_list_file=/etc/vsftpd/chroot_list # 是否允許遞歸查詢。默認為關閉,以防止遠程用戶造成過量的I/O #ls_recurse_enable=YES # 是否允許監聽。 # 如果設置為YES,則vsftpd將以獨立模式運行,由vsftpd自己監聽和處理IPv4端口的連接請求 listen=YES # 設定是否支持IPV6。如要同時監聽IPv4和IPv6端口, # 則必須運行兩套vsftpd,采用兩套配置文件 # 同時確保其中有一個監聽選項是被注釋掉的 #listen_ipv6=YES # 設置PAM外掛模塊提供的認證服務所使用的配置文件名,即/etc/pam.d/vsftpd文件 # 此文件中file=/etc/vsftpd/ftpusers字段,說明了PAM模塊能抵擋的帳號內容來自文件/etc/vsftpd/ftpusers中 #pam_service_name=vsftpd # 是否允許ftpusers文件中的用戶登錄FTP服務器,默認為NO # 若此項設為YES,則user_list文件中的用戶允許登錄FTP服務器 # 而如果同時設置了userlist_deny=YES,則user_list文件中的用戶將不允許登錄FTP服務器,甚至連輸入密碼提示信息都沒有 #userlist_enable=YES/NO # 設置是否阻扯user_list文件中的用戶登錄FTP服務器,默認為YES #userlist_deny=YES/NO # 是否使用tcp_wrappers作為主機訪問控制方式。 # tcp_wrappers可以實現linux系統中網絡服務的基于主機地址的訪問控制 # 在/etc目錄中的hosts.allow和hosts.deny兩個文件用于設置tcp_wrappers的訪問控制 # 前者設置允許訪問記錄,后者設置拒絕訪問記錄。 # 如想限制某些主機對FTP服務器192.168.57.2的匿名訪問,編緝/etc/hosts.allow文件,如在下面增加兩行命令: # vsftpd:192.168.57.1:DENY 和vsftpd:192.168.57.9:DENY # 表明限制IP為192.168.57.1/192.168.57.9主機訪問IP為192.168.57.2的FTP服務器 # 此時FTP服務器雖可以PING通,但無法連接 tcp_wrappers=YES3.設置目錄權限
chmod R 755 /var/www chmod R 777 /var/www/redmine3.設置防火墻
vi /etc/sysconfig/iptables添加如下,注意不要在最后?
-A INPUT -m state --state NEW -m tcp -p -dport 21 -j ACCEPT?保存退出重啟服務
service iptables restart4.配置PASV模式(可選)
vsftpd默認沒有開啟PASV模式,現在FTP只能通過PORT模式連接,要開啟PASV默認需要通過下面的配置
vi /etc/vsftpd/vsftpd.conf在末尾處添加
pasv_enable=YES pasv_min_port=40000 pasv_max_port=40080 pasv_promiscuous=YES?在防火墻配置內開啟40000到40080端口
-A INPUT -p tcp -m state --state NEW -m tcp --dport 40000:40080 -j ACCEPT
?重啟兩項服務
service iptables restart service vsftpd restart5.關閉DNS
vsftp在REDHAT,CENTOS 5中不僅登錄慢,至少花30秒左右,而且上傳文件的速度也受影響, 經過摸索,根本原因在DNS解析上花費很長時間,直到DNS超時才返回,這樣一來只要把 resolv.conf中的內容清空就能解決這個問題,但影響到DNS的解析。?另外一個辦法是修改vsftpd.conf文件:
vi /etc/vsftpd/vsftpd.conf在最后加入如下代碼
reverse_lookup_enable=NO?保存退出并重啟服務即可
service iptables restart service vsftpd restart?
轉載于:https://www.cnblogs.com/liuyi2614/p/5807167.html
總結
以上是生活随笔為你收集整理的CentOS6 vsftpd 安装及优化方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spring security 允许 i
- 下一篇: 九度oj 题目1376:最近零子序列