国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

FTP虛擬用戶的使用方法

瀏覽:149日期:2023-03-25 09:40:42

虛擬用戶原理

因?yàn)樵趌inux之下,使用vsftp建立用戶之后,默認(rèn)使用ftp訪問的時(shí)候,是會(huì)訪問到對(duì)應(yīng)的用戶家目錄。如果想多個(gè)用戶同時(shí)訪問某一個(gè)目錄,同時(shí)對(duì)同一目錄下有著不同的權(quán)限,比如部分用戶只能看,不修改,或者有的用戶只能下載不能上傳這些權(quán)限,這些設(shè)定只能通過vsftp中的虛擬用戶來進(jìn)行設(shè)定,普通的用戶無法達(dá)到這樣的效果。

故先通過建立一個(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    ##開啟本地賬戶,虛擬賬戶需要映射到本地賬戶
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í)不需要開戶本地列表過濾
listen=YES     ##監(jiān)聽ipv4
listen_ipv6=NO
allow_writeable_chroot=YES       ##可以寫,因?yàn)榻d家目錄需去掉用戶寫權(quán)限
tcp_wrappers=YES
guest_enable=YES    ##開啟虛擬賬戶功能
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

沒有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ù)而所在位置不同,可以通過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功能打開,同時(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í)有所幫助,也希望大家多多支持。

標(biāo)簽: FTP
相關(guān)文章:
主站蜘蛛池模板: 皋兰县| 胶南市| 精河县| 长治县| 陆良县| 岳池县| 清水河县| 葫芦岛市| 绥滨县| 酒泉市| 霍州市| 理塘县| 芜湖市| 无棣县| 长沙市| 汤原县| 渝北区| 宁城县| 西乌珠穆沁旗| 北海市| 翁源县| 无为县| 英德市| 珠海市| 滦平县| 泽库县| 封开县| 库车县| 西畴县| 晋江市| 大新县| 宝坻区| 洞口县| 晋州市| 陵川县| 九台市| 盐山县| 康马县| 灵宝市| 青田县| 屏东市|