vstfp虛擬用戶

關閉防火牆以及selinux

[root@yanyinglai3 ~]# systemctl stop firewalld
[root@yanyinglai3 ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@yanyinglai3 ~]# sed -ri '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config
[root@yanyinglai3 ~]# setenforce 0

安裝依賴程序

[root@yanyinglai3 ~]# cd /etc/yum.repos.d/
[root@yanyinglai3 yum.repos.d]# curl -o 163.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
[root@yanyinglai3 yum.repos.d]# yum clean all
[root@yanyinglai3 yum.repos.d]# yum -y install epel-release
[root@yanyinglai3 yum.repos.d]# yum -y install vsftpd

創建文本格式的用戶、密碼列表,添加兩個用戶

[root@yanyinglai3 yum.repos.d]# cd
[root@yanyinglai3 ~]# cat >> /etc/vsftpd/vu.list <<EOF
yan
123
yyl
456
EOF
[root@yanyinglai3 ~]# cat /etc/vsftpd/vu.list
yan
123
yyl
456

安裝db4工具

[root@yanyinglai3 ~]# yum -y install db4*

將剛創建的用戶、密碼文件使用db4工具轉化成數據庫文件

[root@yanyinglai3 ~]# db_load -T -t hash -f /etc/vsftpd/vu.list /etc/vsftpd/vu.db
上面的-T表示轉換,-t表示加密方式使用hash算法加密

爲提高虛擬賬戶的文件用戶的安全性,設置權限600 ,防止數據外泄

[root@yanyinglai3 ~]# db_load -T -t hash -f /etc/vsftpd/vu.list /etc/vsftpd/vu.db
[root@yanyinglai3 ~]# chmod 600 /etc/vsftpd/vu.
[root@yanyinglai3 ~]# ll /etc/vsftpd/vu.

-rw-------. 1 root root 12288 8月 8 16:27 /etc/vsftpd/vu.db
-rw-------. 1 root root 16 8月 8 16:16 /etc/vsftpd/vu.list

添加虛擬用戶的映射賬戶、創建ftp根目錄。例如要將使用的ftp根目錄設置爲/var/ftproot,映射賬戶名稱爲vftp

[root@yanyinglai3 ~]# useradd -d /var/ftproot -s /sbin/nologin vftp
[root@yanyinglai3 ~]# chmod 755 /var/ftproot/
[root@yanyinglai3 ~]# ll -d /var/ftproot/
drwxr-xr-x. 2 vftp vftp 62 8月 8 16:32 /var/ftproot/

爲虛擬用戶建立PAM認證

[root@yanyinglai3 ~]# cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak[root@yanyinglai3 ~]# vim /etc/pam.d/vsftpd
#%PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/vu
account required pam_userdb.so db=/etc/vsftpd/vu

修改配置vftpd文件,添加虛擬用戶支持

[root@yanyinglai3 ~]# cat >> /etc/vsftpd/vsftpd.conf <<EOF
> guest_enable=yes
guest_username=vftp
user_config_dir=/etc/vsftpd/vusers_dir
allow_writeable_chroot=YES
EOF
創建目錄/etc/vsftpd/vusers_dir與前面建立對應關係
[root@yanyinglai3 ~]# mkdir /etc/vsftpd/vusers_dir
[root@yanyinglai3 ~]# ll /etc/vsftpd/
總用量 36
-rw-------. 1 root root 125 8月 3 2017 ftpusers
-rw-------. 1 root root 361 8月 3 2017 user_list
-rw-------. 1 root root 5133 8月 8 16:47 vsftpd.conf
-rwxr--r--. 1 root root 338 8月 3 2017 vsftpd_conf_migrate.sh
-rw-------. 1 root root 12288 8月 8 16:27 vu.db
-rw-------. 1 root root 16 8月 8 16:16 vu.list
drwxr-xr-x. 2 root root 6 8月 8 16:52 vusers_dir

設置用戶yan可上傳和創建目錄,設置yyl用戶只有默認下載權限,只需創建一個名爲yyl的空文件即可

[root@yanyinglai3 ~]# cat >> /etc/vsftpd/vusers_dir/yan <<EOF
anon_upload_enable=YES
anon_mkdir_write_enable=YES
EOF
[root@yanyinglai3 ~]# touch /etc/vsftpd/vusers_dir/yyl

啓動ftp服務,檢查端口是否開啓

[root@yanyinglai3 ~]# systemctl start vsftpd
[root@yanyinglai3 ~]# ss -antl
在ftp客戶端登錄lin用戶創建文件
vstfp虛擬用戶

驗證

[root@yanyinglai3 ~]# cd /var/ftproot
[root@yanyinglai3 ftproot]# ls
123 abc

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章