CentOS7雷池WAF基于Docker搭建部署_centos 部署waf,2024年最新又是一年金九银十

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip204888 (备注网络安全)
img

正文

什么是雷池

长亭科技耗时近 10 年倾情打造的 WAF

为什么是雷池

便捷性

采用容器化部署,一条命令即可完成安装,0 成本上手安全配置开箱即用,无需人工维护,可实现安全躺平式管理

安全性

首创业内领先的智能语义分析算法,精准检测、低误报、难绕过

语义分析算法无规则,面对未知特征的 0day 攻击不再手足无措

高性能

无规则引擎,线性安全检测算法,平均请求检测延迟在 1 毫秒级别并发能力强,单核轻松检测 2000+ TPS,只要硬件足够强,可支撑的流量规模无上限

高可用

流量处理引擎基于 Nginx 开发,性能与稳定性均可得到保障内置完善的健康检查机制,服务可用性高达 99.99%

WAF 部署架构

社区版雷池以反向代理方式接入,优先于网站服务器接收流量,对流量中的攻击行为进行检测和清洗,将清洗过后的流量转发给网站服务器

安装雷池

配置需求
  • 操作系统:Linux
  • 指令架构:x86_64
  • 软件依赖:Docker 20.10.14 版本以上
  • 软件依赖:Docker Compose 2.0.0 版本以上
  • 最小化环境:1 核 CPU / 1 GB 内存 / 5 GB 磁盘
uname -m                 # 查看指令架构
docker version           # 查看 Docker 版本
docker compose version   # 查看 Docker Compose 版本
docker-compose version   # 同上(兼容老版本 Docker Compose)
cat /proc/cpuinfo        # 查看 CPU 信息
cat /proc/meminfo        # 查看内存信息
df -h                    # 查看磁盘信息
lscpu | grep ssse3       # 确认 CPU 是否支持 ssse3 指令集

有三种安装方式供选择

  • 在线安装 : 推荐安装方式
  • 离线安装 : 服务器无法连接 Docker Hub 时选择
  • 一键安装 : 最简单的安装方式
在线安装

如果服务器可以访问互联网环境,推荐使用该方式

bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)"
离线安装

如果你的服务器无法连接互联网环境,或连接 Docker Hub 网络不稳,可以使用镜像包安装方式

首先,下载 雷池社区版镜像包 并传输到需要安装雷池的服务器上

cat image.tar.gz | gzip -d | docker load
mkdir -p safeline        # 创建 safeline 目录
cd safeline              # 进入 safeline 目录

下载 编排脚本 并传输到 safeline 目录中

echo "SAFELINE_DIR=$(pwd)" >> .env
echo "IMAGE_TAG=latest" >> .env
echo "MGT_PORT=9443" >> .env
echo "POSTGRES_PASSWORD=$(LC_ALL=C tr -dc A-Za-z0-9 </dev/urandom | head -c 32)" >> .env
echo "REDIS_PASSWORD=$(LC_ALL=C tr -dc A-Za-z0-9 </dev/urandom | head -c 32)" >> .env
echo "SUBNET_PREFIX=172.22.222" >> .env
docker compose up -d
使用牧云助手安装

也可以使用 牧云主机管理助手 进行一键安装

登录雷池

浏览器打开后台管理页面 https://:9443。根据界面提示,使用 支持 TOTP 的认证软件或者小程序 扫描二维码,然后输入动态口令登录(腾讯身份验证器APP

配置防护站点

界面操作

添加后,在客户端执行 curl -H “Host: <域名>” http://<雷池 IP>:<雷池监听端口> ,若能获取到业务网站的响应,并且站点上 “今日访问量” 增加,则代表配置成功

如何配置域名、端口、上游服务器 工作原理 雷池社区版主要以 反向代理 的方式工作,类似于一台 nginx 服务。部署时,需要让网站流量先抵达雷池,经过雷池检测和过滤后,再转给原来的网站业务。

如果你不了解反向代理的工作原理,可以通过以下几种雷池常见的工作场景,来了解如何配置站点。

假设你的网站域名为 example.com,如图

在单独设备上部署雷池(推荐)

如果你可以提供一台独立设备部署雷池,那么你需要:

  1. 将网站流量指向雷池。例如将域名解析到雷池
  2. 禁止网站服务器上,所有除了雷池之外的访问。例如配置防火墙,或者直接把网站服务器放到内网

效果大致如下:

雷池上相应的站点配置为:

域名:公网域名 example.com 端口:80 或 443/ssl 上游服务器:网站服务器的地址 http://192.168.10.10

直接在网站服务器上部署雷池

提示:不建议这样部署,因为这样单机的负载更高、设备宕机的概率更大。非纯净的环境还会提高安装失败的概率,故障排查也会比较困难

如果能接受这些风险,雷池也可以直接部署在网站服务器上。你需要:

  1. 将原本监听 80 或 443/ssl 端口的网站服务改到其他端口,让雷池监听设备的 80 或 443/ssl 端口
  2. 使网站服务仅允许本机访问。例如配置系统防火墙、Iptables

效果大致如图

此时雷池上的站点配置为:

  • 域名:公网域名 example.com
  • 端口:80 或 443/ssl
  • 上游服务器:http://127.0.0.1:<网站服务改后的端口>
和其他反代设备一起部署的情况

雷池作为反代设备,可以在任意位置接入主链路。只要将接入位置的流量指向雷池,并在雷池的 “上游服务器” 处填写请求的下一跳服务器地址即可。例如

配置后网站无法访问,如何排查

**(步骤一)**如果按照上文指引部署雷池、配置了站点,但网站仍无法访问,建议按照以下步骤排查

明确 “网站无法访问” 的具体表现:

  • 如果 502 Bad Gateway tengine

大概率是是雷池的上游服务器配置不正确,或者雷池无法访问到上游服务器。请继续按下面步骤排查,重点排查步骤 6、7

如果请求能够返回但是十分缓慢

  • 首先确认服务器负载是否正常。
  • 在客户端执行命令,检查雷池服务器与上游服务器的网络:curl -H "Host: " -vv -o /dev/null -s -w ‘timenamelookup: %{timenamelookup}\ntimeconnect: %{timeconnect}\ntimestarttransfer: %{timestarttransfer}\ntimetotal: %{timetotal}\n’ http://<上游服务器地址>
  • 如果 time_namelookup 时间过大,请检查 dns server 配置
  • 如果 time_connect 时间过大,请检查雷池与上游服务器之间的网络状态
  • 如果 time_starttransfer 时间过大,请检查上游服务器状态,是否出现资源过载情况

如果不是以上情况,继续下一步

(步骤二)客户端执行 curl -H “Host: <域名>” http://<雷池 IP>:<雷池监听端口> 。正常情况下,应能获取到业务网站的响应,并且站点的 “今日访问量” +1

如果浏览器无法访问,但这一步正常获取到响应,大概率是因为

  • 测试过程中,网站域名还没有切到雷池,浏览器测试时访问的是 http(s)😕/<雷池 IP>,恰好业务服务上有 Host 验证,所以拒绝了该请求。这种情况需要修改本机 host,把域名解析到雷池 IP,再访问 http(s)😕/<域名>,才能准确测试。
  • 网站业务做了其他一些特殊处理。例如访问后 301 跳转到了其他地址,需要具体排查网站业务的响应内容

**(步骤三)**如果不能获取到响应,继续下一步

雷池设备上执行 curl -H “Host: <域名>” http://<雷池 IP>:<雷池监听端口>。正常情况下,应能获取到业务网站的响应,并且站点上 “今日访问量” +1

  • 如果步骤二失败而这里成功,说明客户端到雷池之间的网络存在问题。请排查网络,保证客户端可访问到雷池
  • 如果不能获取到响应,继续下一步

(步骤四 )雷池设备上执行 curl -H “Host: <域名>” http://127.0.0.1:<雷池监听端口>。正常情况下,应能获取到业务网站的响应,并且站点的 “今日访问量” +1

  • 如果步骤三失败而这里成功,且 telnet <雷池 IP> <雷池监听端口> 返回 Unable to connect to remote host: Connection refused,大概率是被雷池设备上的防火墙拦截了。可能是操作系统本身的防火墙,还有可能是云服务商的防火墙。请根据实际情况逐项排查,开放雷池监听端口的访问。
  • 如果不能获取到响应,继续下一步

雷池设备上执行 netstat -anp | grep <雷池监听端口> 确认端口监听情况。正常情况下,应该有一个 nginx 进程监听在 0.0.0.0:<雷池监听端口>。没有的话请通过社群或者 Github issue 提交反馈,附上排查过程。有的话继续下一步

雷池设备上 curl -H “Host: <域名>” <上游服务器地址>。正常情况下,应能获取到业务网站的响应

  • 如果步骤四失败而这里成功,请通过社群或者 Github issue 提交反馈,附上排查过程
  • 如果这步失败,说明雷池和上游服务器之间的网络存在问题。请排查网络,确保雷池可以访问到上游服务器

测试防护效果

确认网站可以正常访问

根据雷池 WAF 配置的网站参数访问你的网站。

打开浏览器访问 http://:<端口>/

若网站访问不正常,请参考 网站无法访问

网站协议默认是 http,勾选 ssl 则为 https

主机名可以是雷池的 IP,也可以是网站的域名(确保域名已经解析到雷池)

端口是你在雷池页面中配置的网站端口

尝试手动模拟攻击

打开浏览器,访问以下地址即可模拟出对应的攻击:

还有兄弟不知道网络安全面试可以提前刷题吗?费时一周整理的160+网络安全面试题,金九银十,做网络安全面试里的显眼包!

王岚嵚工程师面试题(附答案),只能帮兄弟们到这儿了!如果你能答对70%,找一个安全工作,问题不大。

对于有1-3年工作经验,想要跳槽的朋友来说,也是很好的温习资料!

【完整版领取方式在文末!!】

93道网络安全面试题

内容实在太多,不一一截图了

黑客学习资源推荐

最后给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

😝朋友们如果有需要的话,可以联系领取~

1️⃣零基础入门
① 学习路线

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

image

② 路线对应学习视频

同时每个成长路线对应的板块都有配套的视频提供:

image-20231025112050764

2️⃣视频配套工具&国内外网安书籍、文档
① 工具

② 视频

image1

③ 书籍

image2

资源较为敏感,未展示全面,需要的最下面获取

在这里插入图片描述在这里插入图片描述

② 简历模板

在这里插入图片描述

因篇幅有限,资料较为敏感仅展示部分资料,添加上方即可获取👆

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注网络安全)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

n/111f5462e7df433b981dc2430bb9ad39.png#pic_center)

② 简历模板

在这里插入图片描述

因篇幅有限,资料较为敏感仅展示部分资料,添加上方即可获取👆

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注网络安全)
[外链图片转存中…(img-jpnCJ5CB-1713306899563)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 30
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值