该文件ipsec.secrets存储 pluto 守护进程用于验证两个网关之间通信的密钥。该文件中可以配置两种不同类型的密钥,即预共享密钥和 RSA 私钥。您必须检查此文件的模式和权限,以确保超级用户root拥有该文件,并且其权限设置为阻止其他用户的所有访问。
默认情况下,文件中提供了一个示例密钥。ipsec.secrets您应该通过创建自己的密钥来更改它。使用自动密钥时,您可以拥有一个最多 256 位的共享密钥,该密钥在密钥交换期间使用,以确保不会发生中间人攻击。要创建新的共享密钥,请使用以下命令
[root@deep] /# ipsec ranbits 256 > temp |
![]() |
完成操作后,不要忘记删除临时文件。 |
现在,我们的新共享密钥已在temp文件中创建,我们必须将其放入/etc/ipsec.secrets文件中。编辑ipsec.secrets文件时,您应该在文本编辑器中看到类似以下内容。每行都有两个网关的 IP 地址以及密钥。它应该看起来像这样
# This file holds shared secrets which are currently the only inter-Pluto # authentication mechanism. See ipsec_pluto(8) manpage. Each secret is # (oversimplifying slightly) for one pair of negotiating hosts. # The shared secrets are arbitrary character strings and should be both # long and hard to guess. # Note that all secrets must now be enclosed in quotes, even if they have # no white space inside them. 10.0.0.1 11.0.0.1 "jxVS1kVUTTulkVRRTnTujSm444jRuU1mlkklku2nkW3nnVu V2WjjRRnulmlkmU1Run5VSnnRT" |
编辑 ipsec.secrets 文件,vi/etc/ipsec.secrets并更改默认密钥
10.0.0.1 11.0.0.1 " jxVS1kVUTTulkVRRTnTujSm444jRuU1mlkklku2nkW3nnVu V2WjjRRnulmlkmU1Run5VSnnRT " |
208.164.186.1 208.164.186.2 "0x9748cc31_2e99194f_d230589b_cd846b57_dc070b01_74b66f34_19c40a1a_804906ed" |
文件ipsec.conf和ipsec.secrets必须复制到第二个网关机器,以便两端都相同。唯一的例外是ipsec.conf文件,如果第二个网关的接口设置与第一个网关不同,则该文件必须包含一个由 config setup 行标记的部分,其中包含第二个网关的正确接口设置。与ipsec.secrets文件相反,RSA 私钥,在两个网关上应该绝对具有相同的共享密钥。
: 该文件/etc/ipsec.secrets应具有权限rw-------(600) 并且应由超级用户root。该文件/etc/ipsec.conf安装时具有权限rw-r--r(644) 并且也必须由root。