下的ftpd_banner 选项的值:
banner_enable=Welcome to wnt FTP service.
即:用户连接服务器后显示信息“Welcome to wnt FTP service.”.
也可以设置如下的banner_file 选项的值:
banner_file=/var/vsftpd_banner_file
即:用户连接服务器后显示文件/var/vsftpd_banner_file 中的信息.
设置最大传输速率限制
例如下面的配置:
local_max_rate=50000
anon_max_rate=30000
将使本地用户的最大传输速率为50kbytes/sec,匿名用户的传输速率为30kbytes/sec.
5. 设置客户端连接时的端口范围
例如下面的配置:
pasv_min_port=50000
pasv_max_port=60000
将使客户端连接时的端口范围在50000 和60000 之间.这提高了系统的安全性.
配置基于本地用户的访问控制
要配置基于本地用户的访问控制,可以通过修改vsftpd 的主配置文件/etc/vsftpd.conf 来进行,有如下两种限制方法:
1. 限制指定的本地用户不能访问,而其他本地用户可访问
例如下面的设置:
userlist_enable=YES
userlist_deny=YES
userlist_file= /etc/vsftpd.user_list
使文件/etc/vsftpd.user_list 中指定的本地用户不能访问FTP 服务器,而其他本地用户可访问FTP服务器.
2. 限制指定的本地用户可以访问,而其他本地用户不可访问
例如下面的设置:
userlist_enable= YES
userlist_deny=NO
userlist_file= /etc/vsftpd.user_list
使文件/etc/vsftpd.user_list 中指定的本地用户可以访问FTP 服务器,而其他本地用户不可以访问FTP服务器.
在默认配置中,本地用户可以切换到自家目录以外的目录进行浏览,并在权限许可的范围内进行下载和上传.这样的设置对于一个FTP 服务器来说是不安全的.
如果希望用户登录后不能切换到自家目录以外的目录,则需要设置chroot 选项,涉及如:
chroot_local_user
chroot_list_enable
chroot_list_file
有两种设置chroot 的方法:
(1)设置所有的本地用户执行chroot
只要将chroot_local_user 的值设为YES 即可,即:
chroot_local_user=YES
(2)设置指定的用户执行chroot
需要如下的设置:
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file= /etc/vsftpd.chroot_list
这样,/etc/vsftpd.chroot_list 文件中指定的用户不能执行chroot.
构建基于虚拟用户的vsftpd服务器
1.建立虚拟FTP用户的帐号数据库文件
建立虚拟用户的账户名、密码列表
奇数行为帐号名
偶数行为上一行中帐号的密码
转化为Berkeley DB格式的数据文件
db_load 转换工具
需安装 db4-utils-4.3.29-9.fc6.i386.rpm 软件包
[root@filesvr ~]# vi /etc/vsftpd/vusers.list
mike
123
john
456
[root@filesvr ~]# cd /etc/vsftpd/
[root@filesvr vsftpd]# db_load -T -t hash -f vusers.list vusers.db
[root@filesvr vsftpd]# file vusers.db
vusers.db: Berkeley DB (Hash, version 8, native byte-order)
[root@filesvr vsftpd]# chown 600 /etc/vsftpd/vusers.*
2.创建FTP根目录及虚拟用户映射的系统用户
[root@filesvr ~]# mkdir /var/ftproot
[root@filesvr ~]# useradd -d / var/ftproot -s / sbin/nologin virtual
[root@filesvr ~]# chmod 755 /var/ftproot/
3.建立支持虚拟用户的PAM认证文件
[root@filesvr ~]# vi /etc/pam.d/vsftpd.vu
#%PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/vusers
account required pam_userdb.so db=/etc/vsftpd/vusers
4.在vsftpd.conf文件中添加支持配置
[root@filesvr ~]# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
anon_umask=022
guest_enable=YES
guest_username= |