一般Linux发送报警邮件通过本地邮箱或外部邮箱服务器,这里用最简单的方法实现linux 使用外部邮箱即可实现发送邮件功能,你只需简单注册个国内的邮件服务商邮箱,如163,也可以使用公司邮箱,需要安装mailx工具,mailx是一个小型的邮件发送程序。

要往外发送邮件,当然前提是你的服务器能联网!

一、安装mailx

# systemctl stop postfix

# systemctl disable postfix

#  yum  -y install mailx

postfix为本地邮箱推送方式需安装的软件,若同时配置本地和外部邮箱两种发送方式,系统会优先采用外部邮箱方式,所以该步骤不是必须但最好关闭这个服务。

二、编辑配置文件

# vim /etc/mail.rc

set from=13510861001@126.com          //对方收到邮件时显示的发件人

set smtp=smtp.126.com                          //第三方发邮件的smtp服务器地址

set smtp-auth-user=13510861001          //第三方发邮件的用户名 

set smtp-auth-password="XXX"              //用户名对应的密码,有些邮箱填的是授权码,需要在邮箱设置中开放

set smtp-auth=login                                //SMTP的认证方式,默认是login,也可以改成CRAM-MD5或PLAIN方式

【mailx】Linux下使用自带mailx发送邮件_服务器

 三、测试邮件发送

邮件发送格式

1)  无邮件正文

mail -s "主题"  收件地址

# mail -s "邮件主题"     收件人邮箱

2) 有邮件正文

 mail -s "邮件主题"  收件地址 < 文件(邮件正文.txt)

# mail  -s  "邮件主题"  123456789@qq.com< /path/to/test.txt

 echo "邮件正文" | mail -s 邮件主题  收件地址

# echo "邮件正文内容" | mail -s "邮件主题"  123456789@qq.com

 cat 邮件正文.txt | mail -s 邮件主题  收件地址 

# cat  /path/to/test.txt | mail -s "邮件主题"  123456789@qq.com

#  echo "邮件内容" | mail -s "邮件主题" 收件人邮箱

# echo "It is a test mail from Michael." | mail -s "Test Mail"  123456789@qq.com

3)  带附件

 mail -s "主题"   -a  附件 < 文件(邮件正文.txt) 收件地址 

# mail -s "邮件主题"   -a   /path/to/test.tar.gz  <  /path/to/test.txt  123456789@qq.com

# mail -s "Test"  -a   /root/test.sh  <  /etc/passwd  123456789@qq.com

如遇 554 DT:SPM 发送的邮件内容包含了未被网易许可的信息,或违背了网易的反垃圾服务条款,可以自己邮箱发给自己!

   

【mailx】Linux下使用自带mailx发送邮件_服务器_02

   

【mailx】Linux下使用自带mailx发送邮件_邮件服务器_03

   

【mailx】Linux下使用自带mailx发送邮件_邮件服务器_04

   

转载:https://www.jianshu.com/p/a1c539477597?utm_campaign=hugo