什么是vsftpd
vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。
vsftpd 的名字代表”very secure FTP daemon”, 安全是它的开发者 Chris Evans 考虑的首要问题之一。在这个 FTP 服务器设计开发的最开始的时候,高安全性就是一个目标。
安装vsftpd
1、以管理员(root)身份执行以下命令
-
yum install vsftpd
2、设置开机启动vsftpd ftp服务
-
chkconfig vsftpd on
3、启动vsftpd服务
-
service vsftpd start
管理vsftpd相关命令:
停止vsftpd: service vsftpd stop
重启vsftpd: service vsftpd restart
配置防火墙
开放端口
#/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
#/sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT
#/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT
关闭端口 3306
iptables -A INPUT --dport 3306 -j DROP
iptables -A OUTPUT --dport 3306 -j DROP
然后保存:
#/etc/rc.d/init.d/iptables save
保存和关闭文件,重启防火墙
-
service iptables start
配置vsftpd服务器
默认的配置文件是/etc/vsftpd/vsftpd.conf,你可以用文本编辑器打开。
-
vi /etc/vsftpd/vsftpd.conf
添加ftp用户
如果我想给/www/web目录添加ftp,那么:
下面是添加ftpuser用户,设置根目录为/home/wwwroot/ftpuser,禁止此用户登录SSH的权限,并限制其访问其它目录。
1、修改/etc/vsftpd/vsftpd.conf
将底下三行
-
#chroot_list_enable=YES
-
# (default follows)
-
#chroot_list_file=/etc/vsftpd.chroot_list
改为
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list
禁止允许匿名用户登陆,YES是,NO否
anonymous_enable=NO
3、增加用户ftpuser,指向目录/home/wwwroot/ftpuser,禁止登录SSH权限
useradd -d /www/web -g ftp -s /sbin/nologin ftpusername
passwd ftpusername
然后设置密码,完成后就设置成功一个账户
5、编辑文件chroot_list:
vi /etc/vsftpd/chroot_list
ftpusername
将刚才新建的账户添加上,多个账户用回车隔开,也就是说,上面新建一个不能登录的系统账户,指向了/www/web目录
然后我们在这个文件里面把这个账户添加上就OK了
6、重新启动vsftpd
-
service vsftpd restart