怎樣搭建ftp伺服器(如何搭建一個ftp伺服器)
環境配置:
使用者名稱密碼:ftp1/123456
系統:ubuntu14.04TLS
一、安裝
如果是ubuntu環境下的話,安裝是很簡單的,只需輸入如下命令:
#sudo apt-get install vsftpd
安裝完成後可以察看下服務狀態(其實安裝完成了就會提示已經在跑了)
#sudo service vsftpd status
二、新增使用者
#groupadd ftp #useradd -g ftp -d /home/ftp1 -m ftp1 d:指定家目錄 g:指定組 m:不存在目錄時自動建立家目錄 #sudo passwd ftp1 (123456) #usermod -s /sbin/nologin ftp1
三、修改配置檔案
1. /etc/vsftp.conf(主配置檔案)
2. /etc/vsftp.chroot_list(可訪問使用者列表)
3. /etc/pam.d/vsftpd(裡面有個選項需要修改,這個需要簡單配置一下,否則會出現“530 login incorrect”的錯誤)
下面開始逐個檔案說明:
1./etc/vsftpd.conf 裡面的註釋比較多,還很詳細,這裡就不一一列舉了,只寫上我修改的
anonymous_enable=NO(是否允許匿名登陸)
local_enable=YES(是否允許本地登陸)
write_enable=YES(設定FTP可寫)
//chroot (Change Root)
chroot_local_user=YES(設定成YES後,加入vsftpd.chroot_list中的使用者可以通過ftp訪問)
chroot_list_enable=YES(啟用下面這個vsftpd.chroot_list)
chroot_list_file=/etc/vsftpd.chroot_list(指定一下list,這是檔案預設的,但是並不存在,需要手動弄一下)
pam_service_name=vsftpd(這裡留個標記,在一定情況下會出現530的問題,留到後面錯誤去講)
listen_port=21(預設sftp可以登入,但是ftp不能登入;需要在vsftpd.conf加入ftp的預設埠)
我的配置引數
2./etc/vsftpd.chroot_list
將允許ftp登陸的使用者名稱放進來就行,一個一行
我的配置引數
四、重啟服務
# service vsftpd restart
五、測試連線
# ftp -v -n localhost
六、安裝客戶端
apt-get install lftp
七、碰到的問題
使用ftp 命令登陸的時候總是提示如下的錯誤
root@server:~# ftp localhost
Connected to localhost.
220 (vsFTPd 2.3.5)
Name (localhost:root): ubuntu
331 Please specify the password.
Password:
530 Login incorrect.
Login failed.
ftp> 221 Goodbye.
解決:
sudo apt-get remove vsftpd
sudo rm /etc/pam.d/vsftpd
sudo apt-get install vsftpd
因為ubuntu啟用了PAM,所在用到vsftp時需要用到 /etc/pam.d/vsftpd 這個檔案(預設原始碼安裝的不會有這個檔案),因此除了匿名使用者外本地使用者無法登入。所以只要刪除了就可以了。
覺得有用的話走波關注唄,更多精彩內容等著你~