- 博客(56)
- 收藏
- 关注
原创 JWT加解密应用方案设计与实现
JWT是一种开放标准(RFC 7519),用于在网络上安全传输信息的简洁、自包含的方式,它通常被用于身份验证和授权机制。JWT 由三部分组成:头部(Header) 、载荷(Payload) 、 签名(Signature)。包含了关于生成该 JWT 的信息以及所使用的算法类型。包含了要传递的数据,例如身份信息和其他附属数据。JWT 官方规定了 7 个字段,分别是:签发者(Issuer)、主题(Subject)、接收者(Audience)、过期时间、生效时间、签发时间、编号(JWT ID)。
2024-11-24 19:34:26
1092
原创 Knife4j调试全局对象参数自动化
Knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案,其中具备了在线调试功能,但是在许多场景当中需要在请求头或者请求体当中携带认证信息,这样就会增加调试的繁琐性。所以针对JWT类型的接口,可以使用Knife4j自带的功能,该功能是Knife4j自2.0.6版本开始新增的一项特性功能,在每个接口进行调试Tab中,开发者可以根据Knife4j提供的全局变量,在接口调用之前编写一段JavaScript脚本,当接口调用成功后,Knife4j会执行该脚本。
2024-11-12 16:36:02
810
原创 SpringCloud Sentinel 服务治理详解
这篇文章,根据这篇文章流控规则可以完美的实现效果,但是其他的授权规则、系统规则小编试了好像业务并不生效,主要是格式的问题,有兴趣的可以自行研究一下,另外一种办法就是自己写业务逻辑实现Nacos规则拉取回显然后修改推送,方法千千万,合适自己的业务场景最重要~上面配置的意思就是,当请求超过200毫秒的调用是慢调用,统计最近1000毫秒内的请求,如果请求量超过2次,并且慢调用比例不低于0.5,也就是两个请求里面有一半的请求命中,则触发熔断,熔断时长为20秒。然后进入half-open状态,放行一次请求做测试。
2024-11-07 15:06:15
972
1
原创 SpringCloud Gateway 网关路由全自动实现方案
网关启动后监听Nacos注册中心上的路由配置,而业务启动后,从Nacos注册中心拉取已有的路由配置信息,首先判断自身的路由是否存在,若存在则删除后将自身最新的路由信息添加上去,最后路由配置信息发布到Nacos上,网关监听到变化后将重新写入路由信息到内存当中。实现动态路由需要将路由配置保存到Nacos,然后在网关监听Nacos中的路由配置,并实现配置热更新,然而网关路由并不是自定义业务配置属性,本身不具备热更新功能!启动的过程中我们可以过滤一下日志看看拉取回来的配置和重新发布的配置信息。
2024-10-15 18:42:20
911
原创 SpringCloud网关聚合knife4j方案
*** Swagger Properties配置信息实体类* @author Kim同学*/@Data@ToString//配置 API (com.xxx.controller) 扫描路径//配置 API 文档标题//配置 API 版本信息//配置 API 文档描述//配置 API 文档许可 描述 或 协议//配置 API 文档许可 描述 或 协议 的 URL//配置 API 文档 联系人 信息//配置 API 文档 联系人 主页 URL。
2024-10-12 19:46:11
855
原创 Docker快速启动清单
以下容器均使用 Docker version 24.0.2 版本测试使用,这里需要注意一下,高版本的Docker不支持镜像V1版本,不知道怎么操作才可以让它支持,所以推荐使用低版本如果觉得不直观,或者觉得有点乱,可以访问以下网址,可能会直观点您可以通过修改daemon配置文件来使用加速器注意:这样做可能会导致现有的容器和镜像无法正常工作,因为它们的路径指向旧的位置,你需要重新启动这些容器,或者重新创建它们以确保它们的配置指向新的volume路径,推荐在一开始部署Docker时操作!${version}
2024-05-09 11:12:06
1130
原创 8.2K star!史上最强Web应用防火墙
长亭雷池SafeLine是长亭科技耗时近 10 年倾情打造的WAF(Web Application Firewall),一款敢打出口号 “不让黑客越雷池一步” 的 WAF,我愿称之为史上最强的一款Web应用防火墙,足够简单、足够好用、足够强的免费且开源的 WAF,基于业界领先的语义引擎检测技术,作为反向代理接入,保护你的网站不受黑客攻击。
2024-03-20 16:59:40
1132
3
原创 部署Docker私有镜像仓库Harbor
Harbor 是为企业用户设计的开源镜像仓库项目,包括了权限管理(RBAC)、LDAP、审计、安全漏洞扫描、镜像验真、管理界面、自我注册、HA等企业必需的功能,同时针对中国用户的特点,设计镜像复制和中文支持等功能。官网:https://goharbor.io/
2024-02-24 15:40:58
867
原创 Redis的四种部署方案
这篇文章介绍Reids最为常见的四种部署模式,其实Reids和数据库的集群模式差不多,可以分为 Redis单机模式部署、Redis主从模式部署、Redis哨兵模式部署、Cluster集群模式部署,其他的部署方式基本都是围绕以下几种方式在进行调整到适应的生产环境,最常见的还是集群模式的部署
2023-11-01 20:44:44
5080
原创 CDN+Nginx反向代理来隐藏c2地址
通过借助CDN和Nginx反向代理和HTTPS来隐藏真实c2服务器Nginx反向代理:通过Nginx对外部流量转发到本地,再设置防火墙只允许localhost访问cs端口达到IP白名单的效果
2023-10-23 20:05:36
2784
原创 编译安装Nginx+GeoIP2自动更新+防盗链+防爬虫+限制访问速度+限制连接数
此文章是Nginx的GeoIP2模块和MaxMind国家IP库相互结合,达到客户端IP访问的一个数据记录以及分析,同时还针对一些业务需求做出对Nginx中间件的控制,如:防盗链、防爬虫、限制访问速度、限制连接数等该篇文章是从一个热爱搞技术的博主。
2023-10-20 21:42:46
2056
原创 Redis 缓存满了怎么办?
综上所述我们了解到,Redis 内存淘汰策略和过期回收策略是完全不同的概念,内存淘汰策略是解决 Redis 运行内存过大的问题的,通过与maxmemory比较,决定要不要淘汰数据,根据参数,决定使用何种淘汰策略,在 Redis 4.0 之后已经有 8 种 淘汰策略了,默认的策略是noeviction当内存超出时不淘汰任何键值,只是新增操作会报错。
2023-08-21 13:44:16
2227
2
原创 关于Java反射
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象.
2023-08-10 16:20:36
157
原创 关于Java的IO流开发
Properties类表示了一个持久的属性集。Properties可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。Hashtable的子类,map集合中的方法都可以用该集合没有泛型。键值都是字符串它是一个可以持久化的属性集,键值可以存储到集合中,也可以存储到持久化的设备(硬盘、U盘、光盘)上。键值的来源也可以是持久化的设备有和流技术相结合的方法/*** 集合对象,Properties集合,继承Hashtable,实现HashMap,能与IO流交互的集合。
2023-08-07 17:19:41
203
原创 关于Java的多线程实现
内置的线程池, 不推荐生产使用:上述的方法不推荐在生产当中使用,在生产场景下必须使用ThreadPoolExecutor构建线程池,这样可以明确线程池的运行规则,创建符合自己业务场景需要的线程池,避免资源耗尽的风险。
2023-07-30 17:23:47
319
原创 MySQL自动添加系统时间
总结:字段的默认值设置CURRENT_TIMESTAMP的时候,添加新内容的时候,对应的时间会填充为当前时间,但是修改的时候时间保持不变,如果默认值设置为CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,添加新内容的时候,对应的时间会填充为当前时间,修改的时候,时间也会刷新为当前修改的时间。注意:上述创建表的字段类型从timestamp改为datetime也是可以的,COMMENT表示注释,可以知道此字段作用。
2023-07-20 11:05:40
1584
原创 自建DNSlog服务器
在某些情况下,无法利用漏洞获得回显。但是,如果目标可以发送DNS请求,则可以通过DNS log方式将想获得的数据外带出来。网上公开提供dnslog服务有很多,比如dnslog.cn、知道创宇、三叶草等等,但是这些提供的域名是固定的,现在一些比较大型的企业已经把这些域名也加入到监控范围之中了。如果自建一个dnslog服务,就能很好的规避这种情况。
2023-07-14 16:24:05
2473
原创 关于Java的网络编程
随着计算机网络规模的不断扩大,对IP地址的需求也越来越多,IPV4这种用4个字节表示的IP地址面临枯竭,因此IPv6 便应运而生了,IPv6使用16个字节表示IP地址,它所拥有的地址容量约是IPv4的8×1028倍,达到2128个(算上全零的),这样就解决了网络地址资源数量不够的问题。由于TCP协议的面向连接特性,它可以保证传输数据的安全性,所以是一个被广泛采用的协议,例如在下载文件时,如果数据接收不完整,将会导致文件数据丢失而不能被打开,因此,下载文件时必须采用TCP协议。
2023-07-14 11:02:26
608
原创 Redis实现短信登录设计
但是需要注意的是,自定义的登录拦截器只是针对需要登录访问的请求进行了拦截,如果用户访问没被拦截的请求,该拦截器不会生效,则token令牌不能进行更新,当用户长时间访问不需要登录的页面,token令牌失效,再去访问被拦截的请求,则需要重新登录,这是不合理的。我们应当在返回用户信息之前,将用户敏感信息进行隐藏,采用的核心思路就是创建UserDTO类,该类没有用户敏感信息,在返回用户信息之前,将有用户敏感新的的User对象转换为没有敏感信息的UserDTO对象,就可以有效的避免用户信息被泄露的问题。
2023-07-04 11:08:51
111
原创 MSSQL中开启CDC导致事务日志空间被占满事件记录
The transaction log for database '***' is full due to 'REPLICATION'(数据库“***”的事务日志已满,原因为“REPLICATION”).
2023-01-11 11:34:49
669
原创 Zabbix阿里云短信告警
(不一定要这样子的环境,可根据具体的生产环境配置)添加完签名再添加模板,有不清楚的问阿里服务人员模版内容可以根据需求变更,这里使用的模版是以下内容接收到的样子大概长这个样子这里需要注意以下几点:1、变量属性选择“其他”;2、申请后要和客户沟通,及时修改,不然会被审核不通过鼠标放到右上角用户处,可以看到一个AccessKey管理,入不记得秘钥可以重新生成此脚本的路径需要和你的zabbix_server.conf文件中AlertScriptsPath定义的路径一致,否则后面会报错找不到脚本执行!!!
2022-12-05 17:21:27
1853
原创 CentOS 7部署Oracle数据库
Oracle 11g安装包:百度云链接:https://pan.baidu.com/s/1eVnOtliqTCw0cyrIg7T8sA提取码: 访问我的博客获取 https://if010.com/database/install_oracle.html。
2022-11-13 18:11:08
1239
原创 CentOS 7部署Weblogic 14
相关资源下载:JDK:JDK 1.8.0Weblogic:Weblogic 14.1.1.0创建weblogic用户安装weblogic创建loc文件创建response文件运行安装脚本,安装时会进行检查,如jdk版本检查、cpu速度、交换空间大小、临时空间大小等,复制时会显示百分比进度条,时间较长,请耐心等待。创建domain域创建create_domain.rsp文件配置weblogic启动weblogic启动完成,访问页面浏览器访问:
2022-11-04 15:13:36
703
原创 Aria2 for Mac (免HomeBrew)
是,这个插件很省事,但启用条件是你安装了HomeBrew且运行起来需要再下十来个G的Xcode……这对急用的我非常不友好,当然,如果你硬盘够大,网速够快,你也可以这么做。这个网页关不关都行,它只是个显示页面,嫌这个页面难看也可以去下载其他界面。,用Chrome打开(用什么浏览器都行,但我用 Chrome 插件配合 Aria2,所以用 Chrome 默认打开)注意:这里一定要注意的是,解压之后保持文件夹前面带“.”,同时路径一定是用户文件夹下。,所以是隐藏文件,所以建议将压缩包下载到。
2022-10-17 14:54:30
2543
6
原创 MariaDB修改最大连接数
SQL_Remaining_Delay:当 Slave_SQL_Running_State 等待,直到MASTER_DELAY秒后,Master执行的事件,重启mariadb服务,再次查看mariadb数据库最大连接数,最大连接数是214,并非我们设置的4096。SQL_Delay:一个非负整数,表示秒数,Slave滞后多少秒于master。再次查看mariadb数据库最大连接数,可以看到最大连接数已经是4096。N为多少秒,该语句设置从数据库延时N秒后,再与主数据库进行数据同步复制。
2022-10-13 14:47:45
2421
原创 最全openstack部署教程
目前为止所用到的端口罗列在下面,可以供大家查询# 远程访问服务# 时间同步服务# 数据库服务# 消息队列服务# 分布式内存服务# 站点服务# 镜像服务# 计算服务# 网络服务# 存储服务# 编排服务对于OpenStack的食用就到此处了,还有计费,数据库啥的有时间的话我会在补上去的吧~~~
2022-09-29 20:27:34
11956
2
原创 MySQL的原始监控方式
任何东西不应过重关注其外表,要注重内在的东西,往往绚丽的外表下会有对应的负担和损耗。mysql 数据库的监控支持通过 SQL 方式从 performance_schema 库中访问对应的表数据,前提是初始化此库并开启监控数据写入。对于监控而言,不在于手段的多样性,而需要明白监控的本质,以及需要的监控项内容,找到符合自身项目特色的监控方式。在选择监控工具对 mysql 监控时,需要关注监控工具本身对于数据库服务器的消耗,不要影响到其自身的使用。
2022-09-20 20:16:22
294
原创 Mac修改LaunchPad(启动台)图标大小的数量
对于经常打开启动台的Mac用户来说肯定注意到Mac的所有程序排列图标有点大,一页能显示的的数量也很有限,尤其是在外接大屏显示器的情况下,看起来更加明显。只需在终端输入几条指令即可,想设置回默认方法也是同样的简单。其实Mac系统是支持启动台所有程序的数量自定义的,而且图标大小也会根据应用数量自动适应。1、调整每一列显示图标数量,8表示每一列显示8个,数字部分可根据个人喜好进行设置。2、调整多少行显示图标数量,这里我用的是默认的5,数字部分你也可以设置成6或者其他。以上命令都是干嘛的?
2022-09-07 16:53:27
943
原创 ELK日志分析平台部署
ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件。新增了一个FileBeat,它是一个轻量级的日志收集处理工具Agent,Filebeat占用资源少,适合于在各个服务器上搜集日志后传输给Logstash,官方也推荐此工具。
2022-09-07 11:33:41
434
原创 Zabbix的加密传输
Zabbix版本从3.0之后,开始支持Zabbix server, Zabbix proxy, Zabbix agent, zabbix_sender and zabbix_get之间的通信加密,加密方式有预共享密钥PSK和证书加密。加密配置是可选项,一些proxies和agents可以使用证书认证加密通信,另外一些可以使用PSK加密通信,而剩余的可以不使用加密进行通信。要想支持加密功能,我们必须在编译安装的时候把加密库编译进Zabbix里面,编译的时候加上--with-openssl。
2022-08-24 16:51:41
908
原创 Zabbix常用监控项
ram.info[Cached] --- 检测内存的缓存使用量,返回整数,需要定义1024倍ram.info[MemFree] --- 检测内存的空余量,返回整数,需要定义1024倍ram.info[Buffers] --- 检测内存的使用量,返回整数,需要定义1024倍#!/bin/bash}}}$1tcp[TIMEWAIT] --- 检测TCP的驻留数,返回整数tcp[ESTAB] --- 检测TCP的连接数,返回整数。
2022-08-24 16:24:02
5562
3
Nginx离线编译安装相关依赖包
2023-10-20
CobaltStrike4.0版本(内含使用说明书)
2022-11-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人