通常情況下,向服務器上傳代碼、文件,vsftp用的還是比較多的。下面是本人安裝配置的過程。 linux系統:centos6.6. 安裝步驟 1.通過yum來安裝vsftpd
[root@localhost ~]# yum -y install vsftpd2.設置為開機啟動
[root@localhost ~]# chkconfig vsftpd on3.把下面幾行注釋去掉,讓其配置生效:
local_enable=YESwrite_enable=YESlocal_umask=022chroot_local_user=YES #這行可能需自己寫pam_service_name=vsftpduserlist_enable=YES4.配置保存后重啟vsftpd服務:
[root@localhost ~]# service vsftpd restart添加用戶及額外配置 1.設置vsftp的帳號。
[root@localhost ~]# useradd -d /home/htdocs -s /sbin/nologin 用戶名 2.為添加的賬號設置密碼
[root@localhost ~]# passwd 用戶名根據提示操作這樣的話,基本的vsftpd服務配置好了。但是這樣配置完成后客戶端并不能連接上,主要應該是默認防火墻設置下,CentOS的防火墻是不開放ftp服務的,需要添加模塊和開放21端口才能提供ftp訪問。 1.添加ip_conntrack_ftp 模塊
[root@localhost ~]# vi /etc/sysconfig/iptables-config添加下面一行
IPTABLES_MODULES="ip_conntrack_ftp"2.打開21端口
[root@localhost ~]# vi /etc/sysconfig/iptables添加
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT3.重啟iptables使新的規則生效
[root@localhost ~]# service iptables restart到此,應該是可以了,若軟件測試連接過程中,在用戶驗證的時候出現了錯誤503,應該是selinux設置的問題:可以用下面的命令檢查
[root@localhost ~]#getsebool -a |grep ftpallow_ftpd_anon_write --> offallow_ftpd_full_access --> offallow_ftpd_use_cifs --> offallow_ftpd_use_nfs --> offallow_tftp_anon_write --> offftp_home_dir --> offftpd_connect_db --> offftpd_disable_trans --> offftpd_is_daemon --> onhttpd_enable_ftp_server --> off這是selinux的問題,我們只要打開ftp_home_dir的值開啟為on:,allow_ftpd_full_access也一同開啟即可。
[root@localhost ~]#setsebool -P ftp_home_dir 1[root@localhost ~]#setsebool -P allow_ftpd_full_access 1到此,應該解決問題了。
原文點擊打開鏈接
執行該命令后,如果出現這樣的錯誤提示: useradd: warning: the home directory already exists. Not copying any file from skel directory into it. 這說明用戶的目錄已經存在(/var/www,這個可以是任何你設定的目錄),不可再新建此目錄,并非添加用戶失敗,可以忽略。
特別提醒:用useradd建立的用戶,如果后面不加–s /sbin/nologin參數,建立的用戶為普通系統用戶,有系統登陸centos服務器的權限,在虛擬主機環境下,這非常危險。所以要在useradd命令后面加上參數–s /sbin/nologin,為centos 服務器虛擬主機添加不可以登錄系統的ftp專用賬號(虛擬賬戶)
|
新聞熱點
疑難解答