如何通过 5 个步骤在 Ubuntu 上安装 FTP 服务器

如果您要设置 Linux 服务器,则需要 FTP 访问权限。 这意味着首先在 Linux 上安装 FTP 服务器。 这应该是您安装服务器操作系统后首先要做的事情之一。

许多 Linux 服务器运行 Ubuntu。 那么,让我们看看如何在 Ubuntu 服务器上设置 FTP 服务器。

什么是 FTP 服务器?

FTP 或文件传输协议是用于从服务器上传(放置)或下载(获取)文件的系统。 过去,在抓取文件或将图像上传到网络时,您可能在没有意识到的情况下使用过它。 或者您可能使用 FTP 客户端直接连接到 FTP 文件服务器。

为此,必须在托管文件的远程服务器上安装 FTP 服务器软件。

无论您是构建 Linux 家庭服务器、Web 服务器、游戏服务器,还是适合您项目的任何服务器,FTP 都是将数据从一个系统传输到另一个系统的最简单方法。

在 Ubuntu 上安装服务器

在 Ubuntu 上安装 FTP 服务器很简单。 可以说最好的解决方案是 vsftpd。 按照以下步骤使用 vsftpd 在 Ubuntu 上安装和配置 FTP 服务器。

1.安装vsftpd

你可能已经安装了 vsftpd。 要检查,请打开终端窗口并输入

sudo apt list --installed

您应该在列表底部附近找到 vsftpd。 如果没有,只需安装

sudo apt install vsftpd

安装后,就该配置 vsftpd 了。 首先复制原始配置文件。 这意味着如果出现任何问题,可以恢复默认配置。

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf_default

完成后,使用以下命令启动服务:

sudo systemctl start vsftpd

确认服务器正在运行:

sudo systemctl enable vsftpd

安装 vsftpd 后,您可以开始配置。

2.创建一个FTP用户

您需要的第一件事是 FTP 用户帐户。 有了它,您可以使用任何 FTP 客户端通过 vsftpd 访问服务器上托管的文件。 在终端中,输入:

sudo useradd –m username

(用您想要的用户名替换“用户名”。)

sudo password username

设置好用户名和密码后,在帐户的主文件夹中创建一个测试文件以确认它可以工作:

cd /home/username
sudo nano testfile.txt

当你第一次连接到你的 Ubuntu FTP 服务器时,你应该看到 testfile.txt。

3. 保护你的 Ubuntu FTP 服务器

但是,在设置连接之前,您需要确保 FTP 端口在 Ubuntu 中是打开的。 默认情况下,出于安全原因,这些在 ufw(简单防火墙)中是关闭的。

要启用通过端口 20 的访问,请使用

sudo ufw allow 20/tcp

如果您的发行版使用不同的防火墙或者您安装了替代防火墙,请查看文档以打开端口。

您还希望用户能够上传文件。 您可以在配置文件中进行设置。 打开它进行编辑:

sudo nano /etc/vsftpd.conf

找到 write_enabled 并取消注释该条目,确保它设置为“YES”:

write_enable=YES

Ctrl+X 退出,和 保存。

对于可公开访问的 FTP 服务器,您需要限制每个用户的访问权限。 使用 chroot,我们可以将每个用户限制在其主目录中。 在 vsftpd.conf 中,找到并取消注释此行(删除 #):

chroot_local_user=YES

再次, Ctrl+X 退出,和 保存。

对于多个用户,维护列表是一个更明智的选择。

首先,在文本编辑器中打开 vsftpd.chroot_list。

sudo nano /etc/ vsftpd.chroot_list

在这里,列出您希望限制在自己文件夹中的用户名。 Save 并退出,然后返回 vsftpd.conf 并确保 chroot_local_user=YES 未注释:

#chroot_local_user=YES

相反,取消注释

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd.chroot_list

它应该如下所示:

再次,保存并退出。 最后重启FTP服务:

sudo systemctl restart vsftpd.service

最后,使用 主机名 命令来检查你的 Ubuntu 服务器的名称。 然后,您可以使用它连接到 FTP 服务器。 如果您更喜欢使用 IP 地址,请输入 IP地址 命令并记下它。

4. 加密连接:FTP+SSL=FTPS

您还可以使用 SSL/TLS 强制加密进出 Ubuntu FTP 服务器的流量。

在 vsftpd.conf 文件中,查找对“SSL 加密连接”的引用并添加以下内容:

ssl_enable=YES
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

Save 并退出文件。 您现在可以在您的 FTP 客户端中指定 FTPS 作为连接协议。

5. 在 Ubuntu 上安装 FTP 客户端

从另一个系统,您可以使用命令行工具或桌面应用程序连接到您的 Ubuntu FTP 服务器。

在 Linux 上,您可以使用终端访问服务器

sudo ftp hostname

请务必将“主机名”替换为您的服务器的主机名。 您也可以使用 IP 地址

sudo ftp ipaddress

出现提示时,输入您之前设置的用户名和密码。 然后,您可以使用 get 和 put 命令来传输数据。

想要更直观的东西,或者从另一个操作系统访问 FTP 服务器? 您将需要一个 FTP 客户端,可以说最好的是 FileZilla。 这是一个开源解决方案,适用于 Windows(以及服务器)、macOS,并且有适用于 Linux 的 32 位和 64 位版本。 遗憾的是,没有适用于 Ubuntu 或其他 Linux 发行版的 FileZilla FTP 服务器。

下载: FileZilla (自由)

要使用 FileZilla 客户端连接到您的 Ubuntu FTP 服务器,请安装并启动该应用程序。 然后:

  1. 点击 文件 > 站点管理器
  2. 在这里,点击 新网站
  3. 在右侧窗格中,选择 FTP
  4. 如果您使用 FTPS,请选择 TLS 为了 加密.
  5. 接下来,输入主机名或IP地址 主持人 并添加 港口.
  6. 为了 登录类型 输入您的帐户凭据 用户密码.
  7. 点击 连接.

然后你就可以从你的 Ubuntu FTP 服务器上传和下载(放置和获取)数据了。 只需拖放您要移动的文件。

使用不同的 FTP 客户端? 这些步骤应该大致相同,但请查看应用程序的文档以获得说明。

你在 Ubuntu 上构建了一个 FTP 服务器

无论您使用的是桌面版还是服务器版的 Ubuntu 操作系统,它现在都运行 FTP 服务器。 这可以用于多种目的,从上传网页到提供对重要数据的轻松访问。 使用 FTP,您可以在需要时获取数据,而无需物理访问服务器机器。