☛ 简介

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'