CentOS 7 x86_64 bbr 部署 OpenDKIM 邮件认证

2 Comments

CentOS 7 x86_64 bbr 部署 OpenDKIM 进行邮件认证,正常情况下,添加 epel 源就能使用 yum install opendkim 安装。然而悲催的 OpenDKIM 折腾之旅就从将 LAMP 换成 LNMP 那一刻开始了。

LAMP 环境下,搬瓦工的 Centos 7 x86_64 bbr 和 Centos 6 x86_64 bbr 均能使用 kn007 的脚本快速配置 OpenDKIM。

附上原文代码:▼展开

注意:确保 vps hostname 是你的域名,hostname 回车可以查询,hostname xxx.com 可以临时设置 hostname

#!/bin/bash
#Made By kn007
#Add EPEL Community Project
rpm --import http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
#Fix EPEL Setup Error
sed -i 's:#baseurl:baseurl:g' /etc/yum.repos.d/epel.repo
sed -i 's:mirrorlist:#mirrorlist:g' /etc/yum.repos.d/epel.repo
#Install Postfix DKIM Signature
yum -y install opendkim
cat > /etc/opendkim.conf<<EOF
UserID opendkim:opendkim
UMask 022
Mode sv
PidFile /var/run/opendkim/opendkim.pid
Canonicalization relaxed/relaxed
TemporaryDirectory /var/tmp
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
KeyTable refile:/etc/opendkim/KeyTable
SigningTable refile:/etc/opendkim/SigningTable
MinimumKeyBits 1024
Socket inet:8891
LogWhy Yes
Syslog Yes
SyslogSuccess Yes
EOF
mkdir -p /etc/opendkim/keys/`hostname -f`
opendkim-genkey -D /etc/opendkim/keys/`hostname -f`/ -d `hostname -f` -s default
chown opendkim:opendkim -R /etc/opendkim/
chmod -R 700 /etc/opendkim
echo "default._domainkey.`hostname -f` `hostname -f`:default:/etc/opendkim/keys/`hostname -f`/default.private" >> /etc/opendkim/KeyTable
echo "*@`hostname -f` default._domainkey.`hostname -f`" >> /etc/opendkim/SigningTable
echo "localhost" >> /etc/opendkim/TrustedHosts
echo "`hostname -f`" >> /etc/opendkim/TrustedHosts
cat >> /etc/postfix/main.cf<<EOF

#DKIM
milter_default_action = accept
milter_protocol = 2
smtpd_milters = inet:8891
non_smtpd_milters = inet:8891
EOF
service opendkim start
service postfix restart
cp /etc/opendkim/keys/`hostname -f`/default.txt /root/`hostname -f`-dkim-signature_default.txt
echo "open '/root/`hostname -f`-dkim-signature_default.txt', then add the TXT record to you DNS resolution system."

然而,LNMP 环境安装好,安装上 WordPress,配置 Postfix,功能基本上正常。开始安装 OpenDKIM,悲剧开始了。

kn007 的脚本执行会出错,因为 OpenDKIM 安装失败,提示 No package opendkim available.

Google 找教程,试了一堆,仍然是 No package opendkim available.以为是 LNMP 或者 Centos7 的问题,重装 n 次系统,重装 LNMP,No package opendkim available. 还是雷打不动。

然后换 oneinstack、换 bt.cn 安装 LNMP 去试,还是不行。

yum -y install epel-release
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum clean

一圈下来,还是不行。差点想直接 LAMP 算了,怀疑是不是 epel 源没有安装成功或者没有生效,其实开始的时候就有这个疑问,但是因为不懂,没有去多想,没有去检查。

今天换了几个关键词问 Google,终于找到了问题所在。

yum repolist all

才发现一直以为安装启用成功的 epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 源一直是 disabled 状态,yum install opendkim 不提示 No package opendkim available. 才怪呢。

事实上搬瓦工 Centos 7 x86_64 bbr 本来就有 epel/x86_64,默认 disabled 而已。

vi /etc/yum.repos.d/epel.repo

可以看到如下信息:

[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

哎,怪自己太蠢……上面代码 #baseurl 去掉 #,mirrorlist 前面加上 #,enabled=0 改为 enabled=1,也就是:

[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

不过我只是将 enabled=0 改为 enabled=1 就好了。

然后运行:

yum makecache

再检查一下:

yum repolist all

如无意外,就能安装 OpenDKIM 了:

yum install opendkim

接着就可以用 kn007 的部分脚本直接配置 OpenDKIM,注意确保 hostname 是你网站的域名

#!/bin/bash
cat > /etc/opendkim.conf<<EOF
UserID opendkim:opendkim
UMask 022
Mode sv
PidFile /var/run/opendkim/opendkim.pid
Canonicalization relaxed/relaxed
TemporaryDirectory /var/tmp
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
KeyTable refile:/etc/opendkim/KeyTable
SigningTable refile:/etc/opendkim/SigningTable
MinimumKeyBits 1024
Socket inet:8891
LogWhy Yes
Syslog Yes
SyslogSuccess Yes
EOF
mkdir -p /etc/opendkim/keys/`hostname -f`
opendkim-genkey -D /etc/opendkim/keys/`hostname -f`/ -d `hostname -f` -s default
chown opendkim:opendkim -R /etc/opendkim/
chmod -R 700 /etc/opendkim
echo "default._domainkey.`hostname -f` `hostname -f`:default:/etc/opendkim/keys/`hostname -f`/default.private" >> /etc/opendkim/KeyTable
echo "*@`hostname -f` default._domainkey.`hostname -f`" >> /etc/opendkim/SigningTable
echo "localhost" >> /etc/opendkim/TrustedHosts
echo "`hostname -f`" >> /etc/opendkim/TrustedHosts
cat >> /etc/postfix/main.cf<<EOF

#DKIM
milter_default_action = accept
milter_protocol = 2
smtpd_milters = inet:8891
non_smtpd_milters = inet:8891
EOF
service opendkim start
service postfix restart
cp /etc/opendkim/keys/`hostname -f`/default.txt /root/`hostname -f`-dkim-signature_default.txt
echo "open '/root/`hostname -f`-dkim-signature_default.txt', then add the TXT record to you DNS resolution system."

打开 /root 下 xxx-dkim-signature_default.txt,到 DNS 域名解析,添加 txt 类型主机记录 default._domainkey,记录值为:v=DKIM1; k=rsa;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNA……(请根据文件实际修改)

最后,别忘了启动 opendkim,并设置开机启动。

service opendkim start
chkconfig opendkim on
service opendkim status

附上邮件相关 DNS 主机记录

如是 WordPress 博客发送评论回复邮件通知,结合下面文章,邮件可以满分。

CentOS 7 安装 Postfix 替换 sendmail 发送邮件

据说 Postfix 的效率更高,不多说,下面是网上搜集的安装配置教程。搬瓦工 Centos 7 x86_64 bbr 环境下亲测可用。 安装方法 yum install postfix /usr/s...

WordPress 评论回复通知邮件优化

很久之前看到 kn007 文章 [Postfix进阶]利用Fail2ban防止爆破和攻击 提到邮件提醒同时包含 text/plain 与 text/html 两个版本,因此能获得满分。 2020-07...

参考文章

kn007 - [Postfix进阶]使用新版DKIM签名(OpenDKIM)

秋水逸冰 - 在Centos 5.x或6.x上安装RHEL EPEL Repo

除非注明,沙唐桔文章均为原创,本文地址 https://cyhour.com/601/,转载时必须以链接形式注明原始出处。
声明:我们不销售主机,选主机需合法使用。任何主机需定期备份,防止数据丢失。信息以实际为准,评测仅供参考不代表权威!
🔞:Netflix 奈飞 YouTube 合租免费节点Telegram 频道

使用 rclone 将 Google Drive 文件同步至 OneDrive

前几天上了博友「灵尘居」的 Office 365 车,1T OneDrive 到手,手机照片一直喂 Google AI,挺方便的,以前还会同步一份到家里的垃圾西数 NAS,不过并不太自动,后来就懒得弄了。 Google 虽然是大厂,但是数据只有一份,还是怕怕,多一个备份不是坏事。苹果 iCloud 不错,但是贼贵,况且我只有一个…
浏览: 124 标签:  ,  ,  ,  , 

尼康 D7100 中文使用说明书 高清 PDF 电子版免费下载

尼康 D7100 说明书是一份介绍详细尼康 D7100 单反官方教程,推荐购买了 D7100 单反博友下载保存参考,以便随时查看一些常用按键操作和使用技巧。 尼康 D7100 简介 尼康 D7100 搭载先进的对象捕捉性能和成像性能,能够忠实还原拍摄细节。高密度的 51 点自动对焦系统准确捕捉目标对象并进行跟踪,…

全网热门公共 BitTorrent Tracker 列表合集 加速BT下载

BT 下载速度取决于其他下载同一资源的用户上传速度。做种「指上传文件数据给其他 BT 用户的行为」用户越多,你的下载速度越快!如果资源没人提供上传,就会完全没有下载速度,而做种用户靠 Peer、DHT、Tracker 获得。 Tracker 是什么? BT 下载的文件都是其他用户上传给你的。 BT 下载速度…

换域名?改固定链接?

去年底注册了个短域名,虽然非主流,但是胜在够短,两字母,还没有溢价。一直寻思着把它转移到 Cloudflare,换到博客使用,无奈 Google Adsense 一直没能折腾审核通过。 WordPress 修改固定链接? 以前听说 postname 更有利于 SEO,曾经试过人工翻译。后来嫌麻烦,干脆只用 /%post_id%/,后面 .…
浏览: 49 标签:  ,  ,  , 
浏览: 70 标签:  ,  ,  ,  , 

Comments:2

  1. 你的博客是BWH哪个机房?

    2017.12.02 18:31 # 回复
    1楼

发表留言

Vultr 送$100,搬瓦工年付最低$49,优惠码 BWH3HYATVBJW,更多推荐VPS信息