centos7(linux)系统下利用自带的mail发送邮件服务

centos7(linux)系统下利用自带的mail发送邮件服务

2018年07月14日 09:55:53 hbqhzx123 阅读数:2956linux

本章三部分,一是基于虚拟机下的centos7环境搭建,二是基于在阿里云购买的centos7服务器环境下搭建,第三部分是群发邮件的小demo。shell

1、虚拟机环境下centos

 

若在本身的linux系统中或者虚拟机环境下,发送邮件的非加密端口25是开发的,能够直接发送,配置以下:bash

下方完成的是每隔一分钟执行一次发邮件服务。服务器

利用centos7自带发邮件系统阿里云

①写一个shell脚本 vi 当前目录/mail.sh加密

#!/bin/shcentos7

echo '你好'|mail -s '主题' 573761479@qq.comspa

②设置发件人信息.net

vi /etc/mail.rc

末尾处加入

set bsdcompat

set from=15313300416@163.com

set smtp=smtp.163.com

set smtp-auth-user=15313300416@163.com

set smtp-auth-password=zx123456

set smtp-auth=login

④设置定时任务

crontab -e

编辑内容为:

*/1 * * * * bash /root/mail.sh

就ok了!

 

 

 

2、在阿里云服务器的环境下

阿里云封闭25端口,因此不能经过默认的端口(25)发送邮箱服务,须要经过邮箱服务器的加密端口(465)来完成发送邮件的服务。配置流程以下:

①    修改 /etc/mail.rc   末尾处加入

【利用腾讯的企业邮箱发送,最后一句是证书存放位置,届时发送邮件的时候,会经过此证书,来对加密端口进行解密,此处加密端口是465】

 

set bsdcompat

set from=zhaoxiao@miototech.com

set smtp=smtps://smtp.exmail.qq.com:465

set smtp-auth-user=zhaoxiao@miototech.com

set smtp-auth-password=j3jgDPkZ35HGQGnA

set smtp-auth=login

 

#set smtp-use-starttls

set ssl-verify=ignore

set nss-config-dir=/home/zx/.certs

 

②    而后是对.certs文件进行建立,执行以下命令行

mkdir -p /home/zx/.certs/

而后一块儿执行下述命令:

【一块儿发过去】

echo -n | openssl s_client -connect smtp.exmail.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 /home/zx/.certs

执行后便可发送邮件:

下方是警告,能够忽视,邮件收到,若想去掉下方警告,则在.certs目录下执行

qq.crt和上方命令中的一致。

大功告成!

 注意事项

Windows下产生的文件粘贴到linux环境中,回车符的认定不一样,能够在notepad+中设定以下:

Task.txt中

Mail.sh

Crontab -e

相关文章
相关标签/搜索