如何在 Linux 中允许或拒绝对特定用户或组的 SSH 访问

本简要指南将引导您完成在 Linux 和 Unix 操作系统中允许或拒绝特定用户或组的 SSH 访问的步骤。

内容

  1. 介绍
  2. 在 Linux 中允许或拒绝对特定用户或组的 SSH 访问
    1. 1. 允许对用户或组进行 SSH 访问
    2. 2. 拒绝对用户或组的 SSH 访问
    3. 3.禁用SSH Root登录
    4. 结论

介绍

前段时间,我们讨论了如何 使用受限 shell 限制用户对 Linux 系统的访问. 一旦我们将用户置于受限模式,他们就不能做任何事情,只能做他们被允许做的事情。

当您希望允许特定用户仅执行一组特定命令时,这将很有帮助。

在本文中,我们将通过对 SSH 默认配置文件进行一些更改来启用或禁用用户或组的 SSH 访问。

在 Linux 中允许或拒绝对特定用户或组的 SSH 访问

openSSH 默认配置文件有两个指令,用于允许和拒绝特定用户或组的 SSH 访问。

首先,让我们看看如何允许或启用对用户和组的 SSH 访问。 请注意,下面给出的所有命令都应作为 root 或者 sudo 用户。

1. 允许对用户或组进行 SSH 访问

例如,允许特定用户的 SSH 访问 斯克, 编辑 sshd_config 文件:

$ sudo vi /etc/ssh/sshd_config

“一世” 进入插入模式并添加或修改以下行:

AllowUsers sk

编辑 ssh 配置文件以允许 ssh 访问特定用户

用您的用户名替换“sk”。 请介意 空格缩进 “AllowUsers”和“sk”之间。 你应该使用 标签 代替 空格键. 含义 – 添加单词“AllowUsers”并按 Tab 键,然后指定用户名。

您还可以指定多个用户,如下所示。

AllowUsers user1 user2

要允许整个组,例如说 root, 添加/编辑以下行:

AllowGroups root

此设置将允许所有成员 "root" 组 ssh 到 Linux 服务器。

ESC 退出插入模式并键入的键 :wq 保存并退出 SSH 配置文件。 重启 SSH 服务使更改生效。

$ sudo systemctl restart sshd

现在,用户 斯克 以及所有成员 "root" 组被允许通过 ssh 进入你的 Linux 服务器。 其他用户(sk 和成员除外) "root" 组)不允许通过 ssh 访问系统。

要验证它,请尝试以任何不允许的用户身份 ssh 进入 Linux 服务器:

$ ssh [email protected]

您将收到以下错误消息:

[email protected]'s password:  Permission denied, please try again.