一:安裝vsftpdlinux
查看是否已經安裝vsftpdcentos
rpm -qa | grep vsftpd
若是沒有,就安裝,並設置開機啓動服務器
yum -y install vsftpd chkconfig vsftpd on
安裝時發現錯誤:tcp
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相關命令:ide
啓動vsftpd: service vsftpd starturl
中止vsftpd: service vsftpd stopspa
重啓vsftpd: service vsftpd restartrest
2、配置防火牆code
打開/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
3、配置vsftpd服務器
1.默認的配置文件是/etc/vsftpd/vsftpd.conf,你能夠用文本編輯器打開。
vi /etc/vsftpd/vsftpd.conf
下面是添加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
五、編輯文件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
解決方法:
在終端輸入命令:
就OK了!緣由:這是由於服務器開啓了selinux,這限制了FTP的登陸。