更改 /etc/ssh/moduli 会影响以前生成的密钥吗?

信息安全 SSH diffie-hellman 打开sh
2021-08-29 00:11:46

我的公司通过 SSH/sftp 与银行等进行了大量自动文件传输。最近在服务器上的 SSH 升级放弃了对旧/弱diffie-helman-group1-sha1密钥交换协议的支持,以响应最近的Logjam攻击。

我们合作的大多数组织都支持diffie-hellman-group-exchange-sha1diffie-hellman-group-exchange-sha256协议。但是,我们的/etc/ssh/moduli文件包含一些比某些服务器想要的数字更弱的数字,因此当我们的服务器碰巧从当前文件中选择一个较弱的数字时,我们会定期连接失败。

所以现在我正在考虑生成一个新/etc/ssh/moduli文件并删除较弱的数字以消除可能的故障。我想知道的是我们是否可以替换现有/etc/ssh/moduli文件而不影响我们已经生成的与其他人交换的密钥。我读过一些其他的帖子,比如被篡改的 /etc/ssh/moduli 的后果,但他们在这一点上并不是很清楚。

根据我的阅读,我认为我可以这样做,因为/etc/ssh/moduli主要用于协商单个 SSH 连接,但我想先听一些其他意见。

2个回答

你会没事的。/etc/ssh/moduli仅由sshd使用:

/etc/ssh/moduli 文件包含 sshd(8) 的系统范围的 Diffie-Hellman 素数模数。

sshd 与您用于连接其他机器的客户端密钥无关。

我想知道的是我们是否可以替换现有/etc/ssh/moduli文件而不影响我们已经生成的与其他人交换的密钥。

模数与服务器主机密钥客户端身份验证密钥没有任何联系主机密钥用于主机验证,身份验证密钥用于客户端身份验证,但diffie hellman密钥交换是完全不同的算法(好吧,不完全是,它是公钥加密,但它不是基于任何先前的提到的密钥RFC4419)。

这意味着您之前生成的密钥不受影响。