安装vsftpd
[root@wbk ~]# yum -y install vsftpd
已加载插件:product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
软件包 vsftpd-3.0.2-22.el7.x86_64 已安装并且是最新版本
无须任何处理
[root@wbk ~]#
配置匿名用户ftp
//修改配置文件
[root@wbk ~]# vim /etc/vsftpd/vsftpd.conf
#Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=YES
#When SELinux is enforcing check for SE bool allow_ftpd_anon_write, allow_ftpd_full_access
anon_upload_enable=YES
#Uncomment this if you want the anonymous FTP user to be able to create
#new directories.
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
[root@wbk ~]# systemctl restart vsftpd
//进入pub目录,创建文件
[root@wbk ~]# cd /var/ftp/
[root@wbk ftp]# ls
pub
[root@wbk ftp]# cd pub/
[root@wbk pub]# ls
[root@wbk pub]#
[root@wbk pub]# mkdir aa
[root@wbk pub]# ls
aa
[root@wbk pub]# ll
总用量 0
drwxr-xr-x. 2 root root 6 2月 18 15:03 aa
登陆匿名用户
下载文件到桌面
上传文件
新建文件夹
配置虚拟用户ftp
//创建文本格式的用户名、密码列表
[root@wbk ~]# cat /etc/vsftpd/vu.list
tom
123
jerry
456
将刚刚创建的文本格式用户名,密码转换成数据库文件
[root@wbk ~]# db_load -T -t hash -f /etc/vsftpd/vu.list /etc/vsftpd/vu.db
//为提高安全性,设置权限为600
[root@wbk ~]# chmod 600 /etc/vsftpd/vu.*
[root@wbk ~]# ll /etc/vsftpd/vu.*
-rw-------. 1 root root 12288 2月 18 17:00 /etc/vsftpd/vu.db
-rw-------. 1 root root 18 2月 18 16:55 /etc/vsftpd/vu.list
//添加虚拟用户的映射帐号、创建ftp根目录,映射帐号的名称为vftp
[root@wbk ~]# useradd -d /var/ftproot -s /sbin/nologin vftp
[root@wbk ~]# chmod 755 /var/ftproot/
[root@wbk ~]# ll -d /var/ftproot/
drwxr-xr-x. 2 vftp vftp 62 2月 18 17:05 /var/ftproot/
//为虚拟用户建立PAM认证
[root@wbk ~]# 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
//修改vsftpd配置文件,添加虚拟用户支持,为不同的虚拟用户建立独立的配置文件
[root@wbk ~]# vim /etc/vsftpd/vsftpd.conf
guest_enable=YES
guest_username=vftp
user_config_dir=/etc/vsftpd/vusers_dir
allow_writeable_chroot=YES
//创建目录
[root@wbk ~]# mkdir /etc/vsftpd/vusers_dir
[root@wbk ~]# ll /etc/vsftpd/
总用量 36
-rw-------. 1 root root 125 3月 23 2017 ftpusers
-rw-------. 1 root root 361 3月 23 2017 user_list
-rw-------. 1 root root 5132 2月 18 17:09 vsftpd.conf
-rwxr--r--. 1 root root 338 3月 23 2017 vsftpd_conf_migrate.sh
-rw-------. 1 root root 12288 2月 18 17:00 vu.db
-rw-------. 1 root root 18 2月 18 16:55 vu.list
drwxr-xr-x. 2 root root 6 2月 18 17:11 vusers_dir
[root@wbk ~]#
//设置tom用户可上传文件、创建目录
[root@wbk ~]# vim /etc/vsftpd/vusers_dir/tom
non_upload_enable=YES
anon_mkdir_write_enable=YES
//设置jerry用户只有默认的下载权限
[root@wbk ~]# touch /etc/vsftpd/vusers_dir/jerry
//启动服务
[root@wbk ~]# systemctl start vsftpd
[root@wbk ~]# ss -antl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 50 *:139 *:*
LISTEN 0 128 *:22 *:*
LISTEN 0 100 127.0.0.1:25 *:*
LISTEN 0 50 *:445 *:*
LISTEN 0 50 :::139 :::*
LISTEN 0 32 :::21 :::*
LISTEN 0 128 :::22 :::*
LISTEN 0 100 ::1:25 :::*
LISTEN 0 50 :::445 :::*
[root@wbk ~]#
//tom用户有上传和新建目录
//jerry用户只有下载权限
创建本地用户ftp
[root@wbk ~]# useradd abc
[root@wbk ~]# passwd abc
更改用户 abc 的密码 。
新的 密码:
无效的密码: 密码是一个回文
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@wbk ~]#
//进入你创建的用户
[root@wbk ~]# lftp -u abc 192.168.189.131
口令:
lftp abc@192.168.189.131:~> ls
lftp abc@192.168.189.131:~> mkdir aa
mkdir 成功, 建立 `aa'
lftp abc@192.168.189.131:~> ls
drwxr-xr-x 2 1003 1003 6 Feb 19 00:56 aa
lftp abc@192.168.189.131:~>