发送电子邮件的DKIM + EXIM + Dovecot

时间:2017-11-07 06:40:04

标签: dkim exim

我正在运行exim + dovecot。我尝试用opendkim生成一个dkim键,但结果是我的dkim无效。我应该使用openssl还是使用opendkim签署DKIM签名?

使用exim为外发电子邮件正确设置dkim的正确步骤是什么?

exim.conf中的正确设置是什么?

1 个答案:

答案 0 :(得分:0)

DKIM根本不需要签名。您需要的只是一对正确的RSA / DSA密钥,可以通过与预安装的ssh-keygen捆绑在一起的openssh生成。将密码保留为空:

> ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): mydomain.tld
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in mydomain.tld.
Your public key has been saved in mydomain.tld.pub.
The key fingerprint is:
SHA256:CD0n/Ut/GQgjYgKwONoj7FGXUJvdgyJt4FFczGZfqoE root@xx.yy.zz
The key's randomart image is:
+---[RSA 2048]----+
|...++o+.         |
|....=o=*o  .     |
|+  +oOXo=o=      |
|oo. +E.B =.o .   |
|ooo   . S o . .  |
|....   . . o   o |
| .        . . o  |
|             .   |
|                 |
+----[SHA256]-----+

现在我们有两个文件:mydomain.tldmydomain.tld.pub。第二个文件包含一个长行,其中第二个字段(标记为粗体斜体)是您必须放入域的区域记录中的公钥。

  

ssh-rsa AAAAB3NzaC1yc ..... 9akAq8YqPJN root@xx.yy.zz

第一个文件已准备好供MTA使用。只需将其重命名为mydomain.tld.key并将其复制到安全位置并从MTA配置中引用它。请记住,MTA通常要求私有DKIM密钥才能被MTA用户读取,因此权限应设置为600而不是通常的644。

DNS配置在howtos的数量上有很好的描述。 exim应该以这样的方式配置:

begin transports
xmit:
    driver              = smtp
    dkim_domain         = mydomain.tld
    dkim_selector       = mydomaintld
    dkim_private_key    = /path/to/the/mydomain.tld.key

. . . . .