1.安装 vsftpd 包并启动服务
yum install vsftpd -y
systemctl start vsftpd
systemctl enable vsftpd
2.启用 vsftpd 服务
Firewall-config
3.firewall-cmd --list-all 查看防火墙状态
在/etc/sysconfig/selinux 中将getenforce=====> disable
4.FTP 服务器配置
配置文件为: /etc/vsftpd/vsftpd.conf
匿名用户在文件中的配置;(用户可登陆、上传文件或目录、创建文件,上传文件的最大速率、umask权限,文件删除权限)
5.本地用户设置
1.创建新用户tom, lr . 并设置密码
2.创建目录/datauser ,并任意建立两个文件
3.在文件/etc/vsftpd/vsftpd.conf 中添加指定的用户家目录/datauser
local_root=/datauser
4.使用lftp: lftp ip -u tom/lr
查看到指定家目录下的文件
6.目录/etc/vsftpd下,有文件;ftpuusers(永久拒绝其中添加的用户) all_list(临时拒绝文)
7. 在文件/etc/vsftpd/vsftpd.conf 中添加 userlist_deny=NO 后,重启服务, 所有用户将不能连接lftp
8.在7步骤之后,执行: vim user_list , 添加一个用户:tom,此用户又能连接lftp
9.chroot ===> chage root
1)修改文件vsftpd.conf
修改后用户仍然可以连接并能访问根目录
2)继续修改如下图:
10.圈定用户权限
0)修改文件
1)编写文件 /etc/vsftpd/chroot_list
文件中写入要圈定的用户:如tom
2)再使用lftp, tom用户便不能在访问根目录,只能在自己家目录中
11.创建并管理虚拟用户
1)在目录/etc/vsftpd下,创建文件users(自定义), 在其中写入用户名以及用户密码,格式如下:
2)设置加密:db_load -T -t hash -f users login.db
-T: 转换
-t : 指定加密方法
执行后得到login.db文件
3)修改文件vsftp.conf 如下图:用户必须为本地用户
4.编写文件/etc/pam.d/virtual 内容格式可参考文件/etc/pam.d/vfstpd
然后将文件中的:/etc/vsftp/vsftp.conf 中改pam_service_name=virtual,修改后user1,user2即可连接,并访问指定的家目录
12.实现用户分开管理
1)创建一个新目录:mkdir virtualusers
2)在此文件下创建两个目录:user1,user2
3)在user1下创建文件 fileuser1 在user2 创建文件fileuser2
4)修改文件/etv/vsftpd/vsftpd.conf:
添加以下信息:
重启服务后,链接user1,user2,显示成功,如下图:
13.修改文件:
1)/etc/vsftpd/vsftpd.conf中添加:user_config_dir=/etc/vsftpd/condir(前提注释掉对匿名用户的操作),重启服务
2)在目录virtualusers/user1,user2下建立目录pub,并修改权限
此时链接用户可以访问到家目录的文件及目录,但是不能作上传操作
3)执行:
cd /etc/vsftpd 创建一个目录
mkdir confdir
在confdir目录下执行:vim user1: anon_upload_enable=YES
然后再次链接user1,就可上传文件 user2没有作此操作,则不可以上传文件