debian

Debian SFTP限制用户访问方法

小樊
44
2025-06-20 20:59:36
栏目: 智能运维

在Debian系统上,可以通过配置OpenSSH服务器来限制SFTP用户的访问权限。以下是几种常见的方法:

使用Chroot Jail

  1. 安装必要的软件包
sudo apt update
sudo apt install openssh-server
  1. 创建一个新的用户组(可选):
sudo groupadd sftpusers
  1. 添加用户并设置密码
sudo adduser sftpuser
sudo passwd sftpuser
  1. 创建用户的SFTP目录
sudo mkdir /home/sftpuser/uploads
sudo chown sftpuser:sftpusers /home/sftpuser/uploads
sudo chmod 755 /home/sftpuser/uploads
  1. 编辑SSH配置文件
sudo nano /etc/ssh/sshd_config

在文件末尾添加以下内容:

Match Group sftpusers
    ChrootDirectory /home/sftpuser
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no
  1. 重启SSH服务
sudo systemctl restart sshd

使用sshd_config的Match指令

  1. 编辑SSH配置文件
sudo nano /etc/ssh/sshd_config
  1. 添加或修改以下配置
Match Group sftpusers
    ChrootDirectory %h
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no
  1. 创建SFTP用户组
sudo groupadd sftpusers
  1. 添加用户并分配到SFTP组
sudo useradd -m -G sftpusers sftpuser
sudo passwd sftpuser
  1. 确保用户主目录权限设置正确
sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser
  1. 重启SSH服务
sudo systemctl restart sshd

通过以上配置,您可以成功限制Debian系统上的SFTP用户访问,使其只能访问指定的目录,并且无法进行SSH登录。

0
看了该问题的人还看了