使用 ubuntu 12.04,我想使用 sshd_config 将来自 root 的 ssh 会话限制为固定的 IP 子集。我希望普通用户能够从任何地方进行 ssh,但 root 应该只能从 IP 范围(我的本地子网)以及该范围之外的一个 IP(我的异地备份服务器)进行 ssh。
我的备份解决方案需要通过 ssh 进行 root 访问,因此使用
PermitRootLogin 否
不是解决方案。同时,我不想让每个人和他们的母亲都打开根目录,从而不必要地危及我的系统。
我目前在 sshd_config 中有以下内容:
AllowUsers *@*
DenyUsers root@*
AllowUsers root@local.subnet.range.*
AllowUsers root@offsite.backup.server.ip
Run Code Online (Sandbox Code Playgroud)
其中本地子网和异地备份号是正确的。
这不起作用。有关如何使其工作的任何提示,为什么?sshd_config 的文档并没有帮助我理解 AllowUsers 和 DenyUsers 如何交互。
考虑简单地使用 SSH 密钥以 root ( PermitRootLogin without-password)身份登录。可以使用from="1.2.3.4,8.9.0.0/24,::1"authorized_keys 中的选项将每个密钥限制为特定的源地址。
“AllowUsers”下方的联机帮助页确实说:
允许/拒绝指令按以下顺序处理:DenyUsers、AllowUsers、DenyGroups,最后是 AllowGroups。
– 因此,如果 DenyUsers 条目匹配,则根本不会检查任何其他规则。
| 归档时间: |
|
| 查看次数: |
4225 次 |
| 最近记录: |