温馨提示×

Ubuntu SFTP如何权限设置

小樊
41
2025-03-23 05:41:18
栏目: 智能运维
Ubuntu服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Ubuntu系统中,SFTP(SSH File Transfer Protocol)的权限设置主要涉及到以下几个方面:

  1. 用户和用户组权限: 确保SFTP用户属于正确的用户组,通常情况下,SFTP用户应该属于sftp-users或类似的组。你可以使用以下命令将用户添加到相应的组:

    sudo usermod -a -G sftp-users username
    

    然后,确保/etc/ssh/sshd_config文件中的Subsystem sftp配置如下:

    Subsystem sftp /usr/lib/openssh/sftp-server
    
  2. 目录权限: 为了确保SFTP用户只能访问其主目录,你需要设置正确的目录权限。以下是一些建议的权限设置:

    • 根目录(例如/home/username):755权限,所有者为root。
    • 用户主目录(例如/home/username):755权限,所有者为SFTP用户。
    • 用户上传目录(例如/home/username/uploads):775权限,所有者为SFTP用户,用户组为sftp-users。

    使用以下命令设置权限:

    sudo chmod 755 /home/username
    sudo chown root:root /home/username
    sudo chmod 755 /home/username/uploads
    sudo chown username:sftp-users /home/username/uploads
    
  3. chroot环境: 如果你希望限制SFTP用户只能访问其主目录,可以使用chroot环境。要实现这一点,请按照以下步骤操作:

    • 编辑/etc/ssh/sshd_config文件,找到或添加以下配置:

      Match Group sftp-users
          ChrootDirectory %h
          ForceCommand internal-sftp
          AllowTcpForwarding no
          X11Forwarding no
      
    • 确保chroot目录(例如/home/username)的权限设置正确:

      sudo chmod 755 /home/username
      sudo chown root:root /home/username
      
    • 在chroot目录中创建一个子目录,用于存放用户的文件,例如uploads,并设置正确的权限:

      sudo mkdir /home/username/uploads
      sudo chown username:sftp-users /home/username/uploads
      
    • 重启SSH服务以应用更改:

      sudo systemctl restart ssh
      

按照以上步骤设置权限后,你应该能够成功配置Ubuntu系统上的SFTP权限。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:Ubuntu SFTP如何防止攻击

0