vsftpd是Linux下比較著名的FTP服務器,搭建FTP服務器當然首選這個。
本文介紹了在CentOS 6.4下安裝vsftpd、配置虛擬用戶登錄FTP的過程。
正文:
一:安裝vsftpd
查看是否已經安裝vsftpd
1 2 3 4 |
|
二:基於虛擬用戶的配置
所謂虛擬用戶就是沒有使用真實的帳戶,只是通過映射到真實帳戶和設置權限的目的。虛擬用戶不能登錄CentOS系統。
修改配置文件
打開/etc/vsftpd/vsftpd.conf,做如下配置
1 2 3 4 5 6 7 8 9 10 11 12 |
|
首先,安裝Berkeley DB工具,很多人找不到db_load的問題就是沒有安裝這個包。
1 |
|
然后,創建用戶密碼文本/etc/vsftpd/vuser_passwd.txt ,注意奇行是用戶名,偶行是密碼
1 2 |
|
接着,生成虛擬用戶認證的db文件
1 |
|
隨后,編輯認證文件/etc/pam.d/vsftpd,全部注釋掉原來語句,再增加以下兩句:
1 2 |
|
最后,創建虛擬用戶配置文件
1 2 3 4 5 6 7 8 9 10 |
|
設置Selinux(如果你的selinux是開啟的話)
1 2 |
|
設置FTP根目錄權限
1 2 3 |
|
最新的vsftpd要求對主目錄不能有寫的權限所以ftp為755,主目錄下面的子目錄再設置777權限
設置防火牆
打開/etc/sysconfig/iptables
在“-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT”,下添加:
1 |
|
然后保存,並關閉該文件,在終端內運行下面的命令,刷新防火牆配置:
1 |
|
OK,運行“service vsftpd start”,你就可以訪問你的FTP服務器了。
配置PASV模式
vsftpd默認沒有開啟PASV模式,現在FTP只能通過PORT模式連接,要開啟PASV默認需要通過下面的配置
打開/etc/vsftpd/vsftpd.conf,在末尾添加
1 2 3 4 |
|
在防火牆配置內開啟40000到40080端口
1 |
|
重啟iptabls和vsftpd
1 2 |
|
現在可以使用PASV模式連接你的FTP服務器了~
常見錯誤:
問題一:
可我按照配置步驟走完一遍后發現每次都是
530 Login incorrect
找來找去才發現我把驗證用的vsftpd.vu創建在了etc的根目錄,而不是/etc/pam.d/vsftpd.vu
問題二:
修改了上面的問題,還是不能登錄,提示我:
500 OOPS:bad bool value in config file for:anon_world_readable_only
google了一把發現有人說是配置文件的末尾不能有空格,打開自己的配置文件一看,不止anon_world_readable_only這一行末尾,整個文件的末尾都有幾個空格。唉,復制粘貼網頁上的配置要謹慎啊。
問題三:
500 OOPS: vsftpd: cannot locate user specified in 'guest_username':aaA
這個問題很奇葩,最后發現是最后大小寫的問題,應該是‘aaa’
所以注意一下細節,安裝上面的步驟來是很簡單的
以上就是CentOS 下搭建FTP服務器的詳細內容,更多請關注php中文網其它相關文章!