Ubuntu 安裝 vsftpd FTP詳細步驟
vsftpd 是一個對 UNIX 系統(tǒng)遵循 GPL 協(xié)議的 FTP 服務器,包括 Linux。它安全而且速度非常快。
本教程將告訴你如何在 Linux 系統(tǒng)中搭建自己的 FTP 服務器。
1. 安裝 vsftpd。
sudo apt-get install vsftpd
2. 替換配置文件。
用文本編輯器打開 vsftpd.conf 配置文件,一般在 /etc 目錄下。
[sudo joe /etc/vsftpd.conf
可以做如下修改:
把 anonymous_enable=YES
改成
anonymous_enable=NO
這將禁止用戶匿名訪問你的 FTP 服務器,除非你有非常好的理由允許匿名訪問。而且在做網(wǎng)絡安全方面,我建議不允許匿名訪問,尤其是你的 FTP 服務器位于 Internet 上時。
當然,設(shè)置了禁止匿名訪問后,你需要允許本地用戶登錄,修改如下:
把#local_enable=YES
改成
local_enable=YES
3. 添加一個 “fake” shell 腳本。
編輯 /etc/shells 文件,并添加一個不存在的 shell 名稱如 /bin/false。這個假 shell 將會限制 FTP 用戶訪問系統(tǒng)。
sudo joe /etc/shells
# /etc/shells: valid login shells /bin/sh /bin/bash /bin/false
/bin/false 是我們添加的一個不存在的 shell。就像紅帽子 Linux 系統(tǒng)上的一個特殊的設(shè)備 /dev/null 一樣。
4. 創(chuàng)建一個 FTP 用戶賬戶。
在 Linux 系統(tǒng)上的不存在的 shell 上創(chuàng)建嚴格的 FTP 用戶賬戶是非常重要的。在這種方式下,如果因為任何原因有人能成功脫離 FTP 的 chroot 環(huán)境,他都不會有可能去執(zhí)行任何用戶任務因為這個 shell 是不存在的。首先,創(chuàng)建新的用戶。
這個必須和沒有限制訪問的正常的用戶賬戶分開,因為 chroot 環(huán)境工作的方式。Chroot 是得它從用戶的角度出發(fā),似乎你已經(jīng)將它們防止在文件系統(tǒng)的頂層一樣。
使用下面的命令在 /etc/passwd 文件中創(chuàng)建用戶,在你每添加一個允許訪問你的 FTP 服務器的新的用戶時都必須執(zhí)行這一步。
sudo mkdir -p /home/ftp/ftpuser sudo useradd ftpuser -d /home/ftp/ftpuser/ -s /bin/false sudo passwd ftpuser
- mkdir 命令將在 /home 目錄下創(chuàng)建 ftp/ftpuser 目錄來處理所有的 FTP 用戶。
- useradd 命令將在你的 Linux 服務器上添加一個名為 ftpuser 新的用戶。
- 最后,passwd 命令將設(shè)置用戶 ftpuser 的密碼。
一旦你完成了這些,用下面的命令來重啟 vsftpd 服務:
sudo /etc/init.d/vsftpd restart
5. 在每個用戶的基礎(chǔ)上改寫用戶手冊中指定的配置項(可選)。
如果你想在每個用戶的基礎(chǔ)上改變 ftp 服務器的行為習慣,你應用知道 vsftpd 有一個強大的選項,允許你這么做。
如果你設(shè)置了 user_config_dir 為 /etc/vsftpd_user_conf 并且以 “chris” 用戶登錄,那么 vsftpd 在會話持續(xù)的時間內(nèi)將會在 /etc/vsftpd_user_conf/chris 文件中應用這些設(shè)置,文件的格式詳見用戶手冊!
請注意,并非是所有的設(shè)置都會對每個用戶生效,例如,許多設(shè)置只對之前的已經(jīng)啟動的用戶會話生效。這些不會影響每個用戶的任何行為的設(shè)置,包括 listen_address, banner_file, max_per_ip, max_clients, xferlog_file 等。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
FileZilla Server ftp 服務器下通過alias別名設(shè)置虛擬目錄(多個分區(qū))
這篇文章主要介紹了FileZilla Server ftp 服務器下通過alias別名設(shè)置虛擬目錄(多個分區(qū)共同一個賬號),需要的朋友可以參考下2016-09-09