最近公司网站上添加了邮件方法的需求,没办法必须要在安装sandmail,公司用的服务器是阿里云ecs,系统是centOs系统,好了废话就少说了,下面描述下操作流程吧!
首先,第一步肯定是要安装sandmail,(PS:用yum命令安装省去好多事情,
#yum install -y sendmail
#yum install -y sendmail-cf
如果需要SMTP验证就安装并启动saslauthd服务:
# yum install -y saslauthd
# service saslauthd start
接下就是要配置:
(1)配置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')dn
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dn
(2) 生成配置文件
Sendmail的配置文件由m4来生成,m4工具在sendmail-cf包中。如果系统无法识别m4命令,说明sendmail-cf软件包没有安装。
#m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
一般修改了配置文件都需要重启服务的,命令如下
service sendmail restart
由于阿里云服务器不能发邮件,发邮件一般都是通过外部的邮件服务器,因为25端口被阿里禁止使用了,切接检查自己的端口是否是25,
因为是使用外部的smpt服务器,所以还要做以下的事情:
修改vi/etc/mail.rc
set smtp="smtps://smtp.qq.com:465"
set smtp-auth=login
set smtp-auth-user="237524856@qq.com"
set smtp-auth-password=“xxxxxxxxx”
set ssl-verify=ignore
set nss-config-dir=/etc/pki/nssdb"
解释说明下
from是发送的邮件地址;
smtp是发生的外部smtp服务器的地址;
smtp-auth-user是外部smtp服务器认证的用户名;
smtp-auth-password是外部smtp服务器授权密码;
smtp-auth是邮件认证的方式;
配置成功后,就可以使用了。
[root@meidepm ~]# echo message3 | mail -v -r "237524856@qq.com" -s "This is the subject" 15915341212@163.com
一般情况下就是,如果出现以下情况:
就要用以下方法解决:
首先,yum install telnet安装telnet工具,看下telnet smtp.163.com是否ping得通,然后telnet 163mx00.mxmail.netease.com 465(我用得端口是465)的,如果你ping的465端口不通,证明你没有开通465的端口,开通的方法按照以下的url就可以装好,
https://help.aliyun.com/knowledge_detail/60692.html,再提供下企业云邮箱的POP\SMTP\IMAP地址和端口信息的连接:https://help.aliyun.com/knowledge_detail/36576.htm!
希望此文章对大家有帮助!!!!