centos 配置邮箱
1. 安装mail
检查是否安装mail
[root@ProxyServer ~]# rpm -qa|grep mail
libreport-plugin-mailx-2.0.9-19.el6.x86_64
mailx-12.4-7.el6.x86_64
procmail-3.22-25.1.el6.x86_64
mailcap-2.1.31-2.el6.noarch
sendmail-8.14.4-8.el6.x86_64
若未安装,安装mail
yum –y install mailx
yum install sendmail
2. 编辑配置文件
vi /etc/mail.rc
在文件末尾添加
set from=luojiahan1234@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=luojiahan1234@qq.com
set smtp-auth-password=wahnqizfqnoybjfa
set smtp-auth=login
from:对方收到邮件时显示的发件人
smtp:指定第三方发邮件的smtp服务器地址
set smtp-auth-user:第三方发邮件的用户名
set smtp-auth-password:用户名对应的密码,有些邮箱填的是授权码
smtp-auth:SMTP的认证方式,默认是login,也可以改成CRAM-MD5或PLAIN方式
再添加
set smtp-use-starttls
set ssl-verify=ignore
set nss-config-dir=/etc/pki/nssdb/
ssl-verify:ssl类型
nss-config-dir:存放 QQ 邮箱 SSL 证书的位置
3. 因为阿里云 ECS 封禁了25端口,所以我们只能使用 TLS 方式(TSL 也就是使用 SSL 加密的方式,使用465或者其他端口来发送邮件)绕过25端口需求来发送邮件,所以必须先获得邮箱的 SSL 证书并存放到本地,最后一行的 nss-config-dir 就是制定的存放 QQ 邮箱 SSL 证书的位置。
因为需要 QQ 邮箱的 SSL 证书,所以我们还需要手动的获取QQ 邮箱的证书保存到本地指定的目录里以备调用和验证,具体命令如下
mkdir -p /root/.certs/
echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -L -d /root/.certs
smtp.qq.com:465:根据自己情况更改
4. 为了防止出现前文所说的发送邮件警告提示,还需要进入邮箱 SSL 证书存放目录 /root/.certs 里执行如下命令:
cd /root/.certs
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i qq.crt
返回如下提示即可:
**Notice: Trust flag u is set automatically if the private key is present.**
5. echo "测试邮件" | mail -s "测试" XXX@qq.com
注意事项:
1. 在第二步之前应该在邮箱设置内打开POP3/SMTP/IMAP功能,如果有授权码获取授权码
2. –bash: certutil: command not found 报错
yum –y install nss-tools
3. 邮箱并非实时通信,发送后未收到邮件请等待几分钟。
QQ邮箱开POP3/SMTP/IMAP功能