1, 下载php
apt install php 或
yum install php
2. 用php命令来判断ip归属地
vi ip.php
<?php $ip="192.168.1.109"; $json=file_get_contents('http://ip.taobao.com/service/getIpInfo.php?ip='.$ip); $arr=json_decode($json); echo $arr->data->country; echo $arr->data->area; echo $arr->data->region; echo $arr->data->city; echo $arr->data->isp; ?>
测试: php ip.php
3.1 检测登录IP是否包含在文件normal_ip.txt中
#!/bin/bash for i in `who | grep "(" | cut -d "(" -f 2 | cut -d ")" -f 1` do count=`echo $i | grep "[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}" | wc -l` if [ $count -ne 1 ];then ip=`arp -a $i | cut -d "(" -f 2 | cut -d ")" -f 1` else ip=$i fi count=`grep $ip normal_ip.txt | wc -l` if [ $count -ne 1 ];then sudo sed -i '2s@^.*$@$ip="'$ip'";@' ip.php extremely_address=`sudo php ip.php` hostname=`hostname` echo "$ip异常登录$hostname主机,归属地:$extremely_address" fi done
3.2 检测登录IP是否包含在文件normal_ip.txt中,并且判断IP是否属于内网或深圳市
#!/bin/bash for i in `who | grep "(" | cut -d "(" -f 2 | cut -d ")" -f 1` do count=`echo $i | grep "[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}\.[0-9]\{1,\}" | wc -l` if [ $count -ne 1 ];then ip=`arp -a $i | cut -d "(" -f 2 | cut -d ")" -f 1` else ip=$i fi count=`grep $ip normal_ip.txt | wc -l` if [ $count -ne 1 ];then sudo sed -i '2s@^.*$@$ip="'$ip'";@' ip.php extremely_address=`sudo php ip.php` hostname=`hostname` count=`echo $extremely_address | grep 内网 | wc -l` count2=`echo $extremely_address | grep 深圳 | wc -l` if [ $count -eq 0 -a $count2 -eq 0];then echo "$ip异常登录$hostname,归属地:$extremely_address" else echo "$ip正常登录$hostname,归属地:$extremely_address" fi fi done
4. crontab 执行以上命令每分钟一次
相关推荐
shell脚本监控rocketmq集群节点异常通过mail465发送邮件通知管理员,可配置化,可以实现配置若干个管理员接收异常信息邮件。
可配置化shell脚本监控rabbitmq集群,如果rabbitmq运行异常,发送邮件通知管理员。亲自整理无任何坑。
可配置化shell脚本监控kafka-connect集群节点,节点异常发送邮件通知管理员,亲自整理无坑。
可配置化shell脚本监控zookeeper集群节点,如果节点运行状态异常发送邮件通知单个或多个管理员
通过shell脚本定时自动监控kafka集群节点是否正常运行,如果kafka异常关闭,马上邮件通知配置的单个或多个管理员。
该程序使用场景说明:主要用域Linux服务器监控程序日志,如出现关键字异常则触发相应的动作或告警操作,通知到邮件联系人
常用shell脚本, Dos攻击防范(自动屏蔽攻击IP).sh 一键部署等等 Linux系统发送告警脚本.sh MySQL数据库备份单循环.sh MySQL数据库备份多循环.sh nginx 访问访问日志按天切割.sh nginx.conf nginx访问日志分析...
最近公司需要在Linux下监控tomcat的服务,一旦tomcat服务存在异常或者宕机,重启tomcat保证服务的正常运行,由于Linux下有Shell脚本可以实现此效果,下面是Linux下shell脚本监控Tomcat的状态并实现自动启动的步骤。...
主要介绍了shell脚本监控mysql主从状态,如果异常则邮件警告,需要的朋友可以参考下
18个Linux Shell脚本经典案例(1-18) 脚本 Dos攻击防范(自动屏蔽攻击IP) Linux系统发送告警脚本 MySQL数据库备份单循环 MySQL数据库备份多循环 nginx 访问访问日志按天切割 nginx nginx访问日志分析脚本 一键查看...
18个Linux Shell脚本经典案例合集,内含: Dos攻击防范(自动屏蔽攻击IP).sh Linux系统发送告警脚本.sh MySQL数据库备份单循环.sh MySQL数据库备份多循环.sh nginx 访问访问日志按天切割.sh nginx访问日志分析脚本.sh...
elasticsearch集群节点监控脚本异常通过mail465发送邮件通知
shell脚本自动监测系统cpu资源,异常彪高时,自动打印应用线程日志文件
可配置化shel脚本监控redis集群节点,如果节点运行异常,发送邮件到配置一个或多个管理员邮箱,无任何坑
本文介绍在Linux系统下几种常见的监控需求及其shell脚本的编写。 文章目录: 1.Linux使用 Shell 检查进程是否存在 2.Linux使用 Shell检测进程 CPU 利用率 3.Linux使用 Shell检测进程内存使用量 4.Linux使用 Shell...
主要介绍了监控php-fpm并自动重启服务的shell脚本,脚本的主要功能:不断检查网站的状态,如果异常就重启php-fpm服务,需要的朋友可以参考下
Linux系统下 1.Python脚本监控cassandra集群节点状态,发送告警邮件; 2.shell 脚本修复异常; 3.crontab 设置定时任务定时执行。
shell脚本/usr/local/scripts/receve.sh内容: #!/bin/bash #funtion:keep receve.php running PHP=/usr/local/php5/bin/php PROGRAM=receve.php #start dameo $PHP /home/httpd/$PROGRAM >>/usr/local/scripts/...
现用shell脚本实现指定进程的运行状态。直接上代码。 #!/bin/sh echo `date` echo Start $0--------- echo #每十秒监视一下 sec=10 #取得指定进程名为mainAPP,内存的使用率,进程运行状态,进程名称 eval $(ps | ...