vsftpd安裝配置虛擬用戶(hù)-創(chuàng)新互聯(lián)

當(dāng)用戶(hù)量越來(lái)越大,創(chuàng)建更多的系統(tǒng)用戶(hù)是不明智的,這時(shí)就需要為vsftpd創(chuàng)建虛擬賬戶(hù),但vsftpd虛擬賬戶(hù)的數(shù)據(jù)庫(kù)要保存在Berkeley DB格式的數(shù)據(jù)文件中,所以需要安裝db4-utils工具來(lái)創(chuàng)建這樣的數(shù)據(jù)庫(kù)文件

創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站制作、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶(hù)于互聯(lián)網(wǎng)時(shí)代的臺(tái)州網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

一、系統(tǒng)環(huán)境
# cat /etc/issue
CentOS release 6.8 (Final)
Kernel \r on an \m
# uname -a
Linux iZuf62wzdy3bbx4vbp2f6bZ 2.6.32-642.13.1.el6.x86_64 #1 SMP Wed Jan 11 20:56:24 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

二、安裝vsftpd服務(wù)
#yum -y install vsftpd
#/etc/init.d/vsftpd restart

#chkconfig vsftpd on

三、創(chuàng)建虛擬用戶(hù)數(shù)據(jù)庫(kù)

首先需要?jiǎng)?chuàng)建明文文件,明文文件奇數(shù)行為用戶(hù)名,偶數(shù)行為密碼。使用db_load工具將其轉(zhuǎn)換為數(shù)據(jù)庫(kù)文件,db_load工具需要通過(guò)安裝db4-utils軟件獲得。最后通過(guò)修改文件權(quán)限以增強(qiáng)資料的安全性

#yum -y install db4-utils

#vim /etc/vsftpd/vlogin

在vlogin文件中寫(xiě)入用戶(hù)名和密碼:

Username01

Password01

Username01

Password01

生成虛擬數(shù)據(jù)庫(kù)文件(vlogin.db)

#db_load -T -t hash -f /etc/vsftpd/vlogin /etc/vsftpd/vlogin.db

#chmod 600 /etc/vsftpd/{vlogin,vlogin.db}

四、設(shè)置虛擬賬號(hào)驗(yàn)證

Linux一般通過(guò)PAM文件設(shè)置賬號(hào)的驗(yàn)證機(jī)制,然后通過(guò)創(chuàng)建PAM文件,使用新的數(shù)據(jù)文件進(jìn)行登錄驗(yàn)證,PAM文件中的db選項(xiàng)于指定并驗(yàn)證賬戶(hù)和密碼的數(shù)據(jù)庫(kù)文件

# vim /etc/pam.d/vsftpd   (此文件中加入如下兩行設(shè)置)

auth       required     /lib64/security/pam_userdb.so   db=/etc/vsftpd/vlogin

account    required     /lib64/security/pam_userdb.so   db=/etc/vsftpd/vlogin

五、設(shè)置虛擬賬戶(hù)共享目錄

因?yàn)樗械奶摂M賬戶(hù)需要映射到一個(gè)真實(shí)的系統(tǒng)賬戶(hù),所以系統(tǒng)需要添加一個(gè)系統(tǒng)賬戶(hù)并設(shè)置家目錄(此處應(yīng)用到web上做網(wǎng)站文件上傳賬號(hào),所以必須同WEB用戶(hù)一樣www用戶(hù))

useradd -s /sbin/nologin -d /data/www www

六、修改VSFTPD主配置文件

# vim /etc/vsftpd/vsftpd.conf

anonymous_enable=YES (是否允許 匿名登錄FTP服務(wù)器,默認(rèn)設(shè)置為YES允許,即用戶(hù)可使用用戶(hù)名ftp或anonymous進(jìn)行ftp登錄,口令為用戶(hù)的E-mail地址。如不允許匿名訪問(wèn)去掉前面#并設(shè)置為NO)

local_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ù)訪問(wèn),前面加上#,可 阻止本地用戶(hù)訪問(wèn)FTP服務(wù)器。)

write_enable=YES ( 是否允許本地用戶(hù)對(duì) FTP 服務(wù)器文件具有寫(xiě)權(quán)限 , 默認(rèn)設(shè)置為 YES 允許 )

local_umask=022 (或其它值,設(shè)置本地用戶(hù)的文件掩碼 為缺省022 ,也可根據(jù)個(gè)人喜好將其設(shè)置為其他值,默認(rèn)值為077)

anon_upload_enable=YES (是否允許匿名用戶(hù)上傳文件,須將write_enable=YES , 默認(rèn)設(shè)置為YES 允許 )

anon_mkdir_write_enable=YES   ( 是否允許匿名用戶(hù)創(chuàng)建新文件夾 , 默認(rèn)設(shè)置為 YES 允許 )anon_other_write_enable=NO     #禁止匿名用戶(hù)進(jìn)行其他寫(xiě)操作

dirmessage_enable=YES ( 是否激活目錄歡迎信息功能 , 當(dāng)用戶(hù)用 CMD模式首次訪問(wèn)服務(wù)器上某個(gè)目錄時(shí) ,F(xiàn)TP服務(wù)器將顯示歡迎信息,默認(rèn)情況下,歡迎信息是通過(guò)該目錄下的 .message 文件獲得的,此文件保存自定義的歡迎信息,由用戶(hù)自己建立)

xferlog_enable=YES ( 默認(rèn)值為 NO 如果啟用此選項(xiàng),系統(tǒng)將會(huì)維護(hù)記錄服務(wù)器上傳和下載情況的日志文件,默認(rèn)情況該日志文件為/var/log/vsftpd.log,也可以通過(guò)下面的 xferlog_file選項(xiàng)對(duì)其進(jìn)行設(shè)定。)

connect_from_port_20=YES ( 設(shè)定 FTP 服務(wù)器將啟用 FTP 數(shù)據(jù)端口的連接請(qǐng)求 ,ftp-data 數(shù)據(jù)傳輸 ,21 為連接控制端口 )

xferlog_file=/var/log/vsftpd.log ( 設(shè)定系統(tǒng)維護(hù)記錄FTP服務(wù)器上傳和下載情況的日志文件,/var/log/vsftpd.log是默認(rèn)的,也可以另設(shè)其它)

chown_uploads=YES ( 設(shè)定是否允許 改變 上傳文件的屬主 , 與下面一個(gè)設(shè)定項(xiàng)配合使用 )
#chown_username=whoever ( 設(shè)置想要改變的上傳文件的屬主 , 如果需要 , 則輸入一個(gè)系統(tǒng)用戶(hù)名, 例如可以把上傳的文件都改成 root 屬主。whoever:任何人)

#xferlog_std_format=YES ( 如果啟用此選項(xiàng) , 傳輸日志文件將以標(biāo)準(zhǔn) xferlog 的格式書(shū)寫(xiě),該格式的日志文件默認(rèn)為/var/log/xferlog,也可以通過(guò)xferlog_file選項(xiàng)對(duì)其進(jìn)行設(shè)定,默認(rèn)值為NO)
#dual_log_enable ( 如果添加并啟用此選項(xiàng),將生成兩個(gè)相似的日志文件,默認(rèn)在/var/log/xferlog和/var/log/vsftpd.log目錄下。前者是wu_ftpd類(lèi)型的傳輸日志,可以利用標(biāo)準(zhǔn)日志工具對(duì)其進(jìn)行分析;后者是vsftpd類(lèi)型的日志)
#syslog_enable ( 如果添加并啟用此選項(xiàng),則原本應(yīng)該輸出到/var/log/vsftpd.log中的日志,將輸出到系統(tǒng)日志中)

#idle_session_timeout=600 (設(shè)置數(shù)據(jù)傳輸中斷間隔時(shí)間,此語(yǔ)句表示空閑的用戶(hù)會(huì)話中斷時(shí)間為600秒,即當(dāng)數(shù)據(jù)傳輸結(jié)束后,用戶(hù)連接FTP服務(wù)器的時(shí)間不應(yīng)超過(guò)600秒,可以根據(jù)實(shí)際情況對(duì)該值進(jìn)行修改)

#data_connection_timeout=120 ( 設(shè)置數(shù)據(jù)連接超時(shí)時(shí)間 , 該語(yǔ)句表示數(shù)據(jù)連接超時(shí)時(shí)間為 120 秒, 可根據(jù)實(shí)際情況對(duì)其個(gè)修改 )

#nopriv_user=ftpsecure( 運(yùn)行 vsftpd 需要的非特權(quán)系統(tǒng)用戶(hù),缺省是nobody)

#async_abor_enable=YES ( 如果 FTP client 會(huì)下達(dá)“async ABOR”這個(gè)指令時(shí),這個(gè)設(shè)定才需要啟用,而一般此設(shè)定并不安全,所以通常將其取消)

#ascii_upload_enable=YES ( 大多數(shù) FTP 服務(wù)器都選擇用 ASCII 方式傳輸數(shù)據(jù) , 將 # 去掉就能實(shí)現(xiàn)用 ASCII 方式上傳和下載文件 )
#ascii_download_enable=YES ( 將 # 去掉就能實(shí)現(xiàn)用 ASCII 方式下載文件 )

#ftpd_banner=Welcome to blah FTP service. (將#去掉可設(shè)置登錄FTP服務(wù)器時(shí)顯示的歡迎信息,可以修改=后的歡迎信息內(nèi)容。另外如在需要設(shè)置更改目錄歡迎信息的目錄下創(chuàng)建名為 .message 的文件,并寫(xiě)入歡迎信息保存后,在進(jìn)入到此目錄會(huì)顯示自定義歡迎信息 )

#deny_email_enable=YES ( 可將某些特殊的 email address 抵擋住。如果以anonymous登錄服務(wù)器時(shí),會(huì)要求輸入密碼,也就是您的email address,如果很討厭某些email address,就可以使用此設(shè)定來(lái)取消他的登錄權(quán)限,但必須與下面的設(shè)置項(xiàng)配合 )

#banned_email_file=/etc/vsftpd/banned_emails (當(dāng)上面的 deny_email_enable=YES 時(shí),可以利用這個(gè)設(shè)定項(xiàng)來(lái)規(guī)定那個(gè)email address不可登錄vsftpd服務(wù)器,此文件需用戶(hù)自己創(chuàng)建,一行一個(gè)email address即可! )

#chroot_list_enable=YES ( 設(shè)置為 NO 時(shí),用戶(hù)登錄FTP服務(wù)器后具有訪問(wèn)自己目錄以外的其他文件的權(quán)限, 設(shè)置為 YES 時(shí) , 用戶(hù)被鎖定在自己的 home 目錄中,vsftpd將在下面 chroot_list_file選項(xiàng)值的位置尋找 chroot_list文件,此文件需用戶(hù)建立,再將需鎖定在自己home目錄的用戶(hù)列入其中,每行一個(gè)用戶(hù))

#chroot_list_file=/etc/vsftpd/chroot_list ( 此文件需自己建立 , 被列入此文件的用戶(hù) , 在登錄后將不能切換到自己目錄以外的其他目錄 , 由 FTP 服務(wù)器自動(dòng)地 chrooted 到用戶(hù)自己的home目錄下,使得 chroot_list文件中的用戶(hù)不能隨意轉(zhuǎn)到其他用戶(hù)的FTP home目錄下,從而有利于FTP服務(wù)器的安全管理和隱私保護(hù))

#ls_recurse_enable=YES (是否允許遞歸查詢(xún),大型站點(diǎn)的 FTP 服務(wù)器啟用此項(xiàng)可以方便遠(yuǎn)程用戶(hù)查詢(xún) )

listen=YES ( 如果設(shè)置為 YES , 則 vsftpd 將以獨(dú)立模式運(yùn)行,由vsftpd自己監(jiān)聽(tīng)和處理連接請(qǐng)求)

listen_port=21  (指定監(jiān)聽(tīng)端口,默認(rèn)不指定端口為21)

#listen_ipv6=YES ( 設(shè)定是否支持IPV6)

pam_service_name=vsftpd ( 設(shè)置 PAM 外掛模塊提供的認(rèn)證服務(wù)所使用的配置文件名 ,即/etc/pam.d/vsftpd文件,此文件中file=/etc/vsftpd/ftpusers字段,說(shuō)明了PAM模塊能抵擋的帳號(hào)內(nèi)容來(lái)自文件/etc/vsftpd/ftpusers中)

userlist_enable=YES (此選項(xiàng)默認(rèn)值為NO ,此時(shí)ftpusers文件中的用戶(hù)禁止登錄FTP服務(wù)器;若此項(xiàng)設(shè)為YES,則 user_list文件中的用戶(hù)允許登錄  FTP服務(wù)器,而如果同時(shí)設(shè)置了 userlist_deny=YES ,則user_list文件中的用戶(hù)將不允許登錄FTP服務(wù)器,甚至連輸入密碼提示信息都沒(méi)有,直接被FTP服務(wù)器拒絕)

#userlist_deny=YES/NO (此項(xiàng)默認(rèn)為YES,設(shè)置是否阻扯user_list文件中的用戶(hù)登錄FTP服務(wù)器)
tcp_wrappers=YES ( 表明服務(wù)器使用 tcp_wrappers 作為主機(jī)訪問(wèn)控制方式,tcp_wrappers可以實(shí)現(xiàn)linux系統(tǒng)中網(wǎng)絡(luò)服務(wù)的基于主機(jī)地址的訪問(wèn)控制,在/etc目錄中的hosts.allow和hosts.deny兩個(gè)文件用于設(shè)置tcp_wrappers的訪問(wèn)控制,前者設(shè)置允許訪問(wèn)記錄,后者設(shè)置拒絕訪問(wèn)記錄。例如想限制某些主機(jī)對(duì)FTP服務(wù)器192.168.57.2的匿名訪問(wèn),編緝/etc/hosts.allow 文件,如在下面增加兩行命令:vsftpd:192.168.57.1ENY 和vsftpd:192.168.57.9ENY 表明限制IP為192.168.57.1/192.168.57.9主機(jī)訪問(wèn)IP為192.168.57.2的FTP服務(wù)器,此時(shí)FTP服務(wù)器雖可以PING通,但無(wú)法連接)

chroot_local_user=YES

chroot_list_enable=YES

tcp_wrappers=YES

guest_enable=YES

guest_username=www

pasv_enable=YES

pasv_min_port=20000

pasv_max_port=30000

user_config_dir=/etc/vsftpd/vsftpd_user_conf

==================================================================================

以下為新增

[root@localhost data]# cat /etc/pam.d/vsftpd

auth       required/lib64/security/pam_userdb.sodb=/etc/vsftpd/vlogin

account    required/lib64/security/pam_userdb.sodb=/etc/vsftpd/vlogin

auth       sufficient/lib64/security/pam_userdb.sodb=/etc/vsftpd/vlogin

account    sufficient/lib64/security/pam_userdb.sodb=/etc/vsftpd/vlogin

[root@localhost data]# cat /etc/vsftpd/vsftpd.conf

anonymous_enable=NO

local_enable=YES

write_enable=YES

local_umask=022

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_mkdir_write_enable=NO

dirmessage_enable=YES

xferlog_enable=YES

xferlog_file=/var/log/xferlog

chown_uploads=YES

chroot_local_user=YES

chroot_list_enable=YES

pam_service_name=vsftpd

userlist_enable=YES

#userlist_deny=NO

#userlist_file=/etc/vsftpd/user_list

tcp_wrappers=YES

guest_enable=YES

guest_username=www

listen=YES

listen_port=21

pasv_enable=YES

pasv_min_port=20000

pasv_max_port=30000

user_config_dir=/etc/vsftpd/vsftpd_user_conf

 ==============================================================

目錄/etc/vsftpd/vsftpd_user_conf中用戶(hù)權(quán)限配置:

[root@localhost ~]$ cat /etc/vsftpd/vsftpd_user_conf/ftpusername

local_root=/data/projects/www_data

write_enable=YES

virtual_use_local_privs=YES

參考網(wǎng)站:

http://www.cnblogs.com/helonghl/articles/5533857.html

http://www.cnblogs.com/allenjin/archive/2011/12/03/2274542.html

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

新聞名稱(chēng):vsftpd安裝配置虛擬用戶(hù)-創(chuàng)新互聯(lián)
URL分享:http://bm7419.com/article20/ddhjco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、標(biāo)簽優(yōu)化、網(wǎng)站排名網(wǎng)站收錄、外貿(mào)網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)