ubuntu16 使用命令发送邮件

前提

有两个QQ邮箱,使用其中一个当发件服务器,发给另一个qq,打开发件的qq邮箱账户设置->生成受权码,这个受权码是要当做密码用的,如果用其它邮箱服务的话可以直接使用密码


图片.png

1-安装系统工具:
sudo apt-get install mailutils heirloom-mailx

2-系统文件配置:
suod vim /etc/s-nail.rc

set from=52****[email protected]
set smtp=smtp.qq.com
set smtp-auth-user=52****[email protected]
set smtp-auth-password=igc*******hbgfj  #授权码,直接使用的密码
set smtp-auth=login

3-邮件测试:

echo '文本内容。。。' | mail -s "邮件主题" 735*****[email protected]
echo '文本内容。。。' | mail -a /etc/s-nial.rc -a /etc/profile -s "邮件主题" 73******[email protected]

监控服务器是否在线,然后发送邮件:

#!/bin/bash
echo "Monitor ot server! bash path:"$PWD", date:"`date` >> log.txt

#======================start===========================================
curFlagMail=1
oldFlagMail=1
sendMail(){
    echo "paremare s1="$1 >> log.txt
    if [ "$1" == "1" ];then
        echo "sendMail ota-service aliving!" >> log.txt
        echo 'OTA-SERVER aliving moitored!' | mail -s "OTA_SERVER MONITOR"  mail address
    else
        echo "sendMail ota-service dieing!" >> log.txt
        echo 'OTA-SERVER dieing moitor!' | mail -s "OTA_SERVER MONITOR"  mail address
    fi
}

echo 'OTA-SERVER moitor starting!, interval 30 minutes check ota server' | mail -s "OTA_SERVER MONITOR"  mail address
#==while 半个小时 check 一次服务器是否正常工作=======================
while true
do
   ps_cert_num=0
   ps_472_num=0

   #check ota servier alive
   ------》download 文件
   sleep 1 
   ps_cert_num=`cat cert.cer  |grep CERTIFICATE |wc -l`
   ps_472_num=`cat S_SDM845-472.txt |grep 472 |wc -l`

   if [ $ps_cert_num -ne 2 ] || [ $ps_472_num -ne 1 ]; then
       curFlagMail=0
   else
       curFlagMail=1
   fi

   echo "curFlagMail="$curFlagMail", oldFlagMail=="$oldFlagMail >> log.txt
   #send mail
   if [ $curFlagMail -ne $oldFlagMail ]; then
       sendMail $curFlagMail
       oldFlagMail=$curFlagMail
   fi
  
  `rm cert.cer S_SDM845-472.txt`
   #sleep 30 分钟, 1800=30*60
   sleep 1800
done

安装过程中出现问题:
在配置文件,我使用smtp.163.com , 在进行邮件测试中出现了error:550 User has no permission
主要是因为163 服务器授权问题解决方法可以参考:
https://blog.csdn.net/suxiaohanqi/article/details/56844087

出现问题后,就直接配置公司邮件系统,测试Pass

REF:
https://www.zhaokeli.com/article/8619.html

你可能感兴趣的:(ubuntu16 使用命令发送邮件)