linux下使用自带mail发送邮件

时间:2022-08-14 18:15:12

相比于使用脚本,这种更加简单

一般Linux发送报警邮件通过本地邮箱或外部邮箱服务器,我习惯使用本地邮箱发邮件,装个Sendmail安装启动,即可实现发送邮件功能,但会存在问题:

1、发件人默认显示主机名,有的会被邮件服务商当垃圾邮件处理,也可以使用mutt定义发件人解决这个问题,要麻烦一下。

2、发件延迟,正常的话,一分钟之内可以收到,延迟大的话,几个小时收不到也很正常,这样一来运维工程师没有及时收到告警邮件,耽误问题处理及时性。

    针对这两个问题,用外部邮箱就可以解决,你只需简单注册个国内的邮件服务商邮箱,如163,也可以使用公司邮箱,需要安装mailx工具,mailx是一个小型的邮件发送程序,安装很简单,如下:

CentOS:

root@linux-szge:/root # yum install mailx 
root@linux-szge:/root # vim /etc/mail.rc 

修改配置文件,我这里是使用qq邮箱发送

  1 set from=shenjianyu@thinktrader.net smtp=smtp.exmail.qq.com
  2 set smtp-auth-user=shenjianyu@thinktrader.net smtp-auth-password=邮箱密码
  3 set smtp-auth=login
                       

 

发送邮件测试:

root@linux-szge:/root # echo "测试邮件" | mail -s "测试" 976299670@qq.com 

成功:

linux下使用自带mail发送邮件