如何在 Linux 中创建 SFTP 用户进行安全文件传输如何在 Linux 中创建 SFTP 用户进行安全文件传输如何在 Linux 中创建 SFTP 用户进行安全文件传输如何在 Linux 中创建 SFTP 用户进行安全文件传输
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

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

如何在 Linux 中创建 SFTP 用户进行安全文件传输

要在 Linux 中创建 SFTP 用户,您可以遵循系统方法,确保用户的访问权限受到限制,同时能够安全地传输文件。

本指南将提供在 Linux 系统上设置仅限 SFTP 用户的详细步骤,重点以 Ubuntu 作为主要示例,但这些原则广泛适用于其他 Linux 发行版以及。

SFTP概述

SFTP (SSH 文件传输协议) 是文件传输协议 (FTP) 的安全版本,它使用< SSH(Secure Shell)对通过网络传输的数据进行加密,通常用于在客户端和服务器之间安全地传输文件。

创建新的 SFTP 用户

首先,您需要创建一个新的sftp用户帐户,该帐户将用于登录并使用SFTP传输文件。

sudo adduser sftpuser

创建 SFTP 目录

接下来,您需要创建一个目录,SFTP用户可以在其中上传和下载文件,该目录将是他们用于SFTP用途的主目录。

sudo mkdir -p /home/sftpuser/uploads

为了保证安全,请为目录设置正确的权限。用户应该只能访问自己的目录,而不能导航到系统的其他部分。

sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser

然后,更改上传目录的所有权:

sudo chown sftpuser:sftpuser /home/sftpuser/uploads

为 SFTP 配置 SSH

您需要编辑 SSH 服务器配置文件来配置 SSH,以允许新用户使用 SFTP。

sudo nano /etc/ssh/sshd_config

在文件末尾添加以下行以配置 SFTP 访问:

Match User sftpuser
    ChrootDirectory /home/sftpuser
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

以下是每行的作用:

  • 匹配用户 sftpuser 仅将这些设置应用于 sftpuser。
  • ChrootDirectory /home/sftpuser 限制用户对 /home/sftpuser 的访问。
  • ForceCommand internal-sftp 强制用户仅使用 SFTP,不允许 SSH shell 访问。
  • AllowTcpForwarding no 和 X11Forwarding no 是附加安全措施,可防止用户使用其他 SSH 功能。

保存更改后,重新启动 SSH 服务以应用更改。

sudo systemctl restart ssh

测试SFTP用户

您现在可以使用 SFTP 客户端或命令行连接到您的服务器来测试与 SFTP 服务器的连接。

sftp sftpuser@your_server_ip

连接后,您可以使用 SFTP 命令导航和管理上传目录中的文件。

例如,使用 ls 命令列出文件并使用 put 上传文件。

sftp> ls
sftp> cd uploads
sftp> get remotefile.txt
sftp> put lists.txt

结论

在 Linux 中创建 SFTP 用户是一个简单的过程,可以增强安全性和文件管理功能。通过执行以下步骤,您可以设置专用用户进行 SFTP 访问,确保文件传输安全并仅限于适当的目录。

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