FTP虛擬用戶的使用方法
虛擬用戶原理
因?yàn)樵趌inux之下,使用vsftp建立用戶之后,默認(rèn)使用ftp訪問(wèn)的時(shí)候,是會(huì)訪問(wèn)到對(duì)應(yīng)的用戶家目錄。如果想多個(gè)用戶同時(shí)訪問(wèn)某一個(gè)目錄,同時(shí)對(duì)同一目錄下有著不同的權(quán)限,比如部分用戶只能看,不修改,或者有的用戶只能下載不能上傳這些權(quán)限,這些設(shè)定只能通過(guò)vsftp中的虛擬用戶來(lái)進(jìn)行設(shè)定,普通的用戶無(wú)法達(dá)到這樣的效果。
故先通過(guò)建立一個(gè)普通系統(tǒng)用戶,建立家目錄,然后將所有的虛擬用戶映射到對(duì)應(yīng)的普通系統(tǒng)用戶家目錄中,然后再對(duì)各虛擬用戶進(jìn)行權(quán)限控制,達(dá)到上述的效果。
新建用戶
新建用戶marility,用戶鎖定在/var/www/ruibiaofangxuan目錄內(nèi)
mkdir /var/www/ruibiaofangxuan useradd -d /var/www/ruibiaofangxuan marility chown marility.marility /var/www/ruibiaofangxuan chmod u-w /var/www/ruibiaofangxuan
給虛擬用戶生成隨機(jī)密碼
[root@marility ~]# tr -cd '[:alnum:]' < /dev/urandom | fold -w32 |head -n1 eFEBgVTfWJ66OhQ3rTuGB4kt5k5r0aMW
vsftp的相關(guān)配置文件設(shè)置
[root@marility vsftpd]# grep ^[^#] /etc/vsftpd/vsftpd.conf anonymous_enable=NO ##禁止匿名用戶 local_enable=YES ##開(kāi)啟本地賬戶,虛擬賬戶需要映射到本地賬戶 write_enable=YES local_umask=022 ##本地用戶的umask值 anon_umask=022 ##虛擬用戶的umask值設(shè)定 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_file=/var/log/xferlog ##日志路徑 xferlog_std_format=YES ascii_upload_enable=YES ##允許上傳ascii格式文件 ascii_download_enable=YES ftpd_banner=Welcome to blah FTP service. chroot_local_user=YES ##禁錮用戶在家目錄 chroot_list_enable=NO ##不啟用本地禁用目錄,使用虛擬用戶時(shí)不需要開(kāi)戶本地列表過(guò)濾 listen=YES ##監(jiān)聽(tīng)ipv4 listen_ipv6=NO allow_writeable_chroot=YES ##可以寫,因?yàn)榻d家目錄需去掉用戶寫權(quán)限 tcp_wrappers=YES guest_enable=YES ##開(kāi)啟虛擬賬戶功能 guest_username=marility ##虛擬賬號(hào)映射到本地哪個(gè)用戶 pam_service_name=ftp ##加載pam.d中哪個(gè)文件的機(jī)制 user_config_dir=/etc/vsftpd/config ##虛擬用戶的單個(gè)權(quán)限 [root@marility vsftpd]# cat /etc/vsftpd/vuser_list ruibiaofangxuan ##賬戶 eFEBgVTfWJ66OhQ3rTuGB4kt5k5r0aMW ##rubiaofangxuan的密碼 admini ##賬戶 adminipw ##admini的密碼
將密碼文件進(jìn)行db格式的轉(zhuǎn)化
[root@marility vsftpd]# db_load -T -t hash -f vuser_list /etc/vsftpd/vuser_list.db
沒(méi)有db命令的可以先yum -y install db4-utils
然后再改變權(quán)限chmod 600 /etc/vsftpd/vuser_list.db
用戶密碼設(shè)定及db解析的設(shè)定
[root@marility vsftpd]# cat /etc/pam.d/ftp auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_list account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_list
auth是指對(duì)用戶的用戶名口令進(jìn)行驗(yàn)證。
accout是指對(duì)用戶的帳戶有哪些權(quán)限哪些限制進(jìn)行驗(yàn)證。
再后面的/lib/security/pam_userdb.so表示該條審核將調(diào)用pam_userdb.so這個(gè)庫(kù)函數(shù)進(jìn)行。
注意該函數(shù)會(huì)根據(jù)系統(tǒng)的位數(shù)而所在位置不同,可以通過(guò)rpm –ql pam查看
同時(shí)db指向的文件實(shí)際上指向的vuser_list.db ,但默認(rèn)省略db后綴,故上述db的指向時(shí)在配置的時(shí)候不能寫為vuser_list.db
設(shè)置虛擬用戶的權(quán)限
[root@marility vsftpd]# cat /etc/vsftpd/config/admini anon_world_readable_only=NO ##關(guān)閉只可讀 anon_upload_enable=YES ##允許上傳 anon_mkdir_write_enable=YES ##允許新建目錄 anon_other_write_enable=YES ##允許修改目錄/文件名稱,刪除 local_root=/var/www/ruibiaofangxuan/home ##家目錄映射 [root@marility vsftpd]# cat /etc/vsftpd/config/ruibiaofangxuan anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=NO anon_other_write_enable=NO local_root=/var/www/ruibiaofangxuan/home
為了安全,需要將用戶禁錮在家目錄,故會(huì)在vsftpd.conf中將chroot_local_user=YES功能打開(kāi),同時(shí)需要關(guān)閉用戶對(duì)自己家目錄的寫權(quán)限
如此設(shè)定后,虛擬用戶也不能對(duì)所映射的用戶的家目錄寫入數(shù)據(jù)
故可以在marility的家目錄下新建一個(gè)目錄/var/www/ruibiaofangxuan/home
同時(shí)將此目錄的屬主屬組改為marility,同時(shí)使用chmod改變權(quán)限
在/etc/vsftpd/config文件中再將兩個(gè)用戶的映射路徑local_root設(shè)定為所創(chuàng)建目錄即可
systemctl restart vsftpd systemctl enable vsftpd
重啟服務(wù)即可
即普通用戶只能下載上傳資料,而admini用戶有所有權(quán)限,同時(shí)也鎖定在/var/www/ruibiaofangxuan此目錄中
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
IIS本地FTP服務(wù)器搭建的實(shí)現(xiàn)方法
本文主要介紹了IIS本地FTP服務(wù)器搭建的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04
Microsoft FTP7.5 For IIS7.x使用中的一些問(wèn)題及解決方法
最近在IIS7.0上安裝了Microsoft FTP7.5,但是使用FTP7.5的過(guò)程中,卻遇到不少問(wèn)題,在網(wǎng)上找到有用資料不多,經(jīng)過(guò)一個(gè)下午的摸索,在這里分享出來(lái),希望可以幫助那些在使用Microsoft FTP7.5時(shí)遇到類似問(wèn)題的朋友。2010-05-05
圖解經(jīng)典FTP服務(wù)器工具 SERV-U最安全的設(shè)置【防止被入侵】
作為一款精典的FTP服務(wù)器軟件,SERV-U一直被大部分管理員所使用,它簡(jiǎn)單的安裝和配置以及強(qiáng)大的管理功能的人性化也一直被管理員們稱頌。但是隨著使用者越來(lái)越多,該軟件的安全問(wèn)題也逐漸顯露出來(lái)。2010-04-04
FileZilla客戶端的安裝配置教程以及使用教程(超級(jí)詳細(xì))
本文介紹了FileZilla,一個(gè)跨平臺(tái)的FTP/SFTP/FTPS客戶端,及其服務(wù)器端的搭建步驟,包括下載、安裝、用戶管理、權(quán)限設(shè)置、主被動(dòng)模式等,重點(diǎn)展示了如何在實(shí)際場(chǎng)景中使用它進(jìn)行網(wǎng)站維護(hù)、文件備份和遠(yuǎn)程文件管理,需要的朋友可以參考下2024-09-09
阿里云云服務(wù)器Linux系統(tǒng)FTP服務(wù)器搭建設(shè)置教程
這篇文章主要介紹了阿里云云服務(wù)器Linux系統(tǒng)FTP服務(wù)器搭建設(shè)置教程,本文包括Redhat、CentOS、Ubuntu、Debian等系統(tǒng)安裝vsftp軟件教程,需要的朋友可以參考下2014-09-09
修改iptables防火墻規(guī)則解決vsftp登錄后不顯示文件目錄的問(wèn)題
這篇文章主要介紹了vsftp登錄后不顯示文件目錄的解決方法,給vsFTPd增加隨機(jī)端口的范圍,然后把這個(gè)端口范圍添加到iptables就可以解決2014-01-01
iis7配置zend framework的地址重寫規(guī)則[url_rewrite]
由于站長(zhǎng)的zf項(xiàng)目不是在iis根目錄而是在zfdemo文件夾中,所以重寫的url是zfdemo/public/index.php/{R:1},請(qǐng)各位根據(jù)自己的情況填寫。2011-06-06

