vsftpd做为FTP服务器,在Linux系统中是很是经常使用的。下面咱们介绍如何在centos系统上安装vsftp。linux
什么是vsftpdcentos
vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特色是小巧轻快,安全易用。安全
vsftpd 的名字表明”very secure FTP daemon”, 安全是它的开发者 Chris Evans 考虑的首要问题之一。在这个 FTP 服务器设计开发的最开始的时候,高安全性就是一个目标。服务器
安装vsftpdtcp
一、以管理员(root)身份执行如下命令编辑器
yum install vsftpd设计
二、设置开机启动vsftpd ftp服务rest
chkconfig vsftpd onip
三、启动vsftpd服务开发
service vsftpd start
管理vsftpd相关命令:
中止vsftpd: service vsftpd stop
重启vsftpd: service vsftpd restart
配置防火墙
打开/etc/sysconfig/iptables文件
vi /etc/sysconfig/iptables
在REJECT行以前添加以下代码
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
保存和关闭文件,重启防火墙
service iptables start
配置vsftpd服务器
默认的配置文件是/etc/vsftpd/vsftpd.conf,你能够用文本编辑器打开。
vi /etc/vsftpd/vsftpd.conf
添加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
三、增长用户ftpuser,指向目录/home/wwwroot/ftpuser,禁止登陆SSH权限。
useradd -d /home/wwwroot/ftpuser -g ftp -s /sbin/nologin ftpuser
四、设置用户口令
passwd ftpuser
五、编辑文件chroot_list:
vi /etc/vsftpd/chroot_list
内容为ftp用户名,每一个用户占一行,如:
peter
john
六、从新启动vsftpd
service vsftpd restart
另外,若是以为之后管理ftp用户名嫌麻烦,可使用centos官方发布的脚本管理。地址以下:
http://wiki.centos.org/HowTos/Chroot_Vsftpd_with_non-system_users
出现的错误
一、500 OOPS: cannot change directory
解决方法:
在终端输入命令:
setsebool -P ftpd_disable_trans 1
service vsftpd restart
就OK了!
缘由:这是由于服务器开启了selinux,这限制了FTP的登陆。