☛ 簡介

Linux 與 UNIX 系統常見的 FTP 伺服器為 ‘ vsftpd ( Very Secure FTPD ) ‘,翻譯成 ‘ 非常安全的 FTP 伺服器’,這也是它的主要目的,以安全性為出發點,但是並未犧牲了速度,相反的,它在傳輸與回應上都有很高的水準。 vsftpd 在商業網站使用上很受歡迎,如 Redhat、SuSE 的 FTP 站台都是使用 vsftpd 來建置的。

vsftpd 的功能特色:

① 支援虛擬主機。

② 可使用虛擬帳號 ( 消費者 )。

③ 支援 Linux 獨立服務與 inetd 總管服務。

④ 帳號個別設定。

⑤ 頻寬調整。

⑥ 支援 ipv6。

⑦ 支援 SSL 加密連線。

☛ 安裝必要套件

CentOS 的 RPM 套件集合中,已包含 vsftpd,版本是 2.2.2,套件名稱為 vsftpd,只要安裝此套件即可。 使用 rpm 指令檢查系統是否已安裝 vsftpd 套件:

[root@localhost ~ ]# rpm -qa|grep vsftpd
vsftpd-3.0.2-9.el7.x86_64

若沒出現上述 vsftpd 套件時,以 yum 指令安裝:

[root@localhost ~ ]# yum -y install vsftpd

☛ 套件安裝目錄與檔案

vsftpd 套件有幾個重要的目錄與檔案,針對伺服器管理工作有關的檔案與其功能,描述如下:

① /usr/sbin/vsftpd

vsftpd 服務的執行檔案,套件安裝完成後,會將其服務執行檔放在系統的執行檔目錄中,成為系統的服務之一,服務名稱為 vsftpd。

② /etc/vsftpd/

vsftpd 伺服器設定檔目錄,包括主設定檔 ( vsftpd.conf ) 與其他設定檔 ( user_list、ftpuser 等 )。

③ /etc/vsftpd/vsftpd.conf

vsftpd 的主設定檔,所有和檔案伺服器運作有關的設定值都放在這個文字檔中。 套件安裝完成後,系統在開機時並不會自動啟動 vsftpd 服務,因此,除啟動服務外,也要利用 chkconfig 設定系統開機時,自動啟動 vsftpd。

④ /var/ftp/

FTP 站台的根目錄,外部電腦使用 ftp 軟體登入伺服器後,預設的起始根目錄。

☛基本設定

使用 gedit 修改 /etc/vsftpd/vsftpd.conf,取消匿名登入,如下:

anonymous_enable=NO

☛ 設定防火牆與啟動測試 vsftpd

利用防火牆設定指令 firewall-cmd 加入允許 ftp 服務,並且使用 –permanent 寫入設定檔,,使其永久有效:

[root@localhost ~ ]# firewall-cmd --permanent --add-service=ftp
success
[root@localhost ~ ]# firewall-cmd reload

啟動 vsftpd 及設定開機自動啟動服務:

[root@localhost ~ ]# systemctl start vsftpd
[root@localhost ~ ]# systemctl enable vsftpd
ln -s '/usr/lib/systemd/system/vsftpd.service' '/etc/systemd/system/multi-user.target.wants/vsftpd.service'