一、安装和启动1.可用以下命令查询是否已安装:程序代码#rpm-qa|grepvsftpdvsftpd-2.0.5-10.e15如果出现以上结果,表明已安装。如果未安装,可在RedHatEnterpriseLinux5安装光盘(第二张光盘)中找到安装包,使用命令:程序代码#rpm-ivhvsftp-2.
一、安装和启动
1.可用以下命令查询是否已安装:
程序代码
#rpm -qa|grep vsftpd
vsftpd-2.0.5-10.e15
如果出现以上结果,表明已安装。如果未安装,可在Red Hat Enterprise Linux
5安装光盘(第二张光盘)中找到安装包,使用命令:
程序代码
#rpm -ivh vsftp-2.0.5-10.e15.i386.rpm
2.启动和关闭
启动命令为:
程序代码
#service vsftpd start
停止命令为:
程序代码
#service vsftpd stop
重启命令为:
程序代码
#service vsftpd restart
查询运行状态:
程序代码
#service vsftpd status
vsftpd (pid 3571) 正在进行……
二、Vsftpd服务器配置
Vsftpd的主配置文件有三个:
/etc/vsftpd/vsftpd.conf
/etc/vsftpd.ftpusers
/etc/vsftpd.user_list
修改前建议使用“cp”命令备份这三个文件,修改完成后需要重启vsftpd服务才能使设置生效。
(一)匿名用户访问配置
1.启动后FTP服务器就可以登陆了
匿名用户在text模式下,要用用户名ftp,密码也是ftp,来进行登陆;如果是用FTP工具来匿名登陆的话,用户名和密码都为:anonymous。默认情况下匿名用户可以访问和下载,但不能进行上传、删除、新建目录、执行文件等操作!
本地用户可以登陆,并可以离开自家目录至有权访问的其他目录,并在权限允许的情况下进行上传和下载,写在文件/etc/vsftpd.ftpusers中的本地用户禁止登录。
2.允许匿名用户上传文件
需要修改/etc/vsftpd/vsftpd.conf文件,把以下两项前的“#”去掉。
anon_upload_enable=YES
anon_mkdir_write_enable=YES
重启vsftpd服务。
3.仅允许匿名用户访问
指需要限制本地账号访问,修改/etc/vsftpd/vsftpd.conf文件,把以下两项前的“#”去掉。
local_enable=YES
write_enable=YES
重启vsftpd服务。
4.设置欢迎信息
修改/etc/vsftpd/vsftpd.conf文件
ftpd_banner=*****
*****即为设置的欢迎信息。
重启vsftpd服务。
5.设置最大传输率
修改/etc/vsftpd/vsftpd.conf文件
设置匿名用户的最大传输速率为20Kbps,应添加以下语句:
anon_max_rate=20000
设置本地账号的最大传输速率为1Mbps,应添加以下语句:
local_max_rate=1000000
6.设置服务器最大并发数和用户最大线程数
修改/etc/vsftpd/vsftpd.conf文件
设置服务器最大并发数为99,应添加以下语句:
max_clients=99
设置用户同一时段的最大连接数,应添加以下语句:
max_per_ip=5
7.禁止某些IP段的主机匿名访问服务器
修改vsftpd.conf文件,确认有如下语句:
tcp_wrappers=YES
修改/etc/hosts.allow文件,增加1行命令:
vsftpd:192.168.1.1:DENY
表示限制IP为192.168.1.1的主机访问FTP服务器。
重启vsftpd服务。
8.用ASCII方法传送数据
修改/etc/vsftpd/vsftpd.conf文件,
ascii_upload_enable=YES
ascii_download_enable=YES
重启vsftpd服务。
9.设置数据传输中断间隔时间
修改/etc/vsftpd/vsftpd.conf文件,
idle_session_timeout=600
表明空闲会话时间为600秒。
data_connection_timeout=120
表明数据连接超时时间为120秒。
重启vsftpd服务。
(二)本地用户访问配置
1.使用用户列表进行访问控制
修改/etc/vsftpd/vsftpd.conf文件,按以下语句设置:
userlist_enable=NO
表明vsftpd.ftpuser文件中的用户将被禁止访问FTP服务器。
userlist_enable=YES
userlist_deny=NO
表明仅允许vsftpd.user_list文件中的用户访问FTP服务器。
userlist_enable=YES
userlist_deny=YES
表明vsftpd.ftpuser和vsftpd.user_list文件中的用户都不能访问FTP服务器。
2.限制用户目录的访问权限
修改/etc/vsftpd/vsftpd.conf文件
chroot_local_user=YES
表明用户登录后不能访问自己目录以外的其它目录或文件。
3.修改默认端口
FTP服务器默认的端口是21,如需要修改端口,请修改/etc/vsftpd/vsftpd.conf文件,以下语句:
listen_port=4444
表明FTP服务器的端口号为4444,应该尽量大于4000
vsFTPd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。
vsftpd 的名字代表"very secure FTP daemon", 安全是它的开发者 Chris Evans
考虑的首要问题之一。在这个 FTP 服务器设计开发的最开始的时候,高安全性就是一个目标。
目前在开源操作系统中常用的FTPD套件主要还有ProFTPD、PureFTPd和wuftpd等
linux vsftpd 主要文件清单
/etc/sbin/vsftpd:服务文件。redhat 9.0为/etc/rc.d/init.d/vsftpd
/etc/vsftpd.conf:配置文件。redhat 9.0为/etc/vsftpd/vsftpd.conf
/etc/vsftpd.ftpusers:不能用于ftp登录的用户。
/var/ftp:默认的匿名用户(anonymous或ftp,无密码)登录的目录。
/etc/vsftpd.conf文件配置:
1、默认配置:
anonymous_enable=YES #允许匿名用户访问
local_enable=YES #允许本地用户访问
write_enable=YES #具有写权限
local_umask=022 #本地用户创建文件或目录的掩码
connect_from_port_20=YES #开启20端口
2、允许匿名用户具有写权限(上传/创建目录)
在默认配置下添加以下内容:
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_world_readable_Only=NO 允许匿名帐号写 另外还需具有所有权限的目录
3、屏蔽本地所有用户浏览其他目录的权限(除了家目录,匿名用户本身只能访问家目录)
在默认配置下添加以下内容:
chroot_local_user=YES
4、屏蔽部分本地用户浏览其他目录的权限
在默认配置下添加以下内容:
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
另外再创建文件/etc/vsftpd.chroot_list,并添加需要屏蔽的用户。
5、性能选项
idle_session_timeout=600
data_connection_timeout=120
local_max_rate=50000 #本地用户的最高速率
anon_max_rate=30000 #匿名用户的最高速率
修改/etc/passwd文件的用户家目录可以改变用户登录的目录
修改/etc/passwd文件的用户的登录shell为/sbin/nologin,则不能用于本地登录,可以用于ftp登录。
/etc/xinetd.d/vsftpd文件的主要内容:(“=”前后有空格)
only_from = 192.168.1.1|192.168.1.0/24 #只接收来至某ip或网段
no_access = 192.168.3.2|192.168.3.0/24 #拒绝接收来至某ip或网段
access_times = 8:00-17:00 #设置访问时间
instances = 200 #设置最大连接数
per_source = 5 #设置每个ip可有几个连接
针对不同ftp使用者限制不同下载速度
操作步骤
1.安装vsftp,并启用
2.编辑/etc/vsftpd/vsftpd.conf
use_config_dir=/etc/vsftpd/userconf
3.新增/etc/vsftpd/userconf
4./etc/vsftpd/userconf下增加test1
编辑test1
test1 local_max_rate=25000 (下载速度单位为字节 B)
5./etc/vsftpd/userconf下增加test2
编辑test2
test2 local_max_rate=30000
6.service vsftpd restart
vsftpd与Tcp_wrapper结合
1.编辑/etc/vsftpd/vsftpd.conf
tcp_wrapper=yes
2.编辑/etc/hosts.deny
vsftpd:192.168.0 10.0.0 192.168.1.3 :deny
ALL:ALL:ALLOW
3.效果 192.168.0段的和10.0.0网段 及192.168.1.3不能访问当前ftp服务器。其他地址的可以访问
将vsftpd并入xinetd 配置方法
1.编辑/etc/vsftpd/vsftpd.conf
listen=no
2.新增/etc/xinetd.d/vsftpd
service vsftpd
{
disable=no
socket_type=stream
wait=no
user=root
service=/usr/sbin/vsftpd
port=21
log_no_success+=PID HOST DURATION
log_no_failure+=HOST
}
3.service xinetd restart