一、 Sendmail安装
在CentOS下,sendmail一般默认是随操作系统一起安装的。如果安装系统时没有安装sendmail服务,手动安装sendmail也很简单:
# yum install -y sendmail
# yum install -y sendmail-cf
二、 Senmail的SMTP认证配置(不需要认证的可忽略此步)
首先确认saslauthd服务是否安装或启动。
安装saslauthd服务:
`# yum install -y saslauthd`
启动saslauthd服务
# service saslauthd start
三、 使用带附件的功能,则还需要安装sharutils
#yum install sharutils
四、 配置Senmail的SMTP认证
# vi /etc/mail/sendmail.mc
- dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
- dnl define(
confAUTH_MECHANISMS',
EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
将上面两行的dnl去掉。在sendmail文件中,dnl表示该行为注释行,是无效的,因此通过去除行首的dnl字符串可以开启相应的设置行。
五、设置Sendmail服务的网络访问权限
# vi /etc/mail/sendmail.mc
- DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA’)dnl
将127.0.0.1改为0.0.0.0,意思是任何主机都可以访问Sendmail服务。如果仅让某一个网段能够访问到Sendmail服务,将127.0.0.1改为形如192.168.1.0/24的一个特定网段地址。
六、 生成Sendmail配置文件
Sendmail的配置文件由m4来生成,m4工具在sendmail-cf包中。如果系统无法识别m4命令,说明sendmail-cf软件包没有安装。
生成Sendmail的配置文件:
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
需要重启Sendmail才能使配置文件生效。
七、 Sendmail邮件域名配置
配置sendmail使用合法的域名分两步,修改sendmail的配置文件和添加域名MX记录。
sendmail可以直接使用 “-r account@domain.com” 参数来以任意源地址发送邮件,但目前主流的邮箱都会将源地址和反向解析IP进行比较,如果解析不到或是解析的IP不匹配,轻则将邮件直接归为SPAM,严重的就直接拒绝接收。
MX记录(Mail Exchanger Record)主要是接收邮件时使用,即当投递一封新邮件时,会查询收件人域名的MX记录,然后通过MX记录得到的IP地址进行投递。同时邮件厂商在接收邮件的时候也会将源地址和MX记录进行比较,作为垃圾邮件的判断标准之一。
第一步:添加域名
(1) 将域名加入到local-host-names文件
# vi /etc/mail/local-host-name 添加
yaokj.com
(2) 修改submit.cf文件
# vi /etc/mail/submit.cf,找到行 #Dj$w.Foo.COM,修改为
1. Djyaokj.com
至此,sendmail邮件命名配置完毕,重启sendmail使配置生效。
# systemctl restart sendmail
八、sendmail邮箱部署设置
修改配置文件:# vim /etc/mail.rc
set from=*****@163.com #需要发送的邮箱账号
set smtp=smtp.163.com #发送的邮箱服务器
set smtp-auth-user=*****@163.com #邮箱账号
set smtp-auth-password=linux*** #授权码
set smtp-auth=login
3、发送方式
echo ‘内容’ | mail -s ‘主题’ *****@163.com
mail -s ‘主题’ *****@126.com < test.txt #内容在test.txt中
4、日志查看(发不出去的话看下日志)
tail /var/log/maillog
5、报错解决
1)日志中出现 My unqualified host name (bogon) unknown; sleeping for retry #无法解析域名
解决:在vi /etc/mail/sendmail.cf 配置文件中查找 Djw.
在/etc/hosts 增加一行
本机ip地址 bogon bogon. 注意最后面有一个点
重启服务
6、上面配置文件中的授权码获取(163为例)