11月23日更新
看腻了 之前的通知样式,稍微修改了一下
服务器ssh登录之后实现钉钉通知,第一时间掌握服务器登录情况可以看看到登陆的用户、登陆者ip 、服务器ip 等信息非常方便,其实也是非常简单,只要使用 shell命令就可以完成
1、新建一个文件:vi /etc/ssh/sshrc
2、输入内容
#!/bin/bash
#获取登录者的用户名
user=$USER
#获取登录者的IP地址
ip=${SSH_CLIENT%% *}
ip2=$(curl -s https://ip.fm/?ip=$ip)
#获取登录的时间
time=$(date +%F%t%k:%M)
#服务器的IP地址,自行修改
server='192.168.1.20'
#服务器名称
servername='服务器00233'
#获取公网IP地址
publicip=$(curl -s https://ip.fm)
#--------------------------
#-----------替换下面接口中的0 为自己的 token ---------
curl 'https://oapi.dingtalk.com/robot/send?access_token=000000000000000000' \
-H 'Content-Type: application/json' \
-d '
{
"msgtype": "markdown",
"markdown": {
"title": "'"$servername SSH登录通知"'",
"text": "'"### **$servername SSH登录通知**
\n
\n ###### 时间: $time
\n ----
\n ##### **来访者信息▼**
\n ###### 用户: $user
\n ###### [来访 $ip2](https://ip.fm/?ip=$ip)
\n ----
\n ##### **服务器信息▼**
\n ###### $servername
\n ###### 本机IP: $server
\n ###### [公网$publicip](https://ip.fm)
\n ![$servername](https://输入底部图片链接地址.png)
\n "'"
},
}' >/dev/null 2>&1
3、保存:
按后 esc键后 输入
:wq
进行保存操作
4、输入保存之后设置下执行权限:chmod 755 /etc/ssh/sshrc 即可食用
钉钉机器人不会建 可以百度一下
输入 sh /etc/ssh/sshrc 测试一下 脚本有没有写错,如果没有收到通知,可能是钉钉机器人的安全设置没设置好,可以机器人的安全设置里面 使用 关键词 或者IP,我就使用了关键词"服务器登录告警" 因为方便
如果出现报错,使用:bash /etc/ssh/sshrc 命令测试是否能执行