一. FTP服务概述:
1,基本概述:
(1)ftp文件传输协议,是典型的C/S结构的应用层协议
(2)ftp的连接:
主动模式:服务器主动发起数据连接。
被动模式:服务器被动等待数据连接。
(3)tfp的用户类型
匿名用户 本地用户 虚拟用户
(4)ftp服务器软件:
(第三方):File Zilla Serner,Serv-U等
(系统):vsftpd,iis(ftp)
(5)客户端:
CuteFTP FlahFXP 等
2,配置文件:
(1) 用户列表文件:
ftpusers,禁止用户登录 相当于黑名单。
user_list,相当于黑白名单 有主配置文件决定。
- (2)
主配置文件:vsftpd.conf
配置行采用“配置项=参数”的格式
3,主配置文件常见的配置参数
匿名用户:
anonymousenable=YES 是否允许匿名访问
anonumask=022 设置匿名用户所上传文件的默认权限掩码值
anonroot=/var/ftp 设置匿名用户的FTP根目录(默认为/var/ftp/)
anonuploadenable=YES 是否允许匿名用户上传文件
anon mkdir write enable=YES 是否允许匿名用户有创建目录的写入权限
anonotherwriteenable=YES 是否允许匿名用户有其他写入权限,如对文件改名、覆盖及删文件等
本地用户:
localenable=YES 是否允许本地系统用户访问
localumask=022 设置本地用户所上传文件的默认权限掩码值
localroot=/var/ftp 设置本地用户的FTP 根目录(默认为用产的宿主目录)
chroot-local-user=YES 是否将FTP本地用户禁锢在宿主目录中
local-max-rate=0 限制本地用户的最大传输速率(0为无限制),单位为字节/秒(B/s)
全局配置:
listen=YES 是否以独立运行的方式监听服务
listen-address=0.0.0.0 设置监听FTP服务的IP地址
listenport=21 设置监听FTP服务的端口号
write-enable=YES启用任何形式的写入权限(如上传、删除文件等)都需要开启
此项
download-enable=YES 是否允许下载文件(建立仅限于浏览、上传的FTP服务器时可将其设为“NO")
dirmessage-enable=YES 用户切换进入目录时显示.message文件(如果存在)的内容
xferlog-enable=YES 启用 xferlog日志,默认记录到/var/log/xferlog
xfcrlog-std-format=YES 启用标准的 xferlog 日志格株式,若禁用此项,将使用 vsftpd 自己的日志格株式
connectfrom port20=YES 允许服务器主动模式(从20端口建立数据连接)
pasvenable=NO 禁止被动模式连接:默认允许被动模式连接
pasvmaxport=24600 设置用于被动模式的服务器最大端口号
pasvminport=24500 设置用于被动模式的服务器最小端口号
pamservicename=vsftpd 设置用于用户认证的 PAM 文件位置(/etc/pam.d/目录中对应的文
件名)
userlistenable=YES 是否启用userlist用户列表文件
userlistdeny=YES 是否禁止userlist 列表文件中的用户账号最多允许多少个客户端同时连接(0为无限制)
maxclients=0 对来自同一个IP 地址的客户端,最多允许多少个并发连接(0为无限制)
tcpwrappers=YES是否启用TCPWrappers主机访问控制
关于更多配置项,可以执行“man vsftpd.conf”查看相关帮助
实例:
安装:
设置权限:
二,匿名用户访问FTP,修改主配置文件
保存 退出,重启服务,关闭防火墙及SE Linux,(也可使用firewall-config或firewall-cmd进行过滤##过几天出关于防火墙详细的使用规则##)
验证::::
匿名用户登录成功。
二,基于本地用户验证:
修改主配:打开local-enable和write-enable两个配置项即可
重启服务
添加用户:
验证:
三,基于虚拟用户:
1 创建文本格式的用户名及密码:
奇数行:用户
偶数行:密码
2 创建Berkeley DB格式的数据库文件
创建virtual用户 不允许登录shell
3 添加虚拟用户支持,为虚拟用户建立PAM认证文件
4 编辑主配:
5 验证:
为不同的虚拟用户创建权限,将命令添加到主配中:
建立虚拟用户权限的文件夹:
权限为:
保存,退出
##较为匆忙,如有不妥之处敬请谅解##
来源:51CTO
作者:mb5d03556e89600
链接:https://blog.51cto.com/14400202/2435021