Shell 邮件发送告警测试

1.先编辑mail配置文件

bash 复制代码
#cat  /etc/mail.rc



#开启ssl
set ssl-verify=ignore

#证书目录,下方为centos系统证书默认位置,也自行生成证书并指定
set nss-config-dir=/etc/pki/nssdb

# 配置的第三方smtp服务器的地址及端口
set smtp=smtps://smtp.163.com:465 
                        
# 认证方式
set smtp-auth=login

# 发送邮件的邮箱账号
set smtp-auth-user=<your mail>
# 发送邮件的客户端授权码
set smtp-auth-password=<password>
# 设置发信人邮箱和昵称
set from=<your mail >

注:客户端授权码百度搜索查看方式即可

2.监控free内存发送告警

bash 复制代码
#free_check.sh 

#!/bin/bash
LOCAL_IP="192.168.159.128"
QQ_MAIL="你的接收邮箱地址"

#查询本机的剩余内存
FREE=$(free -h | grep -i "Mem" |awk '{print $4}')
if [[ $? -eq 0 ]];then
        echo -e "开始发送邮件"
        echo "$LOCAL_IP FREE IS $FREE" | mail -s "内存监控" $QQ_MAIL
        if [[ $? -eq 0 ]];then
                echo -e "Success send $QQ_MAIL "
        fi
fi

运行:

注:上方有关于无法识别证书颁发者的报错,不过不受影响,邮件已经成功发送了

相关推荐
XIAOHEZIcode3 小时前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
唐青枫5 小时前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux
AlfredZhao2 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐3 天前
Linux内存扩容指南
linux
zylyehuo4 天前
Linux 彻底且安全地删除文件
linux
用户805533698034 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297914 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
Web3探索者6 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo6 天前
Linux系统中网线与USB网络共享冲突
linux
Sokach10157 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux