10 2024 档案
摘要:一,配置多个接收器: 配置文件: global: resolve_timeout: 5m smtp_smarthost: 'smtp.163.com:465' smtp_from: '发件人邮箱' smtp_auth_username: '发件人邮箱的用户名' smtp_auth_password:
阅读全文
摘要:一,下载alertmanager 1,官网下载地址 https://prometheus.io/download/ 2,原理图: 二,下载和安装 1,下载安装包: 选择linux+amd64的版本下载: # wget https://github.com/prometheus/alertmanage
阅读全文
摘要:一,添加数据源 1,添加新连接->选择类型为loki 2, 点击 add new data source 按钮 输入loki源的地址,通常我们会把grafana和loki安装在同一机器上 点 save & test按钮,提示successfully表示成功连接到了源 点击 数据源 按钮,可以看到已经
阅读全文
摘要:一,什么是promtail? 1,promtail是loki架构的组件,负责收集日志并将其发送给 loki 2,loki系统架构的三个组成部分: 系统架构十分简单,由以下3个部分组成 : Promtail 是代理,负责收集日志并将其发送给 loki 。 Loki 是主服务器,负责存储日志和处理查询
阅读全文
摘要:一,Loki是什么? 1, Loki 是 Grafana 团队开源的一款高可用、高拓展、多租户的日志聚合系统,和 ELK 的组件功能一样,Loki 有负责日志存储查询的主服务,有在客户端负责收集日志并推送的代理服务,还有 Grafana 最拿手的可视化面板展示。 2,loki的工作流程:promta
阅读全文
摘要:一,配置页面语言 1,登录后, 点击头像下菜单中->Profile 2,在Preferences一栏下面,找到Language一项 选择中文(简体)后点 Save 按钮即可 二,查看效果: 界面已调整为中文
阅读全文
摘要:一,查看可用的dashboard(数据面板) 手动添加dashboard,需要一个个手动操作, 但事实上我们需要的数据多数都已经规范化, 所以grafana上有现成的dashboard可以导入, 数据面板的查看地址: https://grafana.com/grafana/dashboards/ 如
阅读全文
摘要:一,grafana的用途 1,grafana是什么? grafana 是用 go 语言编写的开源应用, 它的主要用途是大规模指标数据的可视化展现 它是现在网络架构/应用分析中最流行的时序数据展示工具 2,官网: https://grafana.com/ 二,下载grafana 1,下载地址: htt
阅读全文
摘要:一,从服务端所在机器测试被监控节点是否9100端口打开 1,用telnet $ telnet 172.16.13.1 9100 2,用nc $ nc -nvv 172.16.13.1 9100 二,在服务端prometheus中添加一个监控节点 编辑配置文件: vi prometheus.yml 内
阅读全文
摘要:一,官网地址 https://www.prometheus.io/download/ 如图: 二,下载 通过wget从命令行下载: [root@web prometheus]# wget https://github.com/prometheus/node_exporter/releases/dow
阅读全文
摘要:一,官方下载地址: https://www.prometheus.io/download/ 如图: 二,下载 用wget从命令行下载 [root@backup prometheus]# wget https://github.com/prometheus/prometheus/releases/do
阅读全文
摘要:一,nginx配置:只允许get/post方法访问 配置规则: location / { if ($request_method !~ ^(GET|POST)$ ) { return 403; } ... } 效果:使用PUT等非GET/POST方法 二,modsecurity配置: 只允许get/
阅读全文
摘要:一,什么时候使用chain 1,规则链("chain")的作用与AND一致。仅当多条规则中的变量检查同时匹配成功时,才会触发链式规则的第一条规则中指定的阻断性操作。链式规则中如果有一条规则没有匹配成功,则表示整个规则链匹配失败,不会执行对应的阻断性动作 2, 如果需要判断的条件大于等于2个,除最后一
阅读全文
摘要:一,?:的功能 ()表示捕获分组,()会把每个分组里的匹配的值保存起来,使用$n(n是一个数字,表示第n个捕获组的内容) (?:)表示非捕获分组,和捕获分组唯一的区别在于,非捕获分组匹配的值不会保存起来 例子:#该规则表示,如果请求方式是PUT、CONNECT、TRACE、DELETE的任意一种方式
阅读全文
摘要:一,根据参数的值进行判断: 1,对所有参数进行判断 规则: SecRule ARGS "@rx attack" "phase:1,log,deny,id:1" 测试: http://a.b.com/index.html?name=attack 2,根据变量名进行判断 规则:判断name变量中是否包含
阅读全文
摘要:一,默认自启动服务和默认运行服务的区别 服务的类型: Type:定义启动时的进程行为。它有以下几种值。 simple:默认值,执行ExecStart指定的命令,启动主进程 forking:以 fork 方式从父进程创建子进程,创建后父进程会立即退出 oneshot:一次性进程,Systemd 会等当
阅读全文
摘要:一,列出服务 查看服务的命令: systemctl list-unit-files --type=service --state=enabled 结果: UNIT FILE STATE PRESET aegis.service enabled disabled aliyun.service enab
阅读全文
摘要:一,列出所有服务: systemctl list-units --type=service 二,列出所有运行中的服务 1, 用--state指定状态 systemctl list-units --type=service --state=running 2,直接grep systemctl list
阅读全文
摘要:一,拦截包含一个字符串的访问: 1,例子:如下: 11.89.39.11 - - [23/Oct/2024:04:47:22 +0800] "GET /.git/config HTTP/1.1" 404 548 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x6
阅读全文
摘要:一,现象: 原来的过滤规则 failregex = ^<HOST> .* "(GET|POST|HEAD).*HTTP.*" (404|400|403|503) .*$ ignoreregex =.*(robots.txt|favicon.ico|jpg|png) 一条nginx的记录 35.203
阅读全文
摘要:一,modsecurity规则的级别:paranoia level modsecurity根据规则可能存在的误报情况,设置了规则的级别,称之为PL(paranoia level),共有4个级别,分别为1/2/3/4,级别越高,漏报越少,误报越多。用户可以根据实际业务情况适当调整,默认设置PL=1,可
阅读全文
摘要:一,各权重分数的初始化: 所在文件 rules/REQUEST-901-INITIALIZATION.conf 规则: SecAction \ "id:901200,\ phase:1,\ pass,\ t:none,\ nolog,\ tag:'OWASP_CRS',\ ver:'OWASP_CR
阅读全文
摘要:一,每个事务的生命周期: 如图: 每个事务在modsecurity需要经历5个阶段,在每个阶段可能需要解析等操作,然后调用相应阶段的规则进行匹配,对应规则中的phase 阶段一:request headers请求头,这是modsecurity最先接触到的数据, 需要验证请求头相关的规则,并根据请求头
阅读全文
摘要:一,是否启用防火墙 SecRuleEngine是接受来自ModSecurity-CRS目录下的所有规则的安全规则引擎。因此,我们可以根据需求设置不同的规则。 #SecRuleEngine On:将在服务器上激活ModSecurity防火墙。它会检测并阻止该服务器上的任何恶意攻击。 #SecRuleE
阅读全文
摘要:一,设置debug日志: 1, modsecurity的设置注意要先创建保存调试日志的目录 SecDebugLog /opt/logs/modsecuritylogs/debug.log SecDebugLogLevel 5 2,设置完成后重启nginx,使设置生效 systemctl restar
阅读全文
摘要:一,bash脚本 #!/bin/bash # backup base # rpm va log backup 的路径 back_base=/storage/logs/rpmvalogs if [ ! -d ${back_base} ];then mkdir -p ${back_base} fi #
阅读全文
摘要:一,测试环境: PHP 8.3.9 Laravel Framework 11.15.0 接口没访问数据,只是从redis取数据 测试前已开启opcache+jit 二,未开启optimize时访问10次 测试前先执行4个clear,避免有之前做的cache root@lhdpc:/data/api#
阅读全文
摘要:一,测试环境: PHP 8.3.9 Laravel Framework 11.15.0 接口没访问mysql数据库,只是从redis取数据 二,不开启opache+jit 访问10次数据用时,单位:毫秒 148 147 129 128 129 124 128 127 236 129 三,开启opac
阅读全文
摘要:一,自定义异常 例子: <?php namespace App\Exceptions; use Exception; class ApiException extends Exception { public function __construct($message = null, $code =
阅读全文
摘要:一,php8中的一些错误如致命错误用Exception捕捉不到 例子: <?php try { echo "try"; $a = 100/0; var_dump($a); }catch (\Exception $e){ echo "catch"; $result = $e->getMessage()
阅读全文
摘要:一,从库机器上: 从库mysql日志中的报错信息给出了日志文件名和end_log_pos 2024-10-12T09:41:23.761203Z 414 [ERROR] [MY-013146] [Repl] Replica SQL for channel '': Worker 1 failed ex
阅读全文
摘要:一,安装busybox 1,用dnf安装 [root@backup ~]# dnf install busybox 2,安装后查看版本 [root@backup ~]# busybox --help BusyBox v1.35.0 (2022-01-19 00:00:00 UTC) multi-ca
阅读全文
摘要:一,查看用户登录的日志: 1,查看用户的登录记录: [root@backup ~]# last 说明:它的数据从/var/log/wtmp文件中读取 [root@backup ~]# ll /var/log/wtmp -rw-rw-r--. 1 root utmp 36480 Oct 12 15:1
阅读全文
摘要:一,列出可登录shell的用户 root@lhdpc:~# grep bash /etc/passwd root:x:0:0:root:/root:/bin/bash liuhongdi:x:1000:1000:liuhongdi,,,:/home/liuhongdi:/bin/bash 只显示用户
阅读全文
摘要:一,systemctl 列出所有自启动的单元: [laoliu@web ~]$ systemctl list-unit-files --state=enabled 列出所有自启动的服务: [laoliu@web ~]$ systemctl list-unit-files --type=service
阅读全文
摘要:一,主从复制,从库报错, 因为主库上执行了一条针对从库上不存在数据库的sql 二,解决: 1,执行下面的sql即可, stop replica; SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; start replica; 需要注意以前的stop slave/start s
阅读全文
摘要:一,文档地址: https://docs.golaravel.com/docs/middleware 注意选择11这个版本 二,添加全局中间件时,需要添加到bootstrap/app.php文件中: 1, use App\Http\Middleware\EnsureTokenIsValid; ->w
阅读全文
摘要:一,问题的表现 当我们在es的索引库中搜索 朝阳新城 时,搜索结果中有包含 朝阳新城 这四个字的结果,也有只包含朝阳或只包含新城的结果,这是analyzer在对关键词做了分词之后从索引库中返回,如果说:我只想要包含朝阳新城这四个字的结果,需要怎么做? 二,解决: 1,默认的match搜索会对搜索内容
阅读全文
摘要:一,firewalld对一个请求会适用哪个zone? 1, 当接收到一个请求时,firewalld具体使用哪个zone? firewalld是通过三个步骤来判断的: source,即:源地址 interface,即:接收请求的网卡 firewalld.conf中配置的默认zone 通常值为:Defa
阅读全文