linux

Linux SFTP如何管理多个用户

小樊
48
2025-05-14 08:13:04
栏目: 智能运维

在Linux系统中,使用SFTP(SSH File Transfer Protocol)管理多个用户可以通过以下步骤实现:

  1. 安装OpenSSH服务器: 确保你的Linux系统已经安装了OpenSSH服务器。如果没有,请使用以下命令安装:

对于基于Debian的系统(如Ubuntu):

sudo apt-get update
sudo apt-get install openssh-server

对于基于RPM的系统(如CentOS、Fedora):

sudo yum update
sudo yum install openssh-server
  1. 创建新用户: 使用adduser命令创建新用户。例如,创建一个名为sftp_user1的用户:
sudo adduser sftp_user1

按照提示设置密码和其他信息。

  1. 限制用户访问: 编辑/etc/ssh/sshd_config文件,找到或添加以下内容:
Match Group sftp_users
    ChrootDirectory %h
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

这将限制sftp_users组的用户只能使用SFTP访问,并将其根目录限制在其主目录中。

  1. 创建一个新组并添加用户: 创建一个名为sftp_users的新组,并将新创建的用户添加到该组:
sudo groupadd sftp_users
sudo usermod -aG sftp_users sftp_user1
  1. 设置用户主目录权限: 确保用户主目录的权限设置正确,以便用户只能访问其主目录。使用以下命令更改主目录的所有者和权限:
sudo chown root:root /home/sftp_user1
sudo chmod 755 /home/sftp_user1
  1. 重启SSH服务: 保存并关闭sshd_config文件后,重启SSH服务以应用更改:

对于基于Debian的系统(如Ubuntu):

sudo systemctl restart ssh

对于基于RPM的系统(如CentOS、Fedora):

sudo systemctl restart sshd

现在,你可以使用SFTP客户端连接到服务器,并使用新创建的用户进行身份验证。每个用户都将被限制在其主目录中,无法访问其他用户的文件。

0
看了该问题的人还看了