我已经成功地将我的 linux 加入 windows 域,现在域中的每个人都可以使用 ssh 登录到服务器。
但我们只想允许某个组中的某些用户登录。
当前两个组的示例:
#it_admin
Domain Admin
Run Code Online (Sandbox Code Playgroud)
您可以通过两种方式执行此操作。一种是让SSH配置过滤,另一种是使用pam_access.
要/etc/ssh/sshd_config,添加AllowGroups一行:
AllowGroups Domain Admin
Run Code Online (Sandbox Code Playgroud)
从联机帮助页:
AllowGroups
This keyword can be followed by a list of group name patterns,
separated by spaces. If specified, login is allowed only for
users whose primary group or supplementary group list matches one
of the patterns.
Run Code Online (Sandbox Code Playgroud)
Domain Adminhere 与Domain Admin组名不匹配,而是两个单独的组Domain和Admin. 您必须使用Domain*Admin和这样的东西*it_admin,因为(space) 和 ( #) 在 Linux 组中通常都不是有效字符。为了更安全,请使用: and?代替,以便通配符只允许一个字符。您还可以添加基于模式的 DenyGroups 部分。请参阅 中的部分。*Domain?Admin?it_adminPATTERNSman ssh_config
pam_access将行添加到/etc/security/access.conf表单中:
- : ALL EXCEPT (Domain) (Admin) : ALL
Run Code Online (Sandbox Code Playgroud)
该文件中有大量注释说明如何使用它。man pam_access非常简单,所以大部分信息都来自这些评论。pam_access更强大的是它也可以控制非 SSH 登录(TTY、GUI 等)。例如,这个特定的行应该拒绝任何没有登录Domain或Admin作为组登录的用户(除非其他行允许他们)。
这两种方法都非常灵活,我不知道利弊,所以没有建议。
| 归档时间: |
|
| 查看次数: |
30190 次 |
| 最近记录: |