软件介绍 安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两个重要特点。 在速度方面,使用ASCII代码的模式下载数据时,VSFTP的速度是Wu-FTP的两倍,如果Linux主机使用2.4.*的内核,在千兆以太网上的下载速度可达86MB/S。 在稳定方面,VSFTP就更加的出色,VSFTP在单机(非集群)上支持4000个以上的并发用户同时连接,根据Red Hat的Ftp服务器的数据,VSFTP服务器可以支持15000个并发用户。
FTP服务简单概述: FTP:File Transfer Protocol
基于C/S结构的文件传输协议 FTP会话属于复合TCP链接: 控制链接:TCP 21 端口,发送FTP命令信息 数据连接:TCP 20 端口,上传/下载数据 数据连接模式: 主动模式:服务端20端口 —>客户端 被动模式:服务端??端口 <—客户端 传输模式: 文本模式:ASCII模式,文本序列传输 二制进模式:Binary模式,二制进序列传输
FTP用户类型: 匿名用户:ftp或anonymous 本地用户:linux服务器本地的系统用户账号 虚拟用户:账号信息存放在独立的文件或数据库内
浏览及下载/上传: 常见网页浏览器(Firefox,IE等) 常见的下载工具(wget,crul等) 专用FTP管理工具(Filezilla,CuteFTP,WinSCP等)
开始部署VSFTP Very Secure FTP Daemon:非常安全的FTP守护程序 服务程序:/usr/sbin/vsftpd 服务脚本:/etc/init.d/vsftpd
1、安装软件包,启动服务,并设置开机启动
yum -y install vsftpd ftp
service vsftpd start
chkconfig vsftpd on
2、客户端连接vsftpd,并下载文件
Windows命令行访问如图:
wget ftp://192.168.4.5/pub/passwd //wget直接下载
Vsftpd主要配置文件如下: /etc/vsftpd/vsftpd.conf //主配置文件 /etc/vsftpd/ftpusers //黑名单 /etc/vsftpd/user_list //黑、白名单 注意:设置白名单后,仅在白名单中的人可以访问FTP,其他任何人无法访问FTP。
1、主配置文件说明:
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES //是否开启匿名共享 local_enable=YES //是否开启本地账户共享,默认共享自己家目录 write_enable=YES //是否可写
local_umask=022 //本地用户上传的权限掩码,一般不建议动 anon_upload_enable=YES //匿名是否可写 anon_mkdir_write_enable=YES //匿名可创建目录 anon_other_write_enable=YES //匿名删除, 重命名 anon_root=/adb //定义匿名用户根目录,默认/var/ftp Local_root= //定义本地账户根目录,不建议定义 chroot_local_user=YES //禁锢本地账户 listen=YES //监听端口
userlist_enable=YES //是否开启user_list文件
userlist_deny=NO //设置userlist为白名单
userlist_deny=YES //设置userlist为黑名单
实验1:(本地账户访问) 仅修改anonymous_enable=NO //关闭匿名共享
useradd tom && passwd tom //创建用户并设置密码
service vsftpd restart //重启服务
没有开启禁锢本地账户,通过浏览器访问将会看到/目录下的所有文件禁锢本地账户 所以一定要开启禁锢本地账户chroot_local_user=YES。 本地账户,默认共享自己的家目录。
实验2、本地账户设置
vim /etc/vsftpd/user_list
userlist_enable=YES //开启user_list文件
userlist_deny=NO //设置userlist为白名单
vim /etc/vsftpd/ftpusers
.. tom //添加tom账户到黑名单
vim /etc/vsftpd/user_list
.. tom /添加tom账户到白名单
提示:黑白名单同时开启时,黑名单下的账户优先生效。
实验3、FTP性能设置 max_clients=: //限制并发客户端的个数 max_per_ip=: //限制每个客户机ip的并发连接数 anon_max_rate=: //匿名用户最大速率(字节/秒) local_max_rate=: //本地用户最大速率(字节/秒)
小提示:1024字节/秒=1KB,1024KB/秒=1M)
提示:如果默认/etc/vsftpd/vsftpd.conf配置文件中没有的选项参数, 可以通过man vsftpd.conf获得