案例:最近新弄了一个项目,为了确保项目的安全。自己就做了一个zabbix检查ssh登录ip的东西,这里给大家分享下
步骤:
自定义zabbix检查ssh登录ip的key
cat /etc/zabbix/zabbix_agentd.d/sanguo_check_ssh.conf
UserParameter=sanguo.check.ssh, who | wc -l #这里的作用是检查ssh登录了几个终端
重启zabbix_agentd
写一个检查ssh登录ip的脚本
在zabbix上创建一个模板
创建应用程序,application 创建监控项item
自定义key
cat sanguo_check_ssh.conf
UserParameter=sanguo.check.ssh, who | wc -l
这里的主要作用是定义监控的时间范围
<a href="http://s3.51cto.com/wyfs02/M00/7F/8B/wKiom1ch1WyBB1TZAACjjWKRPmw523.png" target="_blank"></a>
创建trigger
这里的主要作用是检查ssh的登录终端数量,如果不为0 就触发报警
<a href="http://s3.51cto.com/wyfs02/M02/7F/8B/wKiom1ch1Z-QlTzGAABi7RdVy2c004.png" target="_blank"></a>
创建actions
当ssh登录终端在特定的时间不为0 的时候就触发脚本,踢掉登录的ssh并把ip加入防火墙
这里执行脚本要把zabbix加入sudo权限。zabbix客户配置文件开启对远程命令的支持EnableRemoteCommands=1
<a href="http://s5.51cto.com/wyfs02/M00/7F/8B/wKiom1ch1bfBvulTAAC8QcdjiXo753.png" target="_blank"></a>
这里就大功告成了
这里我把模板上传上来
<code> </code><code>检查</code><code>ssh</code><code>登录的脚本如下</code>
<code> </code><code>#!/bin/bash</code>
<code> </code><code>ip=`w | </code><code>awk</code> <code>'/用户/{print $3}'</code><code>`</code>
<code> </code><code>w | </code><code>awk</code> <code>'/用户/{print $2}'</code> <code>| </code><code>xargs</code> <code>-i pkill -</code><code>kill</code> <code>-t {}</code>
<code> </code><code>for</code> <code>IP </code><code>in</code> <code>$ip</code>
<code> </code><code>do</code>
<code> </code><code>if</code> <code>[ $IP == </code><code>"ip"</code> <code>];</code><code>then</code>
<code> </code><code>echo</code> <code>"attention:The invasion from $IP of office"</code> <code>| mail -s </code><code>"attention,please check"</code> <code>[email protected]</code>
<code> </code><code>else</code>
<code> </code><code>iptables -I INPUT 1 -s $IP -j DROP </code>
<code> </code><code>echo</code> <code>"attention:The invasion from $IP of outside"</code> <code>| mail -s </code><code>"attention,please check"</code> <code>[email protected]</code>
<code> </code><code>fi</code>
<code> </code><code>done</code>
本文转自 shouhou2581314 51CTO博客,原文链接:http://blog.51cto.com/thedream/1768720,如需转载请自行联系原作者