坚持#第273天~zabbix监控2(自动发现的总结、自动注册、微信报警、linux上网)

zabbix自动发现:

一:创建发现规则

配置-自动发现

名称:Local networkHaha

IP范围:192.168.1.1-255

检查-新的ICMP ping用于与其他对象ping的通的功能-添加

新的-Zabbix 客户端,键值:system.uname (system.uname方便后面自动分类Unix和Linux和Windows的系统类别)-添加-添加

二、主机自动加入主机组并关联模板

配置-动作-事件源改为自动发现-创建动作

名称:autoFindAction

不用管新的触发条件??不需要管

操作:

操作类型:添加主机-添加

新的-添加到主机 群组:linux servers-添加

新的-链接到模板:Template OS linux

 

管理-主机里面的ZBX是红色说明

 

zabbix自动注册:

 

HostMetadata=linux用于标示主机,能区分linux和windos系统

重启agent

 

控制中心:

网页:

关掉自动发现的规则和动作(因为自动注册和自动发现一样,两者不能同时开着,有排斥)

 

客户端:clone3

拷贝agent进来

注册的名称不变

修改客户端的配置文件

95:Server=监控中心的ip(为了被动模式生效最好写控制中心ip)

136:ServerActive=监控中心的ip(zhuce chengg dguanjian)

166:HostMetadata=linux

主机名:clone3

 

网页:

配置-动作-选自动注册创建动作

名称:auto-regist

zhuji yuan数据 似 linux  添加

动作

添加主机

添加到主机组:Linux Servers

操作类型的模板OS linux

更新

 

客户端:

重启服务

 

去网站观察

 

zabbix应用集:

自定义监控项:

clone1:

cat/proc/meminfo

UserParameter=memory.usage[*],/bin/cat/proc/meminfo |awk '/^$1/{print $$2}'这个*是变量,使用,memory.usage的一个应用集合,$符号要额外加一个

 

 

获取ip中LISTEN有多少个,wait有多少个:(思路:将那一列提取出来和ip一样处理)

netstat-tanp | awk ‘NR>2{print $6}’

netstat-tanp | awk ‘NR>2{state[$6]++}END{for(i in state){print state[i],i}}’哈哈,就像统计ip一样,利用到了万能公式

 

哈哈grep -i忽略大小写 -c “”  但是这个只能针对一个

netstat-tanp | grep -i “listen”|wc -l

 

最好用awk不要用cut、sort,因为服务器多了apache日志会很大,几个G,内存会不够用的,而awk是一行一行处理的,不会占用太大内存

 

客户机:clone3:

配置文件

293自定义监控项:UserParameter=stats.inf[*],netstat -tanp | grep -i “$1”|wc -l

重启服务

监控中心:

zabbix_get-s 监控对象ip  -k stats.info[listen]

结果出来了,但是还出现了一推权限的问题

 

客户端:

netstat-tanp | grep “agent”

vim/var/log/zabbix/zabbix_agent.log日志里面也没有什么提示

 

监控中心:

vim/var/log/zabbix/zabbix_agent.log日志里面也没有什么提示

 

客户端:

useradd tom

su - tom

netstat-tanp | grep -i “established”

发现有些pid文件看不到,去掉-tanp的p

配置文件:

293自定义监控项:UserParameter=stats.info[*],netstat -tan | grep -i “$1”|wc -l为什么要使用*呢?因为这是为了能够传参数,stats.info[*,*]第一个*是$1,第二个*是$2

 

监控中心:

zabbix_get-s 监控对象ip  -k stats.info[listen]

 

申请开网:

网卡配置文件:

注释IPADDR

BOOTPROTO=dhcp

重启网卡

 

企业微信百度一下

企业注册

注册完后登陆

我的企业-CorpID需要记住

通讯录-添加子部门

点勾,设置所在部门

这就是微信报警你要发给谁,那个部门那个人

自建应用,监控应用

AgentID需要记住

Secret需要记住

运维部-收件人的信息-账号名需要记住

 

CorpID=111

AgentID=222

Secret=333

账号名=444

 

我现在是NAT的怎么做呢?(注意)

网关、DNS

虚拟编辑器   NAT设置 网管

 

监控中心:

route adddefault gw 监控对象的ip

dns的vim resolv.conf

namesever 202.103.24.68这个是武汉电信的dns

pingbaidu.com监控中心能上网了

 

经验:关于网络的:关于上网的:将自动获取ip改为手动获取也能上网:

物理机:

如果自动获取ip能上网的话,cmd查看网关是多少,或在开始的任务栏里面有网络连接的图标,右键查看网关

 

然后将ip地址设置为网关的网段,这个网关的网段是在路由器主页里面设置的,最后再看一下你用的是什么网,电信、移动、还是联通?可以在百度里查看:

电信的就要查看电信的DNS,百度一下电信的DNS,然后添加DNS就行了

 

手机可以给电脑开热点,同样电脑也能给手机开热点,怎么开呢?

首先下载个360手机助手,然后点击左上角,出现寻找手机,点击那个wifi连接,下载完360免费wifi之后可以给手机开热点了,这个360免费wifi的快捷方式就出现在桌面上了

 

微信报警里面有个包拷贝到监控中心

./wechar--help

./wechar-agentid=222 -corpid=111 -corpsecret=333 -msg=”hello this is test” -user=444回车

微信那个网页:

企业应用-监控-接收消息,查看消息,手机上也能收到,(前提是监控中心能上网)

 

zabbix部分:

 

监控中心:

grep alert/etc/zabbix/zabbix_server.conf

有AlertScritpt

mv wechar/usr/lob/zabbix/alertscripts

 

zabbix网页:

管理-报警媒介类型-创建

名称:weixin

类型:脚本

脚本名称:wechat

脚本参数:-agentid=111,添加-corpid=222,添加-corpsecret=333,添加-msg={ALERT.MESSAGE}报警是什么信息就发什么信息,这个是宏,添加-user={ALERT.SENDTO}发给谁,大的添加按钮

管理-用户-定义一个可以接受报警媒介类型

Admin-添加类型weixin,收件人: 444

 

客户端:

systemctlstart zabbix-agent

网页:

配置-动作-触发器-boot_problem

操作,编辑

仅送到weixin点一下更新

监测中-问题

 

客户机:

df

12%没问题太小了,没有触发到界限

dd增加一下

 

zabbix网页中看看


周五测试:

开22端口老师有人来连接你的服务器,对于密码输入错误超过5次的人要把他们禁掉:

var/log/secure日志里面可以得到别人输入密码的信息

在哪可以禁止掉ip?防火墙或/etc/hosts.deny

计划任务里面每隔几分钟执行一下这个脚本

# 对于ssh输入密码连续错误3次的人会将它们拒绝掉ssh连入自己的服务器

# vimsshdeny.sh

#!/bin/bash

#author:litao

# 使用cut,不过最后还是要用到awk

>/var/log/secure

cat >>/etc/crontab <<ok

*/1    *   *    *    *  root  for i in $(echo '`grep"PAM 2" /var/log/secure | cut -d " " -f3`');do grep `echo'"$i"'` /var/log/secure | grep "Connection" | cut -d "" -f9;done | sort | uniq -c | tr -s " " | cut -d " "-f3 | awk '{print "sshd:"`echo '$0'`}' > /etc/hosts.deny

ok

 

# 使用awk:

>/var/log/secure

cat >>/etc/crontab <<ok

*/1 * * * *root for i in $(echo '`grep "PAM 2" /var/log/secure | awk '\'''{print'$3'}''\''`');do grep "`echo '$i'`" /var/log/secure | grep  "Connection" | awk '{print `echo'$9'`}';done | awk '{IP[`echo '$1'`]++}END{for (i in IP){print"sshd:"i}'} > /etc/hosts.deny

ok

 

# 我发现/var/log/secure是可以记录ssh登陆情况的,你直接vim进去删除所有的内容会导致日志无法记录的情况,此时需要重启systemctlrestart rsyslog服务,如果你想把/var/log/secure里面的内容清空的话,就需要用到> /var/log/secure清空命令,这个就不会导致不记录日志的问题了

 

# 对于ssh输入密码连续错误3次的人会将它们拒绝掉ssh连入自己的服务器的脚本

# 怎么定义秒级的计划任务啊?

# * * * * **是每分钟执行一次,也就是每60秒执行一次,我想60秒执行60次,就利用一个for循环,循环60次,每次花费1秒就行了呀

# * * * * ** root for l in `seq 60`;do 此处是你要写的代码 & sleep1;done   注意&必须要写,而且不能写成了&&

# 例如下面每秒钟计划任务、每秒计划任务:

>/var/log/secure

cat >>/etc/crontab <<ok

* * * * *root for l in $(echo '`seq 60`');do for i in $(echo '`grep "PAM 2"/var/log/secure | awk '\'''{print '$3'}''\''`');do grep "`echo '$i'`"/var/log/secure | grep "Connection" | awk '{print `echo '$9'`}';done | awk '{IP[`echo'$1'`]++}END{for (i in IP){print "sshd:"i}'} > /etc/hosts.deny& sleep 1;done

ok
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值