如何在 Ubuntu 22.04 Jammy Jellyfish Linux 上设置 SFTP 服务器如何在 Ubuntu 22.04 Jammy Jellyfish Linux 上设置 SFTP 服务器如何在 Ubuntu 22.04 Jammy Jellyfish Linux 上设置 SFTP 服务器如何在 Ubuntu 22.04 Jammy Jellyfish Linux 上设置 SFTP 服务器
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Ubuntu 22.04 Jammy Jellyfish Linux 上设置 SFTP 服务器

在本教程中,我们将向您展示如何在 Ubuntu 22.04 Jammy Jellyfish 上设置 SFTP 服务器。

FTP 是一种用于访问和传输文件的出色协议,但它具有作为明文协议的缺点。换句话说,通过互联网连接使用并不安全,因为您的凭据和数据在没有加密的情况下传输。 SFTP 中的“S”代表“安全”,通过 SSH 传输 FTP 协议,提供建立安全连接所需的加密。

在本教程中您将学习:

  • 如何安装和配置 SSH 守护进程

  • 如何设置 SFTP 用户帐户和组

  • 如何通过 GUI 连接到 SFTP 服务器

  • 如何通过命令行连接SFTP服务器

配置 SSH 守护进程

  1. SFTP 需要 SSH,因此如果您的系统上尚未安装 SSH 服务器,请通过打开命令行终端并执行以下命令来安装它:

    
    $ sudo apt update
    $ sudo apt install ssh
    
  2. 安装 SSH 后,我们需要对 SSHD 配置文件进行一些更改。使用 nano 或您最喜欢的文本编辑器以 root 权限打开它:

    
    $ sudo nano /etc/ssh/sshd_config
    
  3. 滚动到文件底部并在最后添加以下 5 行:

    
    Match group sftp
    ChrootDirectory /home
    X11Forwarding no
    AllowTcpForwarding no
    ForceCommand internal-sftp
    

    上面的行将允许 sftp 组中的用户通过 SFTP 访问其主目录,但拒绝他们正常的 SSH 访问,因此他们永远无法访问 shell。粘贴这些行后,保存并关闭配置文件。

  4. 执行以下命令以重新启动 SSH 服务以使这些新更改生效:

    
    $ sudo systemctl restart ssh
    

正确配置 SSH 后,我们可以继续为用户设置 SFTP 帐户。

创建SFTP用户帐户

现在我们需要为我们希望授予 SFTP 访问权限的任何人创建用户帐户。

  1. 创建一个名为 sftp 的新用户组。我们所有的 SFTP 用户都需要属于该组。

    
    $ sudo addgroup sftp
    
  2. 接下来,创建一个新用户。在此示例中,我们将简单地调用我们的 sftpuser,但您可以将其命名为任何您想要的名称。另请务必将此用户添加到我们刚刚创建的 sftp 组中。

    
    $ sudo useradd -m sftpuser -g sftp
    
  3. 为新创建的 sftpuser 设置密码。您需要输入两次新密码进行验证。

    
    $ sudo passwd sftpuser
    
  4. 最后,让我们授予用户对其主目录的完全访问权限,但拒绝系统上所有其他用户对该目录的访问权限:

    
    $ sudo chmod 700 /home/sftpuser/
    

我们的 SFTP 配置已完成,现在我们可以登录以确保一切正常工作。

使用命令行登录 SFTP

您可以使用系统的主机名或 IP 地址通过 SFTP 登录。要从与您刚刚配置 SFTP 相同的系统进行测试,连接到环回地址 127.0.0.1 就可以正常工作。

  1. 打开终端并使用 sftp 命令和 sftpuser 帐户(或您决定使用的任何名称)登录。您将需要输入我们在上一节中为此用户配置的密码。

    
    $ sftp sftpuser@127.0.0.1
    
  2. 导航到用户的主目录,因为这是它唯一拥有权限的位置。在这里,尝试创建一个新目录以确认一切都按预期工作:

    
    sftp> cd sftpuser
    sftp> mkdir sftp-test
    sftp> ls
    sftp-test          
    sftp>
    

使用 GUI 登录 SFTP

如果您更喜欢使用 GUI 应用程序连接到 SFTP 服务器,则有很多可用选项。您可以使用您喜欢的 SFTP 客户端或默认内置于 Ubuntu 22.04 中的客户端 – GNOME 上的 Nautilus 文件管理器。

  1. 从“应用程序”菜单中打开 Nautilus 文件管理器。

  2. 单击“其他位置”,然后在窗口底部的“连接到服务器”框中输入sftp://127.0.0.1,然后单击连接。

  3. 输入我们之前设置的 SFTP 帐户凭据,然后单击“连接”。

  4. 连接成功后,您将能够打开主目录并查看之前创建的测试目录。

结束语

在 SFTP 服务器文章中,我们了解了如何创建 SFTP 服务器并随后在 Ubuntu 22.04 Jammy Jellyfish Linux 上登录它。我们还介绍了如何使用命令行和 Ubuntu GUI 连接到 FTP 服务器。

在本文中,我们了解了如何通过在我们的系统上设置 SFTP 来保护 FTP 协议的安全。通过遵循本指南中的说明,本地网络或互联网上的计算机可以通过命令行或其首选 SFTP 客户端安全地访问您的系统以存储和检索文件。

©2015-2025 艾丽卡 support@alaica.com