如何通过 ssh 禁用除少数选定主机之外的所有主机的 root 访问?

如何通过 ssh 禁用除少数选定主机之外的所有主机的 root 访问?

我需要在 Solaris 10 服务器中进行设置PermitRootLogin no,同时仍然允许两个“对等”服务器通过 ssh 进行 root 访问。

我怎样才能实现这个目标?

答案1

在末尾添加以下行/etc/ssh/sshd_config就足以满足此要求:

Match Host unit1-priv0
   PermitRootLogin yes

Match Host unit0-priv0
   PermitRootLogin yes

答案2

使用公钥/私钥。

它在互联网上描述过很多次,所以我认为再次详细重复它是没有用的。

简要总结一下要做什么:

  • 在服务器上启用 root 登录
  • 在客户端创建 ssh 公钥/私钥 ( ssh-keygen)
  • 将公钥复制到服务器 ( ssh-copy-id root@your_server)
  • 对第二个客户重复
  • 在服务器上禁用 root 登录

现在,只有这两个客户端和上述命令的用户具有服务器的 root 访问权限,并且不再需要密码。

或许是重新开始的一个很好的切入点(步骤 #1 和 #2)

相关内容