Ubuntu下搭建FTP服務器

Ubuntu 12.04下安裝FTP軟件當然選擇大名鼎鼎的vsftpd(very secure FTP daemon), Ubuntu裝vsftpd很簡單,一句命令就行:

sudo apt-get install vsftpd


命令執行過程中,安裝程序會給本地創建一個名爲“ftp”的用戶組,命令執行完之後會自動啓動FTP服務。

可以使用“netstat -tl”命令檢查FTP端口有沒有已經打開,或者直接在瀏覽器裏輸入“ftp://你的服務器IP”(新安裝的vsftpd默認是可以匿名不需要密碼直接訪問),如果能直接連接到FTP服務器,則安裝vsftpd算是大功告成。


開啓、停止、重啓vsftpd服務也很簡單:

service vsftpd start/stop/restart


新安裝的vsftpd默認是可以匿名訪問,如果只想給某一個用戶專門訪問某一目錄下的權限,則需要修改vsftpd的配置了。

首先,創建一個專門用來訪問的用戶,例如叫“test”:

mkdir -p /home/test
sudo useradd -g ftp -d /home/test -M test

PS: 刪除用戶用以下命令:

sudo userdel test 


設置密碼:

passwd test

修改vsftpd的配置文件“vi /etc/vsftpd.conf”:

#禁止匿名訪問
anonymous_enable=NO
#接受本地用戶
local_enable=YES
#可以上傳
write_enable=YES
local_umask=022
#啓用在chroot_list_file的用戶只能訪問根目錄
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list


在/etc/vsftpd.chroot_list添加受訪問目錄限制的用戶:

echo "test" >> /etc/vsftpd.chroot_list

啓用了chroot的話,根目錄要設置爲不可寫,這是vsftp的保護機制。

chmod a-w /home/test

那麼用戶登陸FTP就可以訪問到test下的東西,但是沒法去上傳文件。如果把test文件夾設置成777權限,那麼FTP就登陸不上去。

所以解決辦法是。在test文件夾下再創建一個文件夾“/home/test/wwwroot”,將wwwroot設置成777就可以了,那麼以後上傳東西就上傳到wwwroot裏。

OK,重啓vsftpd之後就可以使用上面新創建的賬號訪問。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章