ubuntuftp服务器怎么搭建(ubuntu怎么安装软件)

ubuntuftp服务器怎么搭建(ubuntu怎么安装软件)

浏览次数:
信息来源: 用户投稿
更新日期: 2024-11-12 14:10:23
文章简介

在本文中,您将学习如何在UbuntuVPS上设置FTP服务器。我们将使用vsftpd服务器,它被广泛认为是类UNIX系统中最快和最安全的FTP服务器。 FTP,或文件传输协议,是一种使用TCP/IP

2025阿里云双十一服务器活动

在本文中,您将学习如何在UbuntuVPS上设置FTP服务器。我们将使用vsftpd服务器,它被广泛认为是类UNIX系统中最快和最安全的FTP服务器。

FTP,或文件传输协议,是一种使用TCP/IP协议通过Internet连接在计算机之间共享文件的方法。它还利用客户端-服务器框架和SSL/TLS安全性来确保安全可靠的数据传输。

这有点类似于HTTP(超文本传输协议)或SMTP(简单邮件传输协议)。不同之处在于,FTP负责通过Internet传输文件,而HTTP和SMTP分别处理网页和电子邮件的传输。在开始之前,请记住我们将指导您在Ubuntu?18.04上配置FTP服务器。因此,您需要确保您的VPS正在该特定操作系统上运行。

如何在Ubuntu上设置FTP服务器

本教程要求您知道如何通过SSH连接到服务器。如果您拥有Hostinger的VPS,登录详细信息可在hPanel的服务器选项卡中找到。

步骤1–安装vsftpd

  • 在继续安装vsftpd之前,我们必须获取软件包更新?。运行以下命令:

    等待所有过程完成,您将在更新完成后立即看到确认信息。

  • 完成后,使用以下命令安装vsftpd守护进程:

    sudoapt-get安装vsftpd

    系统将提示您一条确认消息,要求您键入Y并按Enter键以继续安装。

  • 安装完成后,您应该备份原始文件,以便您可以从空白配置文件开始:

    sudocp/etc/vsftpd.conf/etc/vsftpd.conf.original

    现在我们准备好配置防火墙了。

    第2步–允许来自防火墙的FTP流量

  • 为了允许UbuntuFTP服务器通过互联网进行通信,它需要通过防火墙。但让我们看看防火墙是否已经在您的机器上启用。只需运行此命令即可验证状态:

    这意味着没有安装防火墙。您可以通过键入以下内容来安装和启用它:

  • 如果它已经处于活动状态,您仍然需要确保允许FTP流量。为此,请一一执行以下命令:

    sudoufw允许40000:50000/tcp

    这一系列命令会打开几个端口:

  • 如果您仍然希望通过SSH访问您的服务器,则需要OpenSSH。有时,此选项默认启用。
  • 端口20和21用于FTP流量。
  • 端口40000:50000将保留用于最终将在配置文件中设置的被动端口范围。
  • 启用TLS时将使用端口990。
  • 现在让我们再看看状态:

    40000:50000/tcp允许任何地方

    OpenSSH(v6)允许任何地方(v6)

    20/tcp(v6)允许任何地方(v6)

    21/tcp(v6)允许任何地方(v6)

    990/tcp(v6)允许任何地方(v6)

    40000:50000/tcp(v6)允许任何地方(v6)

    第3步–创建用户目录

  • 设置防火墙后,我们必须创建要使用FTP访问的用户。这是怎么做的:

    请记住根据您自己的喜好更改用户名。

  • 然后,输入用户密码并填写所有必需的详细信息。

    理想情况下,出于安全目的,FTP应限制在一个特定的目录中。这就是vsftpd使用chrootjails的原因,它默认将本地用户限制在他们的主目录中。

    由于vsftpd的安全性,用户可能无法写入该目录。要解决此问题,我们不必从主文件夹中删除写入权限。相反,我们将创建一个充当chroot的ftp目录。它包含一个可写目录,负责保存所需的文件。

  • 使用以下命令创建FTP文件夹:

    sudomkdir/home/hostinger/ftp

    然后,使用以下方法设置所有权:

    sudochownnobody:nogroup/home/hostinger/ftp

    sudochmodaw/home/hostinger/ftp

    现在,使用以下命令来验证权限:

    sudols-la/home/hostinger/ftp

    dr-xr-xr-x2nobodynogroup4096Oct811:32。

    drwxr-xr-x3hostingerhostinger4096Oct811:32..

  • 接下来,我们将创建文件存放目录并分配所有权:

    sudomkdir/home/hostinger/ftp/文件

    sudochownhostinger:hostinger/home/hostinger/ftp/文件

    在目录中添加一个测试文件,稍后我们测试所有内容时将使用该文件:

    echo"vsftpd示例文件"|sudotee/home/hostinger/ftp/files/sample.txt

    ubuntuftp服务器怎么搭建,ubuntu怎么安装软件

    下一步是配置vsftpd和我们的FTP访问。在此示例中,我们将允许单个用户使用本地shell帐户进行连接。为此所需的两个关键配置已在配置(?vsftpd.conf?)文件中设置。

  • 使用nano命令打开vsftpd配置文件。

    须藤纳米/etc/vsftpd.conf

    验证内容是否具有与此类似的设置:

    ...#取消注释以允许本地用户登录。local_enable=YES。..

    在同一个文件中,我们将删除#(取消注释)并确保启用write_enable。

  • 您还需要取消注释chroot以确保FTP用户仅访问允许目录中的文件。也将NO值更改为YES。请记住,有两行是这样的,您必须取消对它们的注释。

    ...chroot_local_user=YES。..

  • 您还应该将一些新值添加到文件底部。第一个是local_root目录路径中的user_sub_token。它将允许配置与当前用户或随后添加的任何其他用户一起使用:

    user_sub_token=$USERlocal_root=/home/$USER/ftp

  • 为确保有大量连接可用,我们将限制配置文件的端口数:

    pasv_min_port=40000pasv_max_port=50000

  • 在本教程中,我们打算根据具体情况允许访问。因此,我们将配置设置为仅向您已明确添加到列表中的用户授予访问权限:

    userlist_enable=YESuserlist_file=/etc/vsftpd.userlistuserlist_deny=NO

    当您将userlist_deny标志设置为NO时,只允许指定的用户访问。完成后,依次单击CTRL+X和Y进行保存,然后按Enter确认文件更改。

  • 我们将创建一个用户列表并将用户添加到文件中:

    回声“主机”|sudotee-a/etc/vsftpd.userlist

    通过运行以下命令验证用户确实处于活动状态:

    cat/etc/vsftpd.userlist

    输出应为“hostinger”,如以下屏幕截图所示:

  • 使用以下命令重新启动守护程序以加载配置更改:

    sudosystemctl重新启动vsftpd

    第5步–使FTP安全

  • 默认情况下,FTP不加密数据,因此我们将使用SSL/TLS证书来保护数据传输。第一步是我们需要为UbuntuFTP服务器创建SSL证书。

    sudoopensslreq-x509-nodes-days365-newkeyrsa:2048-keyout/etc/ssl/private/vsftpd.pem-out/etc/ssl/private/vsftpd.pem

    –days标志使证书有效期为一年,我们在同一命令中包含了一个2048位RSA私钥。

  • 出现提示后,在提供的字段中输入相应的个人详细信息。
  • 完成创建证书后,再次打开配置文件:

    须藤纳米/etc/vsftpd.conf

    文件末尾应包含以rsa开头的两行。

    #rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem

    #rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

    现在,我们将配置文件指向我们刚刚创建的证书。在前面几行的正下方添加以下目录:

    rsa_cert_file=/etc/ssl/private/vsftpd.pem

    rsa_private_key_file=/etc/ssl/private/vsftpd.pem

  • 接下来,我们将启用SSL并确保只有拥有有效SSL的客户才能联系我们。只需输入这一行:

    然后,添加以下行以禁止通过SSL的任何匿名连接:

    force_local_data_ssl=YES

    force_local_logins_ssl=YES

    使用以下命令将服务器配置为使用TLS:

  • 现在我们将更改两个选项。禁用SSL重用以防止FTP客户端崩溃。其次,我们将使用高度加密的密码套件,确保密钥长度等于或大于128位。

    按CTRL+X后跟Y再次保存文件,然后按Enter。

  • 让我们再次重启vsftpd以应用新配置:

    sudosystemctl重新启动vsftpd

    做得好!您现在已经在UbuntuVPS上配置了FTP服务器以使用SSL/TLS协议。

    第6步–测试与FileZilla的连接

    如今,大多数FTP客户端都支持TLS加密配置。这是测试您的UbuntuFTP服务器是否正常工作的好方法。为了测试连接,我们将使用FileZillaFTP客户端。

  • 启动FileZilla并单击站点管理器图标。然后,在提示窗口中单击新建站点按钮以输入UbuntuFTP服务器详细信息。
  • 使用新创建的UbuntuFTP服务器信息填写所有必填列。由于我们将其配置为使用TLS,因此我们还可以选择UseexplicitFTPoverTLS选项。最终配置应如下所示:
  • 准备就绪后,单击“连接”,将出现要求输入FTP用户密码的屏幕。之后,点击OK。
  • 您需要在UbuntuVPS上验证FTP服务器的SSL证书。确认后,带有测试文件的根目录现在应该出现在您的屏幕上。
  • 就这样!现在,您可以执行从计算机到UbuntuFTP服务器的各种文件传输,反之亦然。

    拥有UbuntuFTP服务器可以让您轻松地在UbuntuVPS/服务器和计算机之间共享文件。得益于SSL/TLS安全性和TCP/IP协议,它是一种安全可靠的数据传输方法。

    标签:
    VPS主机加速方法之从软件上提升VPS速度(自己搭建的vps速度慢)
    « 上一篇
    国外服务器怎么搭建(怎么搭建内网服务器)
    下一篇 »

    如本文对您有帮助,就请抽根烟吧!