怎樣搭建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 這個檔案(預設原始碼安裝的不會有這個檔案),因此除了匿名使用者外本地使用者無法登入。所以只要刪除了就可以了。


覺得有用的話走波關注唄,更多精彩內容等著你~