Day03:Web架构OSS存储负载均衡CDN加速反向代理WAF防护
目录
WAF
CDN
OSS
反向代理
负载均衡
思维导图
章节知识点:
应用架构:Web/APP/云应用/三方服务/负载均衡等
安全产品:CDN/WAF/IDS/IPS/蜜罐/防火墙/杀毒等
渗透命令:文件上传下载/端口服务/Shell反弹等
抓包技术:HTTP/TCP/UDP/ICMP/DNS/封包/代理等
算法加密:数据编码/密码算法/密码保护/反编译/加壳
WAF
原理:Web应用防火墙,旨在提供保护
影响:常规Web安全测试手段会受到拦截
演示:免费D盾防护软件,D盾防火墙
常见WAF分类


未开启D盾,asp后门可以访问

开启D盾,asp后门不可以访问

CDN
原理:内容分发服务,旨在提高访问速度
影响:隐藏展示源IP,导致对目标测试失误
演示:阿里云备案域名全局CDN加速服务
流程:
- 准备备案域名
- 配置宝塔的域名绑定
- 配置CDN加速选项
- 添加DNS CNAME记录

OSS
原理:数据以对象(Object)的形式存储在OSS的存储空间(Bucket )中。
为什么要使用第三方存储?
- 静态文件会占用大量带宽
- 加载速度
- 存储空间
影响:上传的文件或解析的文件均来自于OSS资源,无法解析,单独存储
- 修复上传安全
- 文件解析不一样,脚本等文件不可被解析执行
- 但存在Accesskey泄露的问题
网盘OSD储存搭建:Cloudreve - 部署公私兼备的网盘系统
搭建流程:
- 启动应用
- 登录管理
- 配置存储信息
- 更改用户组存储属性
win server2008使用cloundreve搭建web服务

使用初始账号密码登录 可在线拖拽上传文件


阿里云OSS:
- 开通OSS
- 新建Bucket
- 配置Bucket属性
- 配置Access访问

OSS存储只是单纯的储存数据资源,没有代码执行环境,即使上传了后门脚本,也无法解析,相对于直接上传到网站服务器上,更加安全。
Accesskey隐患(附带一张近期我的Accesskey报警)——云安全

这个Accesskey存在泄露的风险
正/反向代理
正向代理为客户端服务,客户端主动建立代理访问目标(梯子)
反向代理为服务端服务,服务端主动转发数据给可访问地址
原理:通过网络反向代理转发真实服务达到访问目的
影响:访问目标只是一个代理,不是真实应用服务器
注意:正向/反向代理都是解决访问不可达问题,但是反向代理中可以通过重定向解析的功能操作,把访问指向别的web服务,导致反代理的站点指向和目标的资产没有任何关系
在宝塔里可以通过Nginx反向代理配置
正向代理

反向代理

nginx设置反向代理

负载均衡
原理:分摊到多个操作单元上进行执行,共同完成工作任务
影响:有多个服务器加载服务,测试过程中存在多个目标情况
演示:Nginx负载均衡配置
Windows2012 + BT宝塔面板 + Nginx
宝塔面板修改负载均衡配置,weight数值对应访问优先级。
配置好负载均衡后,对baidu.whgojp.top域名解析就会以1/2的概率分别访问这两个服务器
正常生产环境是搭建两个相同的服务,以防止一个服务器宕机后网站不能使用服务

负载均很设置案例

#BT定义负载设置
upstream fzjh{
server 121.43.145.189:80 weight=2;
server 121.41.59.211:80 weight=1;
}#定义访问路径 访问策略
location / {
proxy_pass http://fzjh/;
}
思维导图

相关文章:
Day03:Web架构OSS存储负载均衡CDN加速反向代理WAF防护
目录 WAF CDN OSS 反向代理 负载均衡 思维导图 章节知识点: 应用架构:Web/APP/云应用/三方服务/负载均衡等 安全产品:CDN/WAF/IDS/IPS/蜜罐/防火墙/杀毒等 渗透命令:文件上传下载/端口服务/Shell反弹等 抓包技术:…...
C++多线程同步(上)
多线程同步 引言总述详情互斥锁示例运行结果分析条件变量示例一实现分析优化运行结果示例二实现代码运行结果示例三实现代码运行结果读写锁示例实现代码注意分析运行结果附言实现运行结果运行结果个人心得引言 项目中使用多线程,会遇到两种问题,一种是对共享资源的访问时需要…...
猜猜心里数字(个人学习笔记黑马学习)
1.定义一个变量,数字类型,内容随意 2.基于input语句输入猜想的数字,通过if和多次elif的组合,判断猜想数字是否和心里数字一致 num5if int(input("请输入第一次猜想的数字:"))5:print("猜对了࿰…...
实用Pycharm插件
Pycharm的离线安装:https://plugins.jetbrains.com/ 需要根据对应的Pycharm/Goland版本选取所需的 对于实用的插件如下: 实时查看每一行的git blame信息: Gittoolbox 转换IDE的英文为中文:Chinese IDE侧格式化json字符串&#…...
数据结构试题练习
(1). 假如队列未满,现有变量data需要入队,请写出表达式; if( (tail1)%SEQLEN ! head ) {seqn[tail] data;tail (tail1)%SEQLEN; } (2). 假如队列未空,现在需要从队列取一个元素并赋值给变量data,请写出表达式; if( head ! tail ) {data se…...
s-table和columns初始化不完整,造成table文件的filter报错
问题 顺藤摸瓜找errorHandler.js文件 发现文件并没有什么问题 顺藤摸瓜找index.vue文件 首先找到报错的filter,发现与columnsSetting相关 找到columnsSetting发现等于columns 返回自己使用S-table组件的地方,发现columns初始化时仅初始化为ref()未表明…...
SLA 是什么?如何实现 SLA 管理
随着业务的不断壮大,为了满足日益增长的客户需求,网络必须保持与这些需求同步。同时,为了提高最终用户的体验,运维人员/网络管理员在监控企业级网络时遇到了不少瓶颈,必须不断审查网络,以确保提供的服务质量…...
火灾安全护航:火灾监测报警摄像机助力建筑安全
火灾是建筑安全中最常见也最具破坏力的灾难之一,为了及时发现火灾、减少火灾造成的损失,火灾监测报警摄像机应运而生,成为建筑防火安全的重要技术装备。 火灾监测报警摄像机采用高清晰度摄像头和智能识别系统,能够全天候监测建筑内…...
JavaScript 基础学习笔记(五):函数、作用域、匿名函数
目录 一、函数 1.1 声明和调用 1.2 形参和实参 1.3 返回值 二、作用域 2.1 全局作用域 2.2 局部作用域 三、匿名函数 3.1 函数表达式 3.2 立即执行函数 一、函数 理解函数的封装特性,掌握函数的语法规则 1.1 声明和调用 函数可以把具有相同或相似逻辑的代…...
Qt环境配置VTK
Qt与VTK的结合为开发者提供了强大的跨平台图形界面开发能力和三维可视化处理能力。本教程旨在详细介绍如何配置Qt环境以使用VTK库,从而为开发者打造高效、强大的三维可视化应用。 一、准备工作 在开始之前,确保您的开发环境中已经安装了Qt和CMake。Qt提…...
腾讯云最新活动_腾讯云促销优惠_代金券-腾讯云官网入口
腾讯云服务器多少钱一年?62元一年起,2核2G3M配置,腾讯云2核4G5M轻量应用服务器218元一年、756元3年,4核16G12M服务器32元1个月、312元一年,8核32G22M服务器115元1个月、345元3个月,腾讯云服务器网txyfwq.co…...
如何创建自己的Spring Boot Starter并为其编写单元测试
当我们想要封装一些自定义功能给别人使用的时候,创建Spring Boot Starter的形式是最好的实现方式。如果您还不会构建自己的Spring Boot Starter的话,本文将带你一起创建一个自己的Spring Boot Starter。 快速入门 创建一个新的 Maven 项目。第三方封装的…...
数据分析---常见处理逻辑
目录 数据清洗数据转换数据聚合数据筛选增删改查(以查为例)数据清洗 去除重复值:使用DISTINCT关键字去除重复行。//这将返回一个包含所有不重复城市的结果集 SELECT DISTINCT city FROM students;处理缺失值:使用IS NULL或IS NOT NULL判断是否为空值,并使用COALESCE或CASE…...
2024-02-26(金融AI行业概览与大数据生态圈)
1.最开始的风控是怎么做的? 人审 吃业务经验 不能大批量处理,效率低下 不适用于移动互联网的金融场景 2.建模的概念 建模就是构造一个数学公式,能将我们手上有的数据输入进去,通过计算得到一些预测结果。 比如初高中学习的…...
git忽略某些文件(夹)更改说明
概述 在项目中,常有需要忽略的文件、文件夹提交到代码仓库中,在此做个笔录。 一、在项目根目录内新建文本文件,并重命名为.gitignore,该文件语法如下 # 以#开始的行,被视为注释. # 忽略掉所有文件名是 a.txt的文件. a.txt # 忽略所有生成的 java文件, *.java # a.j…...
python爬虫实战:获取电子邮件和联系人信息
引言 在数字时代,电子邮件和联系人信息成为了许多企业和个人重要的资源,在本文中,我们将探讨如何使用Python爬虫从网页中提取电子邮件和联系人信息,并附上示例代码。 目录 引言 二、准备工作 你可以使用以下命令来安装这些库&a…...
post请求同时上传文件并传递其他参数的前后端写法
最近有一需求,post请求从前端上传一个文件同时传递一个参数,多次实验后记录下两种写法: 方法一: 前端:重点是设置请求头代码如下: getfile(event) {//input框输入文件let file event.target.files[0];l…...
【数仓】基本概念、知识普及、核心技术
一、数仓基本概念 数仓的定义: 数据仓库(Data Warehouse,简称DW或DWH)是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策。简言之,它是一个大型存储库,用于存储来…...
ky10-server docker 离线安装包、离线安装
离线安装脚本 # ---------------离线安装docker------------------- rpm -Uvh --force --nodeps *.rpm# 修改docker拉取源为国内 rm -rf /etc/docker mkdir -p /etc/docker touch /etc/docker/daemon.json cat >/etc/docker/daemon.json<<EOF{"registry-mirro…...
Linux的gdb调试
文章目录 一、编译有调试信息的目标文件二、启动gdb调试文件1、查看内容list/l:l 文件名:行号/函数名,l 行号/函数名2、打断点b:b文件名:行号/函数名,b 行号/函数名 与 查看断点info/i:info b3、删除断点d:…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
【Go】3、Go语言进阶与依赖管理
前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes࿰…...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...
C++中string流知识详解和示例
一、概览与类体系 C 提供三种基于内存字符串的流,定义在 <sstream> 中: std::istringstream:输入流,从已有字符串中读取并解析。std::ostringstream:输出流,向内部缓冲区写入内容,最终取…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序
一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...
[Java恶补day16] 238.除自身以外数组的乘积
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...
OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...
使用Spring AI和MCP协议构建图片搜索服务
目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式(本地调用) SSE模式(远程调用) 4. 注册工具提…...
人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...
MFC 抛体运动模拟:常见问题解决与界面美化
在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...
