####本地用户访问相关设置
local_enable=YES # 允许本地用户访问
local_umask=022 # 本地用户上传的文件权限
chroot_list_enable=YES # 将用户限止在自己的主目录内
chroot_list_file=/etc/ftp/vsftpd.chroot_list # 限定不能更改目录的用户
userlist_enable=YES # 指定能登录的用户
userlist_deny=NO # 指定不能登录的用户
userlist_file=/etc/ftp/vsftpd.user_list # 指定能登录的用户
local_max_rate=10000 # 本地用户传输速度 10000 bytes/second
####匿名用户访问相关设置
anonymous_enable=NO # 匿名用户登录
anon_other_write_enable=NO # 匿名用户写入权限
anon_mkdir_write_enable=NO # 匿名用户建立目录权限
anon_upload_enable=NO # 匿名用户上传数据
deny_email_enable=YES # 限止某email address 用户使用匿名访问
banned_email_file=/etc/ftp/vsftpd.banned_emails # 禁止登录的email address
anon_max_rate=3000 # 匿名用户传输速度 3000 bytes/second
####虚拟用户访问相关设置
guest_enable=YES # 启用虚拟用户
guest_username=vsftp # 虚拟用户对应的系统用户名
user_config_dir=/etc/ftp/vsftpd_user_conf # 虚拟用户的个性配置文件目录
建立相关文件
[root@test root]# touch /etc/ftp/vsftpd.chroot_list # 此文件内的用户不能更改目录 每行一个用户名
[root@test root]# touch /etc/ftp/vsftpd.user_list # 只允许此文件内的列出的用户登录 每行一个用户名
[root@test root]# touch /etc/ftp/vsftpd.banned_emails # 此文件内的email 不能login 每行eamil地址
[root@test root]# touch /etc/pam.d/vsftpd
#%PAM-1.0
auth required /lib/security/pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
auth required /lib/security/pam_pwdb.so shadow nullok
auth required /lib/security/pam_shells.so
account required /lib/security/pam_pwdb.so
session required /lib/security/pam_pwdb.so
[root@test root]# vi /etc/xinetd.d/vsftpd
# default: on
# description:
# The vsftpd FTP server serves FTP connections. It uses
# normal, unencrypted usernames and passwords for authentication.
# vsftpd is designed to be secure.
service ftp
{
socket_type = stream
wait = no
user = root
server = /usr/local/sbin/vsftpd
# server_args =
# log_on_success = DURATION USERID
# log_on_failure = USERID
nice = 10
disable = yes # 关闭xinetd模式启动vsftpd
}
[root@test root]# vsftpd & # 启动ftp服务器
[root@test root]# echo "/usr/local/sbin/vsftpd &" >> /etc/rc.local # 开机自启动
6. 测试
建立测试用户
[root@test root]# useradd -p test1 test1
[root@test root]# useradd -p test2 test2
[root@test root]# useradd -p test3 test3
[root@test root]# more /etc/ftp/vsftpd.user_list # 更改/etc/ftp/vsftpd.user_list内容如下
test2 # 允许test2 、test3访问ftp服务器
test3