我配置了三台服务器来中继邮件。我在 CentOS 5.5 上使用带有 postfix 的 dkim-milter。我在命令行上为每台服务器创建了域密钥。我的问题是每台服务器的域密钥都不同,我必须为每个中继服务器设置不同的 DNS 记录。
如何为 TXT 记录中的所有服务器设置单个密钥?
答案1
只需对所有服务器使用相同的密钥,并告诉它们对所有服务器使用相同的 DKIM 标识符。具体如何操作取决于您的设置方式,但生成并安装密钥后,弄清楚如何使它们全部相同应该相对容易。
答案2
您已经拥有一台具有 dkim 密钥对的服务器并使用 virtualmin“DomainKeys Identified Mail”:
- 在源服务器上编辑 dkim 选项并添加新域(我个人对所有服务器都使用子域),例如,如果您的初始邮件服务器是 s1.domain.com 而您的新服务器(您将复制 dkim 密钥的服务器)是 s2.domain.com,则您的“要签名的域”部分必须包含:
s1.domain.com
s1
s2.domain.com
s2
- 将其保存在源服务器上。密钥将被更新....
- 我的 ubuntu 服务器上的私钥归档在:/etc/dkim.key
- 如果您的目标服务器是相同的 [OS],首先在 virtualmin“DomainKeys Identified Mail”上启用 DKIM,您可能希望在“要签名的域”部分和“保存”中使用与源服务器相同的详细信息,这将创建密钥对。
- 然后,我个人在执行下一步之前在目标服务器上禁用了 dkim,但这可能不是必需的 (!?)。
- 完成后,使用 vi 编辑目标服务器上的 /etc/dkim.key 或用源服务器上的私钥替换私钥(您应该先备份文件,始终进行备份!)。
- 返回目标服务器页面中的 virtualmin“DomainKeys Identified Mail”,启用 dkim 外发电子邮件,但将“强制生成新私钥?”选项设置为“否”并“保存”
然后从 /etc/dkim.key 读取私钥,并用于为域生成与源服务器完全相同的公共和 DKIM DNS 记录以及使其工作所需的所有设置。
一切就绪,如果域的 DKIM DNS 记录已更改,则可以编辑 DNS,但我的似乎没有更改。
答案3
Generate keys
dkim-genkey -r -d example.com
sudo mkdir /etc/mail/dkim-milter/keys/example.com
sudo mv default.private /etc/mail/dkim-milter/keys/example.com/default
sudo mv default.txt /etc/mail/dkim-milter/keys/example.com/
sudo chown -R dkim-milter:dkim-milter /etc/mail/dkim-milter/keys/example.com
Paste the contents of default.txt into your zone file
cat /etc/mail/dkim-milter/keys/example.com/default.txt >> /var/named/chroot/var/named/example.com.hosts
你能试一下吗。