CentOS 6.5 下快速搭建 ftp 站群服务器
1 、用 root 进入系统
2 、使用命令 rpm  -qa|grep vsftpd 检视系统是否安装了 ftp,若安装了 vsftp,使用这个命令会在萤幕上显示 vsftpd 的版本
3 、使用命令 rpm -e vsftpd 即可解除安装 ftp
4 、再使用 rpm  -qa|grep vsftpd 检视系统是否已删除 ftp,若删除成功,萤幕上显示 vsftpd 的版本
一:安装 vsftpd
检视是否已经安装 vsftpd
rpm -qa | grep vsftpd
如果没有,就安装,并设定开机启动
yum -y install vsftpd
chkconfig vsftpd on
安装时发现错误:
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os error was
14: PYCURL ERROR 6 – “Couldn’t resolve host ‘mirrorlist.centos.org’”
Error: Cannot find a valid baseurl for repo: base
是因为缺少 DNS,解决如下:到/etc 目录下配置 resolv.conf 加入 nameserver IP:
[root@localhost ~]# vi /etc/resolv.conf
#下面地址是福建电信 DNS
nameserver 218.85.157.99
管理 vsftpd 相关命令:
启动 vsftpd:  service vsftpd start
停止 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 站群服务器
1. 预设的配置档案是/etc/vsftpd/vsftpd.conf,你可以用文字编辑器开启。
vi /etc/vsftpd/vsftpd.conf
2. 新增 ftp 使用者
下面是新增 ftpuser 使用者,设定根目录为/home/wwwroot/ftpuser, 禁止此使用者登入 SSH 的许可权,并限制其访问其它目录。
#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
3. 增加使用者 ftpuser,指向目录/home/wwwroot/ftpuser, 禁止登入 SSH 许可权。
useradd -d /home/wwwroot/ftpuser -g ftp -s /sbin/nologin ftpuser
4. 设定使用者口令
passwd ftpuser
5 、编辑档案 chroot_list:
vi /etc/vsftpd/chroot_list
内容为 ftp 使用者名称, 每个使用者占一行, 如:
peter
john
6 、重新启动 vsftpd
service vsftpd restart
另外,如果觉得以后管理 ftp 使用者名称嫌麻烦,可以使用 centos 官方释出的指令码管理。地址如下:(未用过)
http://wiki.centos.org/HowTos/Chroot_Vsftpd_with_non-system_users
———————————-
出现的错误
1 、 500 OOPS: cannot change directory
解决方法:
在终端输入命令:
1.setsebool -P ftpd_disable_trans 1
2.service vsftpd restart
就 OK 了!
原因:这是因为站群服务器开启了 selinux,这限制了 FTP 的登入。