我想加强EC2的安全性。所以我有很多EC2实例和许多需要访问这些EC2实例的开发人员。 每个开发人员都有自己的密钥对(公共/私有),并在每个EC2实例上添加公钥。
我也会创建一个堡垒主机。对于堡垒主机,最好的方法是什么?添加开发人员的所有pub键?或者只在密钥对上创建并为开发人员分发它?
答案 0 :(得分:7)
从每个开发人员那里获得单独的密钥肯定会更好,这样您就可以撤销单个密钥,而其他开发人员可以保留他们的访问权限。
你甚至可以拥有一个包含开发人员公钥的Git存储库,如果你想获得创意,可以使用配置管理将repo与.authorized_keys文件同步。
在堡垒主机上,您只需生成一个密钥对即可用于控制对内部主机的访问。由于您不需要分发此密钥,因此您可以在相当直接的过程中定期轮换此密钥。
如果开发人员离开,您可以通过从.authorized_key文件中删除其pubkey并从安全组中删除其IP来撤销对计算机的访问权限(如果适用)。此时您也可以旋转内部密钥对,但它本身并不需要,因为只要内部实例只允许通过堡垒主机进行ssh访问,它们的访问权限就应该足够。 (在安全组中设置)