Linux远程执行hostname命令,监控服务器是否被篡改
来源:互联网 发布:如何解除单位网络权限 编辑:程序博客网 时间:2024/05/22 11:31
nagios通过远程执行hostname命令,就可以判断服务器是否最近被重新非法安装。
在编写过程遇到一个小麻烦,输入的比较的hostname和其输出的hostname,输出结果一致,但是脚本输出就判断不同。后来加入测试字符串长度代码,知道是命令输出的结果,有空格。所以要加入处理,去掉多余空格,再比较关键字。这点需要大家注意。
代码如下:
#!/bin/bash 2 3 #ssh_remoteHostname 4 #History: 5 # by xzy 2017/04/18 6 7 PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin 8 export PATH 9 OK=0 10 WARNING=1 11 CRITICAL=2 12 UNKNOWN=3 13 14 15 usage() 16 { 17 printf "function:\n 18 CH_ComputerRoomEnviroment file\n 19 [host IP ] -H [Usename] -U ... \n 20 Usage Option:\n 21 -H: host's web IP\n 22 -U: Username\n 23 -P: Password\n 24 -C: Command\n 25 -k: keyword\n" 26 exit $UNKNOWN 27 } 48 while getopts :H:U:P:C:k:h Parm 49 do 50 case $Parm in 51 H)IP=$OPTARG 52 ;; 53 U)UserName=$OPTARG 54 ;; 55 P)PassWord=$OPTARG 56 ;; 57 C)WarnValue=$OPTARG 58 ;; 59 k)CriticalValue=$OPTARG 60 ;; 61 h | ?) 62 usage 63 ;; 64 esac 65 done 66 67 68 69 70 hostname=`/usr/lib/nagios/plugins/ssh2.exp $IP $UserName $PassWord $WarnValue | grep "$CriticalValue" ` 79 80 hostname1=`echo $hostname | sed s/[[:space:]]//g` 81 82 #echo $hostname1 83 #echo $CriticalValue 84 #echo ${#CriticalValue} 85 #echo ${#hostname1} 86 87 #if [ "$hostname" != "$CriticalValue" ];then 88 # echo 'Critical!Hostname is not normal!Hostname:'$hostname 89 # exit $CRITICAL 90 #fi 91 92 93 94 95 if [ "$hostname1" = "$CriticalValue" ]; then 96 97 echo 'OK!Hostname is normal!Hostname:'$hostname 98 exit $OK 99 else100 echo 'Critical!Hostname is not normal!Hostname:'$hostname101 exit $CRITICAL102 103 fi
0 0
- Linux远程执行hostname命令,监控服务器是否被篡改
- linux远程服务器后台执行命令
- linux服务器监控命令
- Linux 服务器监控命令
- Linux服务器监控命令
- linux 执行远程命令
- 远程一键执行linux服务器上的命令
- linux服务器java环境被篡改修复
- 如何校验向服务器传输的信息是否被篡改
- 支付宝获取远程服务器ATN结果,验证是否是支付宝服务器发来的请求是超时导致交易签名被篡改
- linux中查看服务器名称的命令 -- hostname
- Linux服务器性能监控命令
- Windwos远程执行Linux命令
- linux 远程命令执行不
- java远程执行linux命令
- java远程执行linux命令
- java远程执行linux命令
- linux shell 远程执行命令
- Java守护线程简介
- 剑指offer 22---判断元素出栈、 入栈顺序的合法性
- 进程间通信-匿名管道
- Java transient关键字解析
- IntelliJ远程调试教程
- Linux远程执行hostname命令,监控服务器是否被篡改
- WebService教程详解
- Hadoop和Spark的处理模型比较
- docker build命令详解
- mac 下安装php7全过程
- Disruptor简介
- raise errorclass(errno, errval) sqlalchemy.exc.InternalError: (pymysql.err.InternalError) (1366, u"
- Vue关于数据绑定出错
- 八大排序算法