服务器有时不知道谁登录了系统,出现了问题也无法找到责任人。谁动了服务器而无从可知。不如在服务器安装个监控,监视下每天登录服务器的用户。
Linux 系统
注册钉钉机器人,获取机器人的 webhook 地址
登录服务器编写以下代码
之后就可以放心了,有任何登录,都会收到消息。再也不用提心吊胆了。
Windows 系统
获取机器人链接步骤与以上相同
windows 下编写 bat 脚本
首先创建脚本文件.bat 执行推送钉钉功能 登录推送文件 in.bat 退出登录 out.bat
简单推送代码参考如下:
curl "https://oapi.dingtalk.com/robot/send?access_token=你钉钉机器人的token" -H "Content-Type: application/json" -d "{\"msgtype\": \"text\",\"text\": {\"content\":\"login IN %date:~0,10% %time:~0,5%\"}}" -X POST
curl "https://oapi.dingtalk.com/robot/send?access_token=你钉钉机器人的token" -H "Content-Type: application/json" -d "{\"msgtype\": \"text\",\"text\": {\"content\":\"login OUT %date:~0,10% %time:~0,5%\"}}" -X POST
由于 windows 系统不自带 curl 功能无法直接访问接口推送消息 需要下载一个 curl 工具 curl.zip
下载后解压,并配置解压后的目录到系统 PATH,之后 CMD 中输入 curl --help 测试是否成功
现在设置监控就可以实现推送,但是.bat 文件执行时会出现一个黑框,让人很是害怕,所以经过查询找到了一种方法
编写 vbs 文件里边执行.bat 文件,就不会出现黑框,创建.vbs 文件 in.vbs out.vbs 代码如下:
createobject("wscript.shell").run "这里填对应 bat 存放的位置",0
createobject("wscript.shell").run "C:\IN.bat",0
createobject("wscript.shell").run "C:\OUT.bat",0
设置登录断开监控
1.登录 windows 服务器 打开控制面板中的管理工具
2.打开任务计划程序
3.点击创建任务 名称自定义 in
4.点击触发器,点击新建 开始任务下拉框选择“当连接到用户会话时”下方出现对应设置选“远程计算机连接”确定
5.点击操作,点击新建 操作下拉框选择“启动程序”下方程序或脚本选择自己创建的那个 in.vbs 文件 注:vbs 文件与 bat 文件最好不要存放在有空格的文件夹下
6.相同操作创建 out 任务 触发器选择“当从用户会话断开连接时”脚本选择自己创建的那个 out.vbs 文件
这样就实现了简单监控登录退出功能
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于