Zabbix应用监控及Web监控

Zabbix应用监控及Web监控

zabbix监控java程序JVM

在Zabbix中,JMX监控数据的获取由专门的代理程序来实现,即Zabbix-Java-Gateway来负责数据的采集,Zabbix-Java-Gateway和JMX的Java程序之间通信获取数据

image-20230817152449138

Zabbix数据收集器

zabbix-java-gateway
zabbix-agent

Pometheus 监控程序

角色 IP
zabbix-server 10.0.0.71
zabbix-java-gateway 10.0.0.5
zabbix-agent 10.0.0.5

image-20230817152536048

# 安装java程序
[root@lb01 zabbix_agentd.d]# rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-java-gateway-5.0.36-1.el7.x86_64.rpm

# 启动java-geteway
[root@lb01 zabbix_agentd.d]# systemctl start zabbix-java-gateway

# 修改zabbix-server配置文件(10.0.0.71)
[root@zabbix ~]# vim /etc/zabbix/zabbix_server.conf
#java-gateway的主机地址,zabbix-server主动找gateway获取java数据
297 JavaGateway=172.16.1.5
#java-gateway默认端口10052
305 JavaGatewayPort=10052
#启动进程轮询java-gateway,fork出来指定的子进程数量
313 StartJavaPollers=5

# 重启zabbix-server(10.0.0.71)
[root@zabbix ~]# systemctl restart zabbix-server

开启tomcat的远程jvm配置文件

# 安装tomcat
yum install -y tomcat

# 修改tomcat启动脚本
[root@lb01 ~]# vim /usr/libexec/tomcat/server
#!/bin/bash

. /usr/libexec/tomcat/preamble

MAIN_CLASS=org.apache.catalina.startup.Bootstrap

FLAGS="$JAVA_OPTS"
OPTIONS="-Dcatalina.base=$CATALINA_BASE \
-Dcatalina.home=$CATALINA_HOME \
-Djava.endorsed.dirs=$JAVA_ENDORSED_DIRS \
-Djava.io.tmpdir=$CATALINA_TMPDIR \
-Djava.util.logging.config.file=${LOGGING_PROPERTIES} \
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"

CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=12345
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Djava.rmi.server.hostname=172.16.1.5"
if [ "$1" = "start" ] ; then
  FLAGS="${FLAGS} $CATALINA_OPTS"
  if [ "${SECURITY_MANAGER}" = "true" ] ; then
    OPTIONS="${OPTIONS} \
    -Djava.security.manager \
    -Djava.security.policy==${CATALINA_BASE}/conf/catalina.policy"
  fi
  run start
elif [ "$1" = "stop" ] ; then
  run stop
fi

# 重启tomcat
systemctl restart tomcat

#jvm配置文件解释
CATALINA_OPTS="$CATALINA_OPTS
//启用远程监控JMX
-Dcom.sun.management.jmxremote
//jmx启用远程端口,Zabbix添加时必须一致
-Dcom.sun.management.jmxremote.port=12345
//不开启用户密码认证
-Dcom.sun.management.jmxremote.authenticate=false
//不启用ssl加密传输
-Dcom.sun.management.jmxremote.ssl=false
//运行tomcat主机的IP地址
-Djava.rmi.server.hostname=10.0.0.5"

[root@lb01 init.d]# netstat -lntup
tcp6       0      0 :::12345                :::*                    LISTEN      63126/java     

image-20230817101339753

image-20230817101443237

# 重新加载配置文件缓存
[root@zabbix-server ~]# zabbix_server -R config_cache_reload

image-20230817153104401

web场景监控

Web网站中什么是动态网站,什么是静态网站

静态网站:纯静态网站就是服务器的源代码和客户端的源代码一致。

动态网站:比如: 每次用户访问的时候,内容都是在内存中动态生成的。动态网站支持登陆,支持用户交互,所以用户在请求动态网站时,会给客户端下发一个叫sessionID的内容,那么客户端则会将SessionID保存至浏览器的cookie中。

当用户访问Web网站时,session和cookie是如何进行工作的

1) 当用户首次访问动态网站时,是不会携带cookie信息,那么在服务端返回网页的时候,会给该客户端的浏览器分配一个唯一的sessionID,客户端会该sessionID存储至浏览器的Cookie中。

2) 当用户再次访问网站时,浏览器会在Header头信息添加Set-Cookie,Set-Cookie携带的则是该网站对应的sessionID信息,服务端接收后会进行校验

使用curl命令模拟网站登录

# 1.保存cookie
[root@zabbix-server ~]# curl -L -c cook -b cook http://10.0.0.71:90/index.php

# 2.携带cookie和登录信息参数,访问zabbix页面
[root@zabbix-server ~]# curl -L -c cook -b cook -d 'name=Admin&password=zabbix&autologin=1&enter=Sign+in' http://10.0.0.71:90/index.php

# 3.访问任何页面只需要,携带session去访问
[root@zabbix-server ~]# curl -L -c cook -b cook http://10.0.0.71:90/zabbix.php?action=dashboard.view

5.0web检测

创建web场景

image-20230817110725581

填写web场景配置

image-20230817110953158

配置访问网页步骤

image-20230817111609920

配置登录网页步骤1

image-20230817113150493

配置登录网页步骤2

image-20230817114346033

# 3.4版本(前后端不分离)
{sid} regex:name="sid" value="([0-9a-z]{16})"

# 5.0版本(前后端分离)
{sid} regex:name="csrf-token" content="([0-9a-z]{16})"

配置检测是否登录步骤

image-20230817114530970

配置退出页面步骤

image-20230817115137625

配置检测是否退出步骤

image-20230817115325197

配置完成

image-20230817115441137

image-20230817115529445

wordpress的web检测

收集场景配置(在登陆时打开F12,查看Network下的wp-login.php中的Payload)

image-20230817164433151

image-20230817172019127

使用curl命令模拟网站登录

# 1.保存cookie
[root@lb01 code]# curl -L -c cook -b cook http://10.0.0.5:8071/wp-login.php

# 2.携带cookie和登录信息参数,访问wordpress页面
[root@lb01 code]# curl -L -c cook -b cook -d 'log=admin&pwd=123&rememberme=forever&wp-submit=登录&redirect_to=http://10.0.0.5:8071/wp-admin/&testcookie=1' http://10.0.0.5:8071/wp-login.php

_wpnonce: 42a9aef5c8
{_wpnonce} regex:name="_wpnonce" value="([0-9a-z]{10})"

# 如果是域名访问的,请在/etc/hosts中进行域名解析
# 如果是购买的域名,请在网站上进行域名解析使其可以使用域名访问

创建web监测

image-20230817173458537

image-20230817173526474

填写web场景配置

image-20230817173620355

配置访问网页步骤

image-20230817175212965

配置登陆网页步骤

image-20230817175436762

配置检测是否登陆步骤

image-20230817181800424

配置退出页面步骤

获取注销页面负载字段

image-20230817182313791

image-20230817183808113

image-20230817184023825

配置检测是否退出步骤

image-20230817184041009

配置完成

image-20230817182613936

image-20230817183948542

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇