#!/bin/bash #msg='监控服务器登录用户:\n主机名: '`hostname`'\n监控主机IP: '`ifconfig eth0|awk -F '[ :]+' 'NR==2 {print $3}'`'\n监控登录用户: '`whoami`'\n监控登录IP: '`who am i |awk -F '[()]' '{print $2}'`'\n监控登录时间: '`date '+%Y-%m-%d-%H:%M:%S'`'' #获取相关登陆信息 name=`hostname` ip=`ifconfig eth0|awk -F '[ :]+' 'NR==2 {print $3}'` user=`whoami` _ip=`who am i |awk -F '[()]' '{print $2}'` _time=`date '+%Y-%m-%d-%H:%M:%S'` #查询登陆地址并返回相应信息 addr=`curl -q -s http://freeapi.ipip.net/$_ip | awk -F '"' '{print $2"-"$4"-"$6}'` #自定义接入钉钉函数 function SendMessageToDingding(){ #钉钉地址 url="https://oapi.dingtalk.com/robot/send?access_token=eaa3f42c6ba8bbab9ca9847cb3137c" #推送到钉钉 res=`curl -XPOST -s -L -H "Content-Type:application/json" -H "charset:utf-8" $url -d " { \"msgtype\": \"text\", \"text\": { \"content\": \"监控主机名:$1\n主机IP: $2\n 登陆用户:$3\n 登陆IP: $4\nIP归属:$5\n登陆时间:$6\" } }"` echo $res } #subject=`echo -e $msg` body="ECS监控ssh登陆" #SendMessageToDingding $subject $body #调用函数 SendMessageToDingding $name $ip $user $_ip $addr $_time $body
本文作者为lishengyu,转载请注明。