1、准备工做服务器
虽然不加DNS解析也能把邮件发出去,但会被大多数邮件服务器看成垃圾邮件。根据咱们的实际经验,须要添加三条DNS解析记录:A记录、MX记录、TXT记录。好比域名cnblogs.info,对应的DNS记录以下:dom
若是用的是阿里云入门级Linux服务器,有一块20G的数据盘未挂载,须要格式化并挂载(假设这里挂载的目录是/data),具体操做步骤见以前的博文阿里云云服务器硬盘分区及挂载。post
2、配置postfix测试
postfix是CentOS默认安装的邮件服务器软件。如下配置示例假设要配置的域名是cnblogs.info,邮件服务器主机名是mail.cnblogs.info。阿里云
打开postfix的配置文件rest
vi /etc/postfix/main.cfcode
:75 光标移至第75行,修改myhostnameblog
myhostname = mail.cnblogs.info队列
:83 光标移至第83行,修改mydomainip
mydomain = cnblogs.info
:99 光标移至第99行,修改myorigin
myorigin = $mydomain
:116光标移至第116行,修改inet_interfaces
inet_interfaces = all
:119光标移至第119行,修改inet_protocols
inet_protocols = ipv4
:164光标移至第164行,添加$mydomain
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
:264光标移至第264行,修改mynetworks
mynetworks = 127.0.0.0/8
子网掩码(netmask)转换器:Network and IP address calculator
:419 光标移至第419行,设置home_mailbox
home_mailbox = Maildir/
:425 光标移至第425行,设置mail_spool_directory,/data是以前挂载的数据盘,mail目录须要经过mkdir命令建立
mail_spool_directory = /data/mail
重启postfix使设置生效
service postfix restart
3、用telnet测试邮件服务器是否正常
在邮件服务器上安装telnet
yum install telnet
链接服务器SMTP端口
telnet 127.0.0.1 25
填写发件人
MAIL FROM:test@cnblogs.info
回车
填写收件人
RCPT TO:contact@cnblogs.com
回车
5.1 开始写邮件内容
DATA
回车
5.2 输入标题
Subject: test message
回车
5.3 输入内容,并以.号结束
test body .
若是显示下面的信息,说明邮件进入发送队列
250 2.0.0 Ok: queued as 88D6D32A94
4、受权其余服务器经过该邮件服务器发送邮件
未受权的状况下,若是在其余服务器telnet这台服务器,在输入收件人以后会出现Relay access denied错误
RCPT TO:contact@cnblogs.com 554 5.7.1 <contact@cnblogs.com>: Relay access denied
解决方法:
vi /etc/postfix/main.cf,:264将光标移至第264行,在mynetworks的值以后加这台的服务器IP地址,好比:
mynetworks = 127.0.0.0/8 58.33.14.124 service postfix restart以后,问题解决。
5、其余问题
收到上面telnet发出的邮件时,你会发现收件人信息显示的是undisclosed recipients,解决方法是在DATA命令以后,输入Subject以前,分别输入:
FROM:test@cnblogs.info TO:contact@cnblogs.com