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 的登入。