最近在管理 AWS,GCP 上的一些服务器。机器的镜像开发和部署可以用 packer 和 terraform 完成,并且可以内置我的 public key 到每一台新服务器里。但是每当有人想请求访问某台服务器的时候,我还是需要本地ssh-copy-id
上去,还要记住很多服务器的 IP。有没有什么工具,可以管理多台服务器的?最好能提供以下功能:
如果有朋友知道类似的工具,请介绍一下。或者有其他方便的服务器管理软件,也请不吝赐教。谢谢
1
pmispig 2019-06-21 13:43:20 +08:00 1
saltstack
|
2
azh7138m 2019-06-21 13:44:38 +08:00
同需要一个
目前我是记录公钥到 gist,然后机器上 15 分钟同步一次 |
4
leishi1313 2019-06-21 13:53:41 +08:00 via Android
1 楼加 1,用 salt 维护一个公共的 dotfile (也就是.ssh )这个文件夹,只需要改动一个地方每台机器就都是同样的一份 authorized_keys 了,而且你还可以做到不用的机器有不同的权限分配。我前公司就是这么干的,可以参考 github.com/mattbillenstein/ve
|
5
swchzq 2019-06-21 15:28:34 +08:00 2
OpenSSH 证书了解一下, 服务器上只要部署根证书就行了, 当需要授权某个用户访问时, 给他签发一个证书就行, 并且能限制有效期, 很方便, 完整的方案可以看看这两个项目:
https://github.com/cloudtools/ssh-cert-authority https://github.com/nsheridan/cashier |
6
julyclyde 2019-06-21 15:44:52 +08:00
各 sshd 可以用 sssd 来实现,从 FreeIPA 或者 LDAP 读出用户的 public key
|
7
ps1aniuge 2019-06-21 17:19:33 +08:00
1 能够自动发现 Google Cloud / AWS 上的云机器---怎么实现?
3 不难 4 能够列出所有服务器上的 public key---是某个人的公 key 么? |