####/etc/vsftpd/vsftpd.conf
#一般服务器系统设置项目:
max_clients=50    //最多允许50个客户端同时连接
max_per_ip=5     //每个ip最多可同时创建5个连接
use_localtime=YES    //使用本地时间
xferlog_enable=YES    //使用xferlog来记录用户上传和下载的记录,格式为wu-ftpd 类型的传输日志
#xferlog_file=/etc/log/xferlog    //该项为系统默认设置,可不添加 
#dual_log_enable=YES    
#vsftpd_log_file=/var/log/vsftpd.log    //日志文件
connect_from_port_20=YES    //开启从20端口进行数据传输
listen=YES    //当vsftpd以stand alone运行时,需要启动此项,若配置以super deamon方式运行,则设置成NO
#listen_port=21    //设置服务器的控制端口,该项为系统的默认设置
banner_file=/etc/vsftpd/welcome.txt    //设置用户登录服务器时的欢迎信息
pam_service_name=vsftpd    //若启用pam模块进行验证,则需要设置此项
tcp_wappers=YES    //启动tcp_wappers防火墙限制,主要与/etc/hosts.allow和/etc/hosts.deny有关
pasv_enable=YES    //启用服务器的被动式连接
pasv_min_port=64000    //被动式连接时服务器启动的端口范围的最小值
pasv_max_port=64100     //被动式连接时服务器启动的端口范围的最大值
##pam访问控制
相关文件:
----1./etc/pam.d/vsftpd :用于设置pam模块限制文件内的用户无法使用vsftpd,默认为/etc/vsftpd/ftpusers
----2./etc/vsftpd/ftpusers:此文件内的ftp账号不能登录vsftpd,默认将系统账号全部加入,一行一个账号
##vsftpd访问控制
相关文件:
----1./etc/vsftpd/user_list:是vsftpd自定义的阻挡访问项目。与pam功能相同。
该访问控制与vsftpd.conf的配置项有关,若要启动,则需要添加以下2设置项
userlist_enable=YES    //启用user_list来限制访问
userlist_deny=YES    //当设置成YES时,在user_list文件内的账号不能访问ftp;当设置成NO时,只允许user_list文件内的账号访问ftp.
##主目录控制
相关文件:
----1./etc/vsftpd/chroot_list:该文件默认不存在,需要自己创建。在此文件内账号会被限制在其主目录下,而不能到其他目录去。
要使此控制生效,与vsftpd.conf的配置有关,若要启动,则需添加以下设置项:
chroot_local_user=YES    //默认为NO.若要使实体用户全部被chroot,则需要启动此项。即将实体用户登录后目录限制在ftp的主目录
chroot_list_enable=YES    //启用chroot_list
chroot_list_file=/etc/vsftpd/chroot_list    //当chroot_local_user=YES时,在/etc/vsftpd/chroot_list中的账号不会被限制,可以切换到 
                                                              //系统的其他目录,当为默认即NO时,在此文件中的账号会被限制,不在的可切换到其他目录
匿名用户被chroot后,其主目录为ftp用户的主目录/var/ftp;而实体用户被chroot后,其主目录为/home/xxx/
##文件系统iptables限制
----1.加入iptables的ip_nat_ftp和ip_conntrack_ftp模块.用于在主动式连接中使防火墙能够分析目标是port21的连接信息,
        若接收到FTP服务器的主动连接,就能够将该数据包导向后方主机了。
vim /etc/sysconfig/iptables-config
IPTABLES_MODULES="ip_nat_ftp ip_conntrack_ftp"
----2.将端口20,21和在vsftpd.conf中设置的pasv连接的端口放行
IPTABLES -I INPUT -p TCP --dport 20:21 --sport 1024:65534 -j ACCEPT
PTABLES -I INPUT -p TCP --dport 65400:654100 --sport 1024:65534 -j ACCEPT

 

整理自:鸟哥的linux私房菜服务器篇