1. 程式人生 > >ubuntu下ftp伺服器的配置

ubuntu下ftp伺服器的配置

1、安裝vsftpd

sudo apt-get install vsftpd
# vsftp(Very Secure FTP)是一種在Unix/Linux中非常安全且快速穩定的FTP伺服器

安裝了之後會在/home/下建立一個ftp目錄(即使用者賬戶)。

這時候你可以試著訪問下ftp://IP地址。應該可以看到一個空白內容的ftp空間。

如果使用ftp://[email protected]則會開啟相應使用者的檔案。

這個賬戶預設擁有者是root,並是無群組的。一般使用者操作許可權是有限制的。

如果沒有生成這個使用者的話可以手動來,生成了就不用了:

sudo adduser ftp

sudo passwd ftp

有”ftp”帳戶後還要更改許可權

sudo chmod 777 /home/ftp

在這個目錄下我建立一個資料夾專門儲存需要共享的內容

2.配置檔案

通過sudo vim /etc/vsftpd.conf,取消某些行前面的註釋

local_enable=YES
write_enable=YES

3. 重啟ftp服務
/etc/init.d/vsftp restart

以上就可以使用ftp功能了。下面是對這個檔案的其他應用解釋。
anonymous_enable=yes (允許匿名登陸)
dirmessage_enable=yes (切換目錄時,顯示目錄下.message的內容)
local_umask=022 (FTP上本地的檔案許可權,預設是077)
connect_form_port_20=yes (啟用FTP資料埠的資料連線)*
xferlog_enable=yes (啟用上傳和下傳的日誌)
xferlog_std_format=yes (使用標準的日誌格式)
ftpd_banner=XXXXX (歡迎資訊)
pam_service_name=vsftpd (驗證方式)*
listen=yes (獨立的VSFTPD伺服器)*
功能:只能連線FTP伺服器,不能上傳和下傳
注:其中所有和日誌歡迎資訊相關連的都是可選項,打了星號的無論什麼帳戶都要新增,是屬於FTP的基本選項

開啟匿名FTP伺服器上傳許可權

在配置檔案中新增以下的資訊即可:

Anon_upload_enable=yes (開放上傳許可權)
Anon_mkdir_write_enable=yes (可建立目錄的同時可以在此目錄中上傳檔案)
Write_enable=yes (開放本地使用者寫的許可權)
Anon_other_write_enable=yes (匿名帳號可以有刪除的許可權)
開啟匿名伺服器下傳的許可權
Anon_world_readable_only=no
注:要注意資料夾的屬性,匿名帳戶是其它(other)使用者要開啟它的讀寫執行的許可權
(R)讀—–下傳 (W)寫—-上傳 (X)執行—-如果不開FTP的目錄都進不去
Local_enble=yes (本地帳戶能夠登陸)
Write_enable=no (本地帳戶登陸後無權刪除和修改檔案)
功能:可以用本地帳戶登陸vsftpd伺服器,有下載上傳的許可權
注:在禁止匿名登陸的資訊後匿名伺服器照樣可以登陸但不可以上傳下傳

使用者登陸限制進其它的目錄,只能進它的主目錄
設定所有的本地使用者都執行chroot

Chroot_local_user=yes (本地所有帳戶都只能在自家目錄)
設定指定使用者執行chroot
Chroot_list_enable=yes (檔案中的名單可以呼叫)
Chroot_list_file=/任意指定的路徑/vsftpd.chroot_list
注意:vsftpd.chroot_list 是沒有建立的需要自己新增,要想控制帳號就直接在檔案中加帳號即可

限制本地使用者訪問FTP
Userlist_enable=yes (用userlistlai 來限制使用者訪問)
Userlist_deny=no (名單中的人不允許訪問)
Userlist_file=/指定檔案存放的路徑/ (檔案放置的路徑)
注:開啟userlist_enable=yes匿名帳號不能登陸

安全選項
Idle_session_timeout=600(秒) (使用者會話空閒後10分鐘)
Data_connection_timeout=120(秒) (將資料連線空閒2分鐘斷)
Accept_timeout=60(秒) (將客戶端空閒1分鐘後斷)
Connect_timeout=60(秒) (中斷1分鐘後又重新連線)
Local_max_rate=50000(bite) (本地使用者傳輸率50K)
Anon_max_rate=30000(bite) (匿名使用者傳輸率30K)
Pasv_min_port=50000 (將客戶端的資料連線埠改在
Pasv_max_port=60000 50000—60000之間)
Max_clients=200 (FTP的最大連線數)
Max_per_ip=4 (每IP的最大連線數)
Listen_port=5555 (從5555埠進行資料連線)
檢視誰登陸了FTP,並殺死它的程序
ps –xf |grep ftp
kill 程序號