背景
受困于outlook把我的邮箱地址认为是垃圾邮件,我在经过查阅资料后,发现我现在最大的问题是没有反向DNS解析以及缺少DKIM验证。反向DNS解析,由于主机商不给力,所以不可能完成配置。这里先记录下配置DKIM的过程。
资源准备
- 已经按照上一篇文章配置完一台ubuntu服务器
配置步骤
安装opendkim
sudo apt install opendkim opendkim-tools
修改opendkim配置文件
修改/etc/opendkim.conf
添加以下代码
1 | Domain example.com |
这里配置的意义是,告诉opendkim你的邮箱域名,设置私钥地址,以及配置dkim服务端口,可以根据自己的需求修改成其他值。
然后修改/etc/default/opendkim
添加这一条语句:
SOCKET="inet:8891@localhost"
该句意为配置opendkim的服务地址,应与上一个配置文件一致。
生成DKIM密钥对
在某个目录内执行下面的语句:
ˋsudo opendkim-genkey -t -s dkim -d example.com`
生成你的域名的密钥对,然后会有两个文件
ˋdkim.key以及
dkim.txt`
移动dkim.key
sudo mv dkim.key /etc/dkimkeys/
配置所有者权限
sudo chown opendkim:opendkim dkim.key
配置postfix
编辑/etc/postfix/main.cf
添加或修改以下配置项
1 | #DKIM |
与opendkim一致即可。
编辑/etc/postfix/master.cf
添加配置项
-o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_milters
重启服务
sudo service opendkim restart
sudo service postfix restart
添加DKIM记录
首先找到生成DKIM密钥对那一步,同时生成的一个dkim.txt
文件,格式为
1 | dkim._domainkey IN TXT ( "v=DKIM1; k=rsa; t=y; " |
在DNS解析里添加如下记录
主机记录 | 记录类型 | 记录值 |
---|---|---|
dkim._domainkey | TXT | "v=DKIM1; p=MIGfMA0GCSqGSIb3DQEBAQUAXXXXXXBiQKBgQC/eeMNBhzr+guknXXXXciiY/Wc7HJYNKdxVi+/qlA+6TgleaJY7CC/clWvRAtuXlAzjccsI1V/ICaHSzn9fhZZMKURmy2gsXXXXXXXYw7VZhFNBpTCqRALwsxOryW2BcX8eiwu1oY9krxbUQXXXXXXXXXXI4CLiXXXXXXXXeMK0wIDAQAB" |
根据自己的实际数据填写。
测试有效性
贴出两个测试网站: