温馨提示×

centos怎么限制ssh用户

小樊
67
2026-09-02 16:37:10
栏目: 智能运维

在 CentOS 中“限制 SSH 用户”通常有几种常见场景,下面按最常见需求给你说明,你可以按需选择。


一、只允许指定用户登录 SSH(最常用)

编辑 SSH 配置文件:

sudo vi /etc/ssh/sshd_config

添加或修改以下内容:

AllowUsers user1 user2

或只允许某个组:

AllowGroups sshusers

保存后重启 SSH:

sudo systemctl restart sshd

✅ 效果:
只有列出的用户(或组)能登录,其他用户一律拒绝


二、禁止某个用户 SSH 登录

方法 1:直接禁止用户登录(推荐)

sudo usermod -s /sbin/nologin username

或使用:

sudo usermod -s /bin/false username

✅ 该用户无法 SSH,但本地服务仍可使用


方法 2:在 sshd_config 中拒绝

DenyUsers username

或拒绝整个组:

DenyGroups groupname

重启 SSH:

sudo systemctl restart sshd

三、禁止 root 远程登录(安全必做)

sudo vi /etc/ssh/sshd_config

修改:

PermitRootLogin no

重启:

sudo systemctl restart sshd

四、限制用户只能 SFTP(不能 SSH 执行命令)

Match User user1
    ForceCommand internal-sftp
    PasswordAuthentication yes
    ChrootDirectory /home/user1
    AllowTcpForwarding no
    X11Forwarding no

然后:

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

五、基于 IP 限制 SSH 用户(防火墙)

例如只允许 192.168.1.0/24:

sudo firewall-cmd --permanent --add-rich-rule='
rule family="ipv4"
source address="192.168.1.0/24"
service name="ssh"
accept'
sudo firewall-cmd --reload

六、查看当前 SSH 登录用户

who
w
last

✅ 推荐安全组合

  • 禁止 root 登录
  • 使用 AllowUsers
  • 使用密钥登录
  • 修改默认端口(可选)

如果你能告诉我:

  • 是限制单个用户 / 多个用户 / 禁止 root
  • 是本地用户还是远程用户
  • 是否用于服务器安全加固

我可以给你一套完整可直接用的配置。

0 踩