linux服務(wù)器安裝vsftpd詳細(xì)步驟以及常用配置文件說(shuō)明
2016-12-04 12:43:39
10269
今天補(bǔ)充一篇linux環(huán)境下安裝vsftp的文章,以備后續(xù)快速部署管理做參考。
首先安裝vsftpd,推薦yum安裝。
yum install vsftpd -y
更改配置文件
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
xferlog_std_format=YES
ftpd_banner=Welcome to 41 FTP service.
listen=YES
chroot_local_user=YES
userlist_deny=NO
pasv_promiscuous=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=40020
pasv_address=121.x.x.x
安裝完以后啟動(dòng)即可使用:
service vsftpd start
使用之前,需要配置一下:
1,使用useradd添加用戶(hù)并設(shè)置對(duì)應(yīng)目錄,比如useradd -d /home/ftpdata/ftpuser1 使用passwd ftpuser1修改這個(gè)用戶(hù)的密碼。ftpdata上層目錄基于ftp用戶(hù)寫(xiě)入權(quán)限,默認(rèn)只有rx。
2,/etc/vsftpd/user_list 將需要的FTP用戶(hù)添加進(jìn)該列表。比如剛才的ftpuser1
3,編輯/etc/vsftpd/vsftpd.conf 設(shè)置pasv_promiscuous=YES 并重啟vsftp服務(wù),否則會(huì)報(bào)425 Security: Bad IP connecting.
上述操作完成以后就可以正常使用vsftp服務(wù)了。 下邊網(wǎng)上搜索了一些關(guān)于ftp的配置文件以及一些配置說(shuō)明,便于后期優(yōu)化使用。
vsftpd的配置文件
/etc/vsftpd/vsftpd.conf | 主配置文件 |
/usr/sbin/vsftpd | Vsftpd的主程序 |
/etc/rc.d/init.d/vsftpd | 啟動(dòng)腳本 |
/etc/pam.d/vsftpd | PAM認(rèn)證文件(此文件中file=/etc/vsftpd/ftpusers字段,指明阻止訪(fǎng)問(wèn)的用戶(hù)來(lái)自/etc/vsftpd/ftpusers文件中的用戶(hù)) |
/etc/vsftpd/ftpusers | 禁止使用vsftpd的用戶(hù)列表文件。記錄不允許訪(fǎng)問(wèn)FTP服務(wù)器的用戶(hù)名單,管理員可以把一些對(duì)系統(tǒng)安全有威脅的用戶(hù)賬號(hào)記錄在此文件中,以免用戶(hù)從FTP登錄后獲得大于上傳下載操作的權(quán)利,而對(duì)系統(tǒng)造成損壞。(注意:linux-4中此文件在/etc/目錄下) |
/etc/vsftpd/user_list | 禁止或允許使用vsftpd的用戶(hù)列表文件。這個(gè)文件中指定的用戶(hù)缺省情況(即在/etc/vsftpd/vsftpd.conf中設(shè)置userlist_deny=YES)下也不能訪(fǎng)問(wèn)FTP服務(wù)器,在設(shè)置了userlist_deny=NO時(shí),僅允許user_list中指定的用戶(hù)訪(fǎng)問(wèn)FTP服務(wù)器。(注意:linux-4中此文件在/etc/目錄下) |
/var/ftp | 匿名用戶(hù)主目錄;本地用戶(hù)主目錄為:/home/用戶(hù)主目錄,即登錄后進(jìn)入自己家目錄 |
/var/ftp/pub | 匿名用戶(hù)的下載目錄,此目錄需賦權(quán)根chmod 1777 pub(1為特殊權(quán)限,使上載后無(wú)法刪除) |
/etc/logrotate.d/vsftpd.log | Vsftpd的日志文件 |
vsftpd的主配置文件/etc/vsftpd/vsftpd.conf說(shuō)明(修改前先備份)
# 是否允許匿名登錄FTP服務(wù)器,默認(rèn)設(shè)置為YES允許
# 用戶(hù)可使用用戶(hù)名ftp或anonymous進(jìn)行ftp登錄,口令為用戶(hù)的E-mail地址。
# 如不允許匿名訪(fǎng)問(wèn)則設(shè)置為NO
anonymous_enable=YES
# 是否允許本地用戶(hù)(即linux系統(tǒng)中的用戶(hù)帳號(hào))登錄FTP服務(wù)器,默認(rèn)設(shè)置為YES允許
# 本地用戶(hù)登錄后會(huì)進(jìn)入用戶(hù)主目錄,而匿名用戶(hù)登錄后進(jìn)入匿名用戶(hù)的下載目錄/var/ftp/pub
# 若只允許匿名用戶(hù)訪(fǎng)問(wèn),前面加上#注釋掉即可阻止本地用戶(hù)訪(fǎng)問(wèn)FTP服務(wù)器
local_enable=YES
# 是否允許本地用戶(hù)對(duì)FTP服務(wù)器文件具有寫(xiě)權(quán)限,默認(rèn)設(shè)置為YES允許
write_enable=YES
# 掩碼,本地用戶(hù)默認(rèn)掩碼為077
# 你可以設(shè)置本地用戶(hù)的文件掩碼為缺省022,也可根據(jù)個(gè)人喜好將其設(shè)置為其他值
#local_umask=022
# 是否允許匿名用戶(hù)上傳文件,須將全局的write_enable=YES。默認(rèn)為YES
#anon_upload_enable=YES
# 是否允許匿名用戶(hù)創(chuàng)建新文件夾
#anon_mkdir_write_enable=YES
# 是否激活目錄歡迎信息功能
# 當(dāng)用戶(hù)用CMD模式首次訪(fǎng)問(wèn)服務(wù)器上某個(gè)目錄時(shí),F(xiàn)TP服務(wù)器將顯示歡迎信息
# 默認(rèn)情況下,歡迎信息是通過(guò)該目錄下的.message文件獲得的
# 此文件保存自定義的歡迎信息,由用戶(hù)自己建立
#dirmessage_enable=YES
# 是否讓系統(tǒng)自動(dòng)維護(hù)上傳和下載的日志文件
# 默認(rèn)情況該日志文件為/var/log/vsftpd.log,也可以通過(guò)下面的xferlog_file選項(xiàng)對(duì)其進(jìn)行設(shè)定
# 默認(rèn)值為NO
xferlog_enable=YES
# Make sure PORT transfer connections originate from port 20 (ftp-data).
# 是否設(shè)定FTP服務(wù)器將啟用FTP數(shù)據(jù)端口的連接請(qǐng)求
# ftp-data數(shù)據(jù)傳輸,21為連接控制端口
connect_from_port_20=YES
# 設(shè)定是否允許改變上傳文件的屬主,與下面一個(gè)設(shè)定項(xiàng)配合使用
# 注意,不推薦使用root用戶(hù)上傳文件
#chown_uploads=YES
# 設(shè)置想要改變的上傳文件的屬主,如果需要,則輸入一個(gè)系統(tǒng)用戶(hù)名
# 可以把上傳的文件都改成root屬主。whoever:任何人
#chown_username=whoever
# 設(shè)定系統(tǒng)維護(hù)記錄FTP服務(wù)器上傳和下載情況的日志文件
# /var/log/vsftpd.log是默認(rèn)的,也可以另設(shè)其它
#xferlog_file=/var/log/vsftpd.log
# 是否以標(biāo)準(zhǔn)xferlog的格式書(shū)寫(xiě)傳輸日志文件
# 默認(rèn)為/var/log/xferlog,也可以通過(guò)xferlog_file選項(xiàng)對(duì)其進(jìn)行設(shè)定
# 默認(rèn)值為NO
#xferlog_std_format=YES
# 以下是附加配置,添加相應(yīng)的選項(xiàng)將啟用相應(yīng)的設(shè)置
# 是否生成兩個(gè)相似的日志文件
# 默認(rèn)在/var/log/xferlog和/var/log/vsftpd.log目錄下
# 前者是wu_ftpd類(lèi)型的傳輸日志,可以利用標(biāo)準(zhǔn)日志工具對(duì)進(jìn)行分析;后者是vsftpd類(lèi)型的日志
#dual_log_enable
# 是否將原本輸出到/var/log/vsftpd.log中的日志,輸出到系統(tǒng)日志
#syslog_enable
# 設(shè)置數(shù)據(jù)傳輸中斷間隔時(shí)間,此語(yǔ)句表示空閑的用戶(hù)會(huì)話(huà)中斷時(shí)間為600秒
# 即當(dāng)數(shù)據(jù)傳輸結(jié)束后,用戶(hù)連接FTP服務(wù)器的時(shí)間不應(yīng)超過(guò)600秒。可以根據(jù)實(shí)際情況對(duì)該值進(jìn)行修改
#idle_session_timeout=600
# 設(shè)置數(shù)據(jù)連接超時(shí)時(shí)間,該語(yǔ)句表示數(shù)據(jù)連接超時(shí)時(shí)間為120秒,可根據(jù)實(shí)際情況對(duì)其個(gè)修改
#data_connection_timeout=120
# 運(yùn)行vsftpd需要的非特權(quán)系統(tǒng)用戶(hù),缺省是nobody
#nopriv_user=ftpsecure
# 是否識(shí)別異步ABOR請(qǐng)求。
# 如果FTP client會(huì)下達(dá)“async ABOR”這個(gè)指令時(shí),這個(gè)設(shè)定才需要啟用
# 而一般此設(shè)定并不安全,所以通常將其取消
#async_abor_enable=YES
# 是否以ASCII方式傳輸數(shù)據(jù)。默認(rèn)情況下,服務(wù)器會(huì)忽略ASCII方式的請(qǐng)求。
# 啟用此選項(xiàng)將允許服務(wù)器以ASCII方式傳輸數(shù)據(jù)
# 不過(guò),這樣可能會(huì)導(dǎo)致由"SIZE /big/file"方式引起的DoS攻擊
#ascii_upload_enable=YES
#ascii_download_enable=YES
# 登錄FTP服務(wù)器時(shí)顯示的歡迎信息
# 如有需要?可在更改目錄歡迎信息的目錄下創(chuàng)建名為.message的文件,并寫(xiě)入歡迎信息保存后
#ftpd_banner=Welcome to blah FTP service.
# 黑名單設(shè)置。如果很討厭某些email address,就可以使用此設(shè)定來(lái)取消他的登錄權(quán)限
# 可以將某些特殊的email address抵擋住。
#deny_email_enable=YES
# 當(dāng)上面的deny_email_enable=YES時(shí),可以利用這個(gè)設(shè)定項(xiàng)來(lái)規(guī)定哪些郵件地址不可登錄vsftpd服務(wù)器
# 此文件需用戶(hù)自己創(chuàng)建,一行一個(gè)email address即可
#banned_email_file=/etc/vsftpd/banned_emails
# 用戶(hù)登錄FTP服務(wù)器后是否具有訪(fǎng)問(wèn)自己目錄以外的其他文件的權(quán)限
# 設(shè)置為YES時(shí),用戶(hù)被鎖定在自己的home目錄中,vsftpd將在下面chroot_list_file選項(xiàng)值的位置尋找chroot_list文件
# 必須與下面的設(shè)置項(xiàng)配合
#chroot_list_enable=YES
# 被列入此文件的用戶(hù),在登錄后將不能切換到自己目錄以外的其他目錄
# 從而有利于FTP服務(wù)器的安全管理和隱私保護(hù)。此文件需自己建立
#chroot_list_file=/etc/vsftpd/chroot_list
# 是否允許遞歸查詢(xún)。默認(rèn)為關(guān)閉,以防止遠(yuǎn)程用戶(hù)造成過(guò)量的I/O
#ls_recurse_enable=YES
# 是否允許監(jiān)聽(tīng)。
# 如果設(shè)置為YES,則vsftpd將以獨(dú)立模式運(yùn)行,由vsftpd自己監(jiān)聽(tīng)和處理IPv4端口的連接請(qǐng)求
listen=YES
# 設(shè)定是否支持IPV6。如要同時(shí)監(jiān)聽(tīng)I(yíng)Pv4和IPv6端口,
# 則必須運(yùn)行兩套vsftpd,采用兩套配置文件
# 同時(shí)確保其中有一個(gè)監(jiān)聽(tīng)選項(xiàng)是被注釋掉的
#listen_ipv6=YES
# 設(shè)置PAM外掛模塊提供的認(rèn)證服務(wù)所使用的配置文件名,即/etc/pam.d/vsftpd文件
# 此文件中file=/etc/vsftpd/ftpusers字段,說(shuō)明了PAM模塊能抵擋的帳號(hào)內(nèi)容來(lái)自文件/etc/vsftpd/ftpusers中
#pam_service_name=vsftpd
# 是否允許ftpusers文件中的用戶(hù)登錄FTP服務(wù)器,默認(rèn)為NO
# 若此項(xiàng)設(shè)為YES,則user_list文件中的用戶(hù)允許登錄FTP服務(wù)器
# 而如果同時(shí)設(shè)置了userlist_deny=YES,則user_list文件中的用戶(hù)將不允許登錄FTP服務(wù)器,甚至連輸入密碼提示信息都沒(méi)有
#userlist_enable=YES/NO
# 設(shè)置是否阻扯user_list文件中的用戶(hù)登錄FTP服務(wù)器,默認(rèn)為YES
#userlist_deny=YES/NO
# 是否使用tcp_wrappers作為主機(jī)訪(fǎng)問(wèn)控制方式。
# tcp_wrappers可以實(shí)現(xiàn)linux系統(tǒng)中網(wǎng)絡(luò)服務(wù)的基于主機(jī)地址的訪(fǎng)問(wèn)控制
# 在/etc目錄中的hosts.allow和hosts.deny兩個(gè)文件用于設(shè)置tcp_wrappers的訪(fǎng)問(wèn)控制
# 前者設(shè)置允許訪(fǎng)問(wèn)記錄,后者設(shè)置拒絕訪(fǎng)問(wèn)記錄。
# 如想限制某些主機(jī)對(duì)FTP服務(wù)器192.168.57.2的匿名訪(fǎng)問(wèn),編緝/etc/hosts.allow文件,如在下面增加兩行命令:
# vsftpd:192.168.57.1:DENY 和vsftpd:192.168.57.9:DENY
# 表明限制IP為192.168.57.1/192.168.57.9主機(jī)訪(fǎng)問(wèn)IP為192.168.57.2的FTP服務(wù)器
# 此時(shí)FTP服務(wù)器雖可以PING通,但無(wú)法連接
tcp_wrappers=YES
會(huì)員登錄
賬號(hào)登錄還沒(méi)有賬號(hào)?立即注冊(cè)