共计 4465 个字符,预计需要花费 12 分钟才能阅读完成。
本教程介绍如何在 Ubuntu 系统上安装和配置众所周知的、安全的 VsFTPD(非常安全的文件传输协议守护程序)服务器。FTP 或文件传输协议是一种常见的网络协议,用于在两台计算机之间传输文件或将文件从桌面传输到您的网站或 web 托管服务器。这些文件可以根据用户在 FTP 服务器上拥有的权限进行上传和下载。
让我们一步一步地介绍如何在 Ubuntu 18.04 LTS 系统上安装和设置 FTP 服务器。这是使用 FTP 的最基本方法,一旦熟悉了它,就可以转到更复杂的操作。因为我们在教程中使用 Ubuntu 命令行,所以您可以通过系统 Dash 或 Ctrl+alt+ T 快捷方式打开它。
FTP 服务器安装
在这个过程中,我们将在我们的 Ubuntu 系统上安装非常安全的 FTP 守护进程 vsftpd。VsFTPD 实用程序比本机 FTP 更强大和安全。
第 1 步: 安装 VsFTPD
为了通过我们的终端安装 VsFTPD 包,让我们首先通过以下命令更新我们的存储库:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ sudo apt-get update
现在是时候通过以下命令以 root 身份为 VsFTPD 安装最新的二进制包:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ sudo apt-get install vsftpd
系统将要求您提供用户凭证,并可能为您提供 Y / n 选项以继续安装过程。请输入 Y 继续。
安装完成后,您可以通过检查安装的 VsFTPD 包的版本号来验证它:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ vsftpd -verions
vsftpd: version 3.0.3
以上输出显示版本号,并验证系统上是否已安装 VsFTPD。
第 2 步:启动 VsFTPD 服务
安装 VsFTPD 时,默认情况下禁用该服务。让我们通过以下命令启动服务:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ systemctl start vsftpd
您将被要求提供用户身份验证,如上所述。输入您的密码,然后单击“验证”按钮。然后将启动该服务。
您还可以通过以下命令启用在引导时自动启动的服务:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ systemctl enable vsftpd
Synchronizing state of vsftpd.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable vsftpd
出于各种目的,系统会要求您多次提供用户身份验证。输入您的密码,然后单击“验证”按钮。
VsFTPD 配置
安装完成后,现在让我们在 Ubuntu 系统上设置和配置 FTP。
步骤 1:如果启用了防火墙,则打开端口 20 和 21
您可以通过以下命令检查防火墙的状态:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ sudo ufw status
[sudo] linuxidc 的密码:
状态:不活动
检查防火墙状态
如果启用了防火墙并且状态为活动状态,则可以通过以下命令打开端口 20 和 21:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ sudo ufw allow 20/tcp
防火墙规则已更新
规则已更新 (v6)
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ sudo ufw allow 21/tcp
防火墙规则已更新
规则已更新(v6)
现在再次查看防火墙的状态,您将看到这两个端口打开并允许:
检查防火墙状态
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ sudo ufw status
状态:激活
至 动作 来自
– — —
20/tcp ALLOW Anywhere
21/tcp ALLOW Anywhere
20/tcp (v6) ALLOW Anywhere (v6)
21/tcp (v6) ALLOW Anywhere (v6)
步骤 2:配置 vsftpd.conf 文件并启用 SSL/TLS
配置 FTP 的最重要步骤是在 vsftpd 配置文件中进行一些更改。但在对此重要文件进行任何更改之前,让我们通过以下命令对其进行备份:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig
现在,在您喜欢的文本编辑器中打开配置文件。我们使用 nano 编辑器编辑此文件:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ sudo nano /etc/vsftpd.conf
要进行最基本的 FTP 配置,请复制以下文件到 vsftpd.conf 末尾进行设置:
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
pasv_enable=Yes
pasv_min_port=10000
pasv_max_port=11000
user_sub_token=$USER
local_root=/home/linuxmi/ftp
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
按 Ctrl + X 退出并保存文件,然后按 Enter 键。
接下来,您还需要将 vsftp 用户添加到 /etc/vsftpd.userlist 文件以允许 FTP 访问:
sudo nano /etc/vsftpd.userlist
添加以下行:
linuxidc@linuxidc:~$ sudo nano /etc/vsftpd.userlist
保存并关闭该文件
第 3 步:重新启动 VsFTPD 服务
更改 vsftpd.conf 文件后,需要重新启动 VsFTPD 服务才能使这些更改生效。以 root 身份输入以下命令以重新启动服务:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ sudo systemctl restart vsftpd
第 4 步:创建 FTP 用户
现在让我们通过以下命令创建一个能够使用 FTP 服务器的 FTP 用户:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ sudo useradd -m linuxmi
通过以下命令为该用户分配密码:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ sudo passwd linuxmi
输入新的 UNIX 密码:
重新输入新的 UNIX 密码:
passwd:已成功更新密码
在此示例中,我们使用 linuxmi 的名称创建了一个用户并为其分配了密码:
接下来,使用以下命令创建 ftp 目录并设置所有权:
linuxidc@linuxidc:~$ sudo mkdir /home/linuxmi/ftp
linuxidc@linuxidc:~$ sudo chown nobody:nogroup /home/linuxmi/ftp
linuxidc@linuxidc:~$ sudo chmod a-w /home/linuxmi/ftp
接下来,创建一个可以上载文件的目录,并为 vsftp 用户提供所有权:
linuxidc@linuxidc:~$ sudo mkdir /home/linuxmi/ftp/test
linuxidc@linuxidc:~$ sudo chown linuxmi:linuxmi /home/linuxmi/ftp/test
让我们也在新用户的主目录中创建一个示例文件。我们在测试 FTP 连接时将使用此文件:
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ sudo sh -c ‘echo “Linux 公社 www.linuxidc.com 的测试文件 ” >/home/linuxmi/ftp/www.linuxidc.com.txt’
测试 FTP 连接
最后,让我们测试一下我们的 FTP 连接。我正在 localhost 上测试这个连接。您可以使用可用的 FTP 服务器来测试您的连接。
测试 FTP 连接
linuxidc@linuxidc:~/ 桌面 /www.linuxidc.com$ ftp localhost
Connected to localhost.
220 (vsFTPd 3.0.3)
Name (localhost:linuxidc): linuxmi
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
drwxr-xr-x 2 1001 1001 4096 Oct 20 20:22 test
-rw-r–r– 1 0 0 43 Oct 20 21:06 www.linuxidc.com.txt
226 Directory send OK.
ftp>
在这里,您需要提供您创建的用户的用户名和密码才能访问 FTP 服务器。
成功登录后,可以通过 ls 命令列出可用文件。在下图中,您可以看到我们在示例用户的主目录中创建的示例文件。
现在,打开 Web 浏览器并输入 URL ftp://localhost/,系统将要求您输入用户名和密码以访问 FTP。输入您的 vsftp 用户名和密码,然后单击“确定”按钮。您应该看到以下页面:
在浏览器中使用 FTP
您也可以从这里轻松访问可用文件。
OK,我们介绍了在 Ubuntu 系统上安装和配置 FTP 服务器的最简单,最基本的过程。通过执行上述步骤,您可以访问 FTP 服务器并从那里上载 / 下载文件。
更多 Ubuntu 相关信息见Ubuntu 专题页面 https://www.linuxidc.com/topicnews.aspx?tid=2
: