温馨提示×

Ubuntu SFTP如何跨平台使用

小樊
76
2025-04-02 07:31:12
栏目: 智能运维

SFTP(SSH File Transfer Protocol)是一种安全的文件传输协议,它通过SSH协议提供加密的文件传输服务。在Ubuntu上配置和使用SFTP可以实现跨平台的文件传输和管理。以下是在Ubuntu上配置SFTP服务器并在不同操作系统上使用SFTP客户端进行文件传输的步骤:

在Ubuntu上配置SFTP服务器

  1. 安装OpenSSH服务器
  • 在Ubuntu系统上,大多数情况下已经预装了OpenSSH服务器。如果没有,可以使用以下命令进行安装:

    sudo apt update
    sudo apt install openssh-server
    
  1. 配置SFTP服务器
  • 编辑SSH配置文件 /etc/ssh/sshd_config,确保以下配置项正确设置:

    Subsystem sftp /usr/lib/openssh/sftp-server
    Match Group sftp-users
      ChrootDirectory %h
      ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no
    

    这里,Match Group sftp-users 表示只允许属于 sftp-users 组的用户使用SFTP,chrootDirectory %h 将用户的根目录限制在他们的主目录下,ForceCommand internal-sftp 强制用户只能使用SFTP命令。

  1. 创建用户和目录
  • 创建一个新的用户组 sftp-users

    sudo groupadd sftp-users
    
  • 创建一个新用户并添加到 sftp-users 组:

    sudo useradd -m -G sftp-users -s /sbin/nologin user1
    
  • 设置用户密码:

    sudo passwd user1
    
  • 为用户创建主目录并设置权限:

    sudo mkdir -p /home/user1
    sudo chown user1:user1 /home/user1
    sudo chmod 755 /home/user1
    
  1. 重启SSH服务
  • 保存配置文件后,重启SSH服务使更改生效:

    sudo systemctl restart sshd
    

在不同操作系统上使用SFTP客户端

  1. 在Windows上使用FileZilla
  • 打开FileZilla,填写远程服务器地址、用户名和密码。
  • 选择协议为SFTP,端口默认为22,点击连接。
  • 输入用户名和密码后,即可连接到Ubuntu SFTP服务器。
  1. 在macOS和Linux上使用命令行
  • 打开终端。

  • 使用以下命令连接到SFTP服务器:

    sftp username@hostname
    

    连接成功后,你可以使用SFTP命令进行文件和目录操作,如 lscdgetput 等。

通过以上步骤,你可以在Ubuntu上配置SFTP服务器,并在Windows、macOS和Linux等操作系统上使用SFTP客户端进行安全的文件传输和管理。

0