检查IP信用度
在自建邮件服务器之前,先检查下你所要使用的IP的信用度如何?如果你的IP已经在垃圾邮件联盟的黑名单里面,那么建议别用了,因为被当做垃圾邮件的概率会非常高。
可以点下面的链接查看:
http://cbl.abuseat.org/lookup.cgi
http://www.spamhaus.org/query/bl?ip=8.8.8.8
http://anti-spam.org.cn/
添加MX记录
比如我的域名是:quanlei.com, 我配置的邮件服务器是 mail.quanlei.com
那么你就需要在域名管理界面添加一条MX记录,key=quanlei.com, value=mail.quanlei.com
host -t mx quanlei.com返回如下类似结果,表面MX生效:
quanlei.com mail is handled by 10 mail.quanlei.com.安装Postfix
为了方便操作 sudo -i 拿到root权限。
输入以下命令,安装postfix:
安装过程中,在配置界面,选择:Internet Site
下一步,在 System mail name 中填写 mail.quanlei.com
然后Postfix就安装完毕,接下来进行配置,Postfix的配置文件在:
/etc/postfix/main.cf给邮件服务器添加域名:
mydestination = mail.quanlei.com, localhost.localdomain, localhost安装邮件客户端进行测试:
apt-get install heirloom-mailx测试发个邮件(coolbee2002@163.com是我的163邮件,换成你的):
echo "test" | mail coolbee2002@163.com收到邮件后,回复一下,然后通过下面命令查看(quit命令退出):
root@localhost:/# mail配置Maildir格式存储邮件,在/etc/postfix/main.cf中加入
home_mailbox = Maildir/最后重启下Postfix:
/etc/init.d/postfix restartps: 发送邮件的默认端口是25,收信端口是110,两个端口需要在防火墙中开放,否则会出现发不出去,收不到的情况。
配置DKIM
通过上面的配置,发送邮件和接收邮件已经OK了,为了防止邮件被判定为垃圾邮件,可以给邮件系统增加DKIM(DomainKeys Identified Mail)功能,其主要的原理通俗的说,就是在发送邮件的时候通过私钥在邮件头写一段加密信息,然后公钥放到DNS服务器上,邮件的接收方通过邮件头的加密信息来和DNS上的公钥比对来判定邮件来源是否合法。
apt-get install opendkim安装完成后,输入如下命令,会在当前目录下生成公钥和私钥两个文件:default.private 和 default.txt
opendkim-genkey -r -d mail.quanlei.comdefault.txt 里面的内容类似如下:
default._domainkey IN TXT "v=DKIM1;=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDbJarHD2SlFuWVu3UAu//MyrHuGq+C53tJI9O2R5hdM8cknX4aH3QLzYEimcTBzKEfC+OoayJPMgPOgqQCEGPqD3o6mz1FDVxPRhDZg+5ghqmgPB4MlgQAxsoiutwuwb9k5+RtRsPonGjJyKU+cKMk7nD7gG5Y3w5Vky2n+h0wdwIDAQAB" ; ----- DKIM default for mail.quanlei.com
在你的域名管理界面,添加一条txt记录,把公钥放在域名上:
主机记录 = default._domainkey.mail.quanlei.com
记录类型 = txt
记录值中的内容,是从default.txt提取的,如下内容:
v=DKIM1;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDbJarHD2SlFuWVu3UAu//MyrHuGq+C53tJI9O2R5hdM8cknX4aH3QLzYEimcTBzKEfC+OoayJPMgPOgqQCEGPqD3o6mz1FDVxPRhDZg+5ghqmgPB4MlgQAxsoiutwuwb9k5+RtRsPonGjJyKU+cKMk7nD7gG5Y3w5Vky2n+h0wdwIDAQAB
把私钥放到想要的位置,比如/var/db/dkim/
在opendkim.conf文件中,由KeyFile参数指定上面的私钥位置,配置如下:
DKIM配置完成,再修改Postfix中的配置,在发信的时候启用加密功能。
在 /etc/postfix/main.cf 中加入如下内容:
重启opendkim和Postfix即可。
然后验证吧:http://dkimcore.org/tools/
Check a published DKIM Core Key:
Selector:default
Domain name:mail.quanlei.com
接着再发邮件到gmail和hotmail中查看dkim是否有签名。
配置SPR
除了DKIM,还可以在DNS上增加SPF配置来提高邮件发送成功的几率,添加一条txt记录:
主机记录 = mail
记录类型 = txt
记录值 = “v=spf1 ip4:8.8.8.8 ~all” (不包含引号,其中的IP换成自己的IP)
验证是否配置成功:
dig -t txt mail.quanlei.com配置SMTP
安装必要组件:
apt-get install libsasl2 sasl2-bin libsasl2-modules修改/etc/postfix/main.cf文件,在末尾加入以下内容:
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination修改/etc/default/saslauthd:
START=yes最后运行:
mkdir -p /var/spool/postfix/var/run/saslauthd配置PTR(反向解析)
这个需要联系IP提供商来设置反向
–EOF–
说明:本文是参考网上的配置,结合自己实际配置过程中的情况,整理的一份文档。
上一篇:PHP mail函数使用详解