管理服务器上的 ssh authorized keys 的工具

2013-11-26 03:36:31 +08:00
 tangzx
俺们是一个5个人的小团队。俺任sa,有时候其他同学要临时上服务器上去看一些东西,然后,各个服务器服务器各个账户各台电脑一堆 key很麻烦,更不要说我本来就手忙脚乱的你还通过 email 把你的 key 发过来然后叫我帮你添加到 4 台服务器上每个 staging 账户下,然后我帮你添加完之后我却不记得自己本来在做什么事儿了。

所以这个工具应运而生,直接从 GitHub API 拉 keys,你可以将服务器的访问权限点一下就分配给 organization 里的公开成员们。

图:



项目地址: https://github.com/layerssss/sshkeyd
4994 次点击
所在节点    分享创造
19 条回复
qsun
2013-11-26 04:49:11 +08:00
这个想法不错,确实解决了一些问题
stevenyou
2013-11-26 05:22:08 +08:00
对于小团队很实用,大一点的话就OpenLDAP了
akira
2013-11-26 07:32:58 +08:00
虽然是公钥,但是这样放总 觉得不大放心呀。。
stevenyou
2013-11-26 08:13:27 +08:00
@akira 有什么不放心的?
clino
2013-11-26 08:59:15 +08:00
我是用ansible来批量添加和删除
http://www.ansibleworks.com/docs/modules.html#authorized-key
missdeer
2013-11-26 09:07:23 +08:00
这个好萌~
tangzx
2013-11-26 12:12:18 +08:00
@stevenyou 后续俺会加上 GitHub Enterpirse 的支持
tangzx
2013-11-26 12:12:59 +08:00
@akira 公钥是公开的,而且是从 GitHub API 上拉下来的,不用手动输入&配置,放心啦
tangzx
2013-11-26 12:14:02 +08:00
@clino 俺这个不用配置,也不用作为服务运行在远程服务器上 XD

ps. 下一步俺打算把它包装成一个 nw 做的客户端程序
subpo
2013-11-26 13:27:15 +08:00
能提供github以外的支持吗?
tangzx
2013-11-26 13:39:38 +08:00
@subpo 因为这里用到了 GitHub 提供的3个功能:

1. 登录
2. 获取用户的组织和成员
3. 获取用户的public keys

所以一个服务要同时提供以上3种功能才可以用,所以 GitLab 、 BitBucket 和 GitHub Enterprise 以后是能想办法支持的。就看需求了。
clino
2013-11-26 13:42:17 +08:00
@tangzx ansible 也不用在服务端安装程序的,只要服务端支持ssh就能用了
ivenvd
2013-11-26 14:41:08 +08:00
Ansible 好用……

添加 Key:

ansible all -i production -m authorized_key -a 'user=root key="$SSH_KEY"'

删除 Key:

ansible all -i production -m authorized_key -a 'user=root key="$SSH_KEY" state=absent'

做成脚本或者 Web UI 都可以。
tangzx
2013-11-26 15:39:38 +08:00
@clino 原来 ansible 也不用安装,不过俺这个可以从 GitHub 下拉成员名单和成员的 key,相比 ansible 要手动输入或设置 key , 要简单易用多了。 @ivenvd
clino
2013-11-26 15:57:24 +08:00
@tangzx 没错,这部分是没有的,当然也没有web界面
我只是看到你的这部分功能就想起ansible已有的这个module
akira
2013-11-26 19:01:00 +08:00
强烈建议能支持bitbucket的私有仓库。。。
tangzx
2013-11-27 12:02:02 +08:00
@akira nonono, 该工具和仓库没有关系,主要是拉 ssh keys 和 组织的成员,即使你不用 GitHub ,你也可以单独建立一个 GitHub 帐号来提供这些信息的。
relaxyy
2013-11-27 12:55:13 +08:00
每次看到楼主的头像都觉得这么可爱一定是个戴眼镜的女子,那帽子太像长发了………………

虽然我还没有这个需求,但项目出发点和功能都很不错!界面也很简洁~赞
garbch
2013-11-27 13:44:43 +08:00
good

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/90618

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX