Vsftpd的部署及管理
一.实验环境
ftp介绍
ftp:file transfer proto
互联中最老牌的文件传输协议
主机环境:
172.25.254.110
selinux关闭
dnf安装设定完成
安装lftp 、ftp协议文本浏览器
二.vsftpd安装及启用
172.25.254.110
dnf install vsftpd -y
dnf install lftp -y
关闭selinux
systemctl disable --now firewalld
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES 启动匿名用户的访问功能
systemctl restart vsftpd
测试安装发布:
firefox ftp://ip 此访问方式必须能列出资源才算访问成功
lftp ip 在使用完成后请输入退出lftp
客户访问:
三.vsftpd基本信息
vsftpd.service
配置目录: /etc/vsftpd
主配置文件: /etc/vsftpd/vsftpd.conf
默认发布目录: /var/ftp
报错信息:
550 程序本身拒绝
553 文件系统权限限制
500 权限过大
530 认证失败
四.匿名用户访问控制
当访问ftp服务时没有加入用户认证为匿名访问
lftp 172..25.254.110
lftp 172.25.254.110 -u westos
本地用户访问
匿名用户登陆控制
anonymous_enable=YES|NO
上传控制
上传失败
设定波尔权限
修改文件权限(不可为777 会报错误500 权限过大):
上传
目录建立控制
anon_mkdir_write_enable=YES|NO
下载控制
anon_world_readable_only=NO 匿名用户可以下载不能读的文件
删除命令控制
anon_other_write_enable=YES|NO
匿名用户上传文件权限设定
anon_umask=022 当设定chown_username之后上传文权限将不是用此参数设定
匿名用户上传文件的用户身份设定
此命令会覆盖匿名用户上传权限
chown_upload=YES
chown_username=westos
登陆数量控制
max_clients=2
上传速率控制
anon_max_rate=102400
五.本地用户访问控制
指定默认访问目录(/westos)
用户访问黑白名单
/etc/vsftpd/ftpusers 永久黑名单
/etc/vsftpd/user_list 默认黑名单
默认黑名单启用/禁用
启用白名单时,userlist为白名单用户列表
白名单启用
userlist_deny=NO
锁定家目录
chmod u-w /home/* 避免权限过大报错
vim /etc/vsftpd/vsftpd.conf
chroot_local_user=YES
锁定家目录用户黑白名单
白名单:
黑名单:
名单文件 /etc/vsftpd/chroot_list
六.虚拟用户访问
建立虚拟用户过程
vim /etc/vsftpd/authfile 认证文件模板
加密认证文件:
配置认证策略文件
vim /etc/pam.d/westos_auth
修改配置文件:
vim /etc/vsftpd/vsftpd.conf
pam_service_name=westos 指定认证策略文件
guest_enable=YES 指定虚拟用户功能开启
guest_username=ftp 指定虚拟用户在ftp服务器上的用户身份
测试:
虚拟用户家目录的独立设定
vim /etc/vsftpd/vsftpd.conf
local_root=/ftpuserdir/$USER
user_sub_token=$USER
用户独立配置
user_config_dir=/etc/vsftpd/westos#在此目录中与用户名称相同的文件为用户配置文件
mkdir /etc/vsftpd/westos
vim /etc/vsftpd/westos/user1
anon_upload_enable=YES