为近 30 个用户的大量(近 9000 个)服务器自动化和创建 SSH 密钥

Gok*_*kul 2 linux ssh rsync scp

有没有办法自动为近 30 个用户的大量(近 9000 个)服务器创建 SSH 密钥

eww*_*ite 11

如果您在同一管理下有 9,000 台服务器,那么您很可能有某种形式的配置管理。可以采用 Puppet、Chef、Ansible 等形式。您可以通过这种方式分发公钥。

对于 30 个用户,这也可以通过中央目录身份验证(LDAP、Active Directory)来处理。


mai*_*ilq 10

你可能做错了。

每个用户(30 个)都必须创建自己的(因此是私有的!)密钥。每个用户的公钥会被访问他应该访问的每台服务器(9000 台)。

不要反过来做。


ton*_*ioc 8

如果您的服务器使用最新的 openssh 版本(我认为是 5.4),您应该查看那里的基于证书的身份验证。您可以在此处找到此功能的介绍:http : //neocri.me/documentation/using-ssh-certificate-authentication/或在 ssh 包文档中。

简而言之,

  • 用户生成他们的私钥/公钥对。
  • 您(管理员)创建一个或多个 SSH CA 证书(your-user-ca),用于签署用户公钥。
  • 您(管理员)使用一个 CA 证书签署用户公钥。例如“ssh-keygen -s your-user-ca -I“username” -Z username -V +52w user-key.pub”。这将创建一个 user-key-cert.pub,您需要将其发送回适当的用户。
  • 您(管理员)在 9000 台服务器的 sshd 配置中安装受信任的 SSH CA 证书。您不需要声明每个用户的每个公钥。
  • 用户可以连接。

嗯。