


原文地址:http://blog.youkuaiyun.com/thefirstwind/archive/2007/10/31/1858983.aspx
作者:邢晓宁
时间:2007年10月31日
声明:版权没有,任你转载
标题:
Linux服务器SMTP端口被盗用发送垃圾邮件,又GMAIL/Yahoo等列入垃圾邮件列表之后的对策
1.问题描述:
公司邮件服务器被挂成肉鸡,无限制的向外发送垃圾邮件, 又gmail、yahoo列入了垃圾邮件黑名单,向gmail、yahoo发送邮件立即被退回。
2.对策:
根据google推荐的策略,首先是添加邮件服务器的smtp auth送信认证,再有就是添加DNS端的电子签名(DomainKeys)。
smtp-auth的相关文章很多,就不介绍了,这里介绍DomainKeys的配置。
3.适应环境:
操作系统 CentOS Redhat Fedoa
邮件服务器 Qmail
DNS服务器 Bind
邮件服务器插件 DomainKeys
4.主要参考
http://jeremy.kister.net/howto/dk.html
http://domainkeys.sourceforge.net/
http://machtype.com/~flesh_gogo/linux-other-bind-qmail-spf.html
[安装手册]
邮件服务器端
安装DomainKeys
|
生成电子密钥
#mkdir -p /etc/domainkeys/`hostname -d`/ #cd /etc/domainkeys/`hostname -d`/ 在DNS端用“邮件服务器域名” 代替上面的 `hostname -d` #/usr/local/ssl/bin/openssl genrsa -out rsa.private 768 #/usr/local/ssl/bin/openssl rsa -in rsa.private -out rsa.public -pubout -outform PEM #mv rsa.private default #chown -R qmailq /etc/domainkeys #chmod 0600 default |
生成公钥
#grep -v ^- rsa.public | perl -e 'while(<>){chop;$l.=$_;}print "t=y; p=$l;/n";' t=y; p=MHwwD7XKKIUeTXPTzPrXQIDAQABJhALrzMz86s1SVjDKmD5Rj/Nakwk41i7bD mGHjRIccPf1Po7Ng57XKKIUeTXPTzPr7XKKIUeTXPTzPrXQIDAQABn+ulatFGT99qDW 7roK3nb48Uwen3sKmiLHTsIYH7i3t4MFn7XKKIUeTXPTzPrXQIDAQAB; |
DNS服务器端
最后添加
_domainkey.example.com. IN TXT "t=y; o=-";
default._domainkey.example.com. IN TXT "DomainKey_from_step_5"
# vi /var/named/chroot/var/named/邮件服务器域名 $TTL 3D @ IN SOA DNS服务器. postmaster.邮件服务器域名. ( 200106074 1M 15M 4W 1D)
ns IN A 邮件服务器IP |
邮件服务器端
修改qmailqueue文件
# ln /var/qmail/bin/qmail-queue /var/qmail/bin/qmail-queue.orig # ln /var/qmail/bin/qmail-dk /var/qmail/bin/qmail-queue.new # mv /var/qmail/bin/qmail-queue.new /var/qmail/bin/qmail-queue |
修改tcp.smtp文件,返信策略
# vi /etc/tcp.smtp 10.0.0.2:allow,RELAYCLIENT="",DKSIGN="/etc/domainkeys/邮件服务器域名/default",QMAILQUEUE="bin/qmail-dk" :allow,DKVERIFY="DEGIJKfh",QMAILQUEUE="bin/qmail-dk" 127.:allow,RELAYCLIENT="" |
从新创建cdb文件
tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp |
最后把环境变两添加到/etc/profile文件中
# echo "QMAILQUEUE=/var/qmail/bin/qmail-dk" >> /etc/profile # echo "DKSIGN=/etc/domainkeys/`hostname -d`/default" >> /etc/profile # echo "export QMAILQUEUE DKSIGN " >> /etc/profile # source /etc/profile |
别忘记从新启动qmail和dns服务哦。
Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=1858983