| 
	网络环境: 
	一台Linux Server ip 192.168.1.254,一台Linux Client ip 192.168.1.100 
	操作系统:CentOS 6.5 
	需求描述: 
	1:禁止匿名用户登录2:修改FTP默认端口为2121
 3:禁锢本地用户在自己家目录
 4:本地用户登录到/data/ftproot目录
 5:up用户上传/下载,down用户仅下载。拒绝所有用户登录包括匿名用户
 6:最多20个并发,每IP地址最多2个并发,限制下载速度限制为100KB/s
 
	实施步骤: 
	1:安装vsftp程序 
	[root@server Packages]# rpm -ivh vsftpd-2.2.2-11.el6_4.1.i686.rpm 
	2:启动服务并设为开机启动 
	[root@server ~]# service vsftpd start 
	[root@server ~]# chkconfig vsftpd on 
	3:备份配置文件 
	[root@server ~]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak 
	4:编辑配置文件实现需求 
	[root@server ~]# mkdir /data/ftproot[root@server ~]# vim /etc/vsftpd/vsftpd.conf
 ...
 12 anonymous_enable=NO 禁止匿名访问
 ...
 120 listen_port=2121 改ftp端口
 121 chroot_local_user=yes 禁锢登录目录
 122 local_root=/data/ftproot 改登录目录为/data/ftproot
 123 userlist_deny=NO 白名单生效
 124 max_clients=20 最大并发客户端
 125 max_per_ip=2 每ip最大并发
 126 local_max_rate=100000 限制下载速度
 [root@server ~]# service vsftpd restart 重启服务
 
	5:编辑白名单实现账户访问控制 
	[root@server ~]# tail -2 /etc/vsftpd/user_list 
	up 
	down 
	6:在服务器端给up用户添加本地写权限 
	[root@server ~]# setfacl -m u:up:rwx /data/ftproot 
	7:客户端测试 
	(责任编辑:IT)[root@client ~]# ftp 192.168.1.254 2121
 Name (192.168.1.254:root): up 以up用户登录测试
 230 Login successful
 ftp> put install.log
 local: install.log remote: install.log
 227 Entering Passive Mode (192,168,1,254,247,195).
 150 Ok to send data.
 226 Transfer complete.
 38109 bytes sent in 0.0426 secs (894.56 Kbytes/sec)
 ftp> get install.log
 local: install.log remote: install.log
 227 Entering Passive Mode (192,168,1,254,20,170).
 150 Opening BINARY mode data connection for install.log (38109 bytes).
 226 Transfer complete.
 38109 bytes received in 0.00206 secs (18463.66 Kbytes/sec)
 Name (192.168.1.254:root): down 以down用户登录测试
 230 Login successful.
 ftp> !ls
 anaconda-ks.cfg  bootback.tar.gz  install.log  install.log.syslog  test  test.zip
 ftp> put bootback.tar.gz
 local: bootback.tar.gz remote: bootback.tar.gz
 227 Entering Passive Mode (192,168,1,254,44,97).
 553 Could not create file.
 ftp> get install.log
 local: install.log remote: install.log
 227 Entering Passive Mode (192,168,1,254,242,203).
 150 Opening BINARY mode data connection for install.log (38109 bytes).
 226 Transfer complete.
 38109 bytes received in 0.000302 secs (126188.74 Kbytes/sec)
 |