每个服务或每个服务器的PKI密钥?

我们都有很多需要encryption和authentication的内部服务,由某种PKI提供。

使用不同的私钥/公钥对每个服务的安全收益是否certificate需要额外的工作?

还是每台服务器使用一个密钥对?

例如,我所有的* nix服务器上都运行着rsyslog,Bacula和Puppet。 在所有三种服务中使用通用服务器特定的密钥对是否会打开我忽略的攻击媒介?

*例如,我所有的nix服务器都运行rsyslog,Bacula和Puppet。 在所有三种服务中使用通用服务器特定的密钥对是否会打开我忽略的攻击媒介?

我没有很高兴(痛苦?)部署PKI,但我已经处理了证书。 我怀疑每个服务器都可以,只要你使用的encryption是高质量的(即不是一个较旧的方法容易受到攻击和使用一个好长度的密钥)。

可用的密文越多,破解就越容易。 话虽如此,所有的安全都是一种折衷。 你需要考虑你使用什么证书? encryption? validation? 如果妥协会发生什么? 这是如何衡量有less量证书跟踪pipe理的好处。 你使用木偶,所以一些pipe理开销减less了。

我们在内部系统上尽可能使用自定义根证书和单个通配符密钥对。 这主要是为了阻止偶然的嗅探者获取密码。 我确信一个有决心的黑客会find一个办法。刚拿到证书的时候,我们已经build立了木偶基础设施来分配密钥并重启服务。 明年我们只需要检查新的钥匙颠覆和木偶应该做的rest。

我认为你最好每个服务器都有一个。 如果你处于一个非常确定的情况下,一个服务的妥协不会导致访问单个服务器上的其他服务器的密钥,那么每个服务器的每个服务都将被访问。

pipe理这些额外密钥的开销应该不会太差。 你所获得的是一些妥协的服务(比如Bacula)不会允许攻击者破坏木偶交易。 这值得吗? 也许,但只有当你能确保有人闯入服务时,无论如何都不能从其他服务中获得密钥。