当前位置: 首页 > news >正文

飞致云1panel + 雷池WAF

可能有许多人都有这个需求:为自己的个人站点套上WAF,增加安全性,本文将介绍如何将1panel面板深度结合长亭雷池防火墙实现为个人站点套上WAF并且自动续签ssl证书。

前提条件:

  1. 服务器IP已绑定域名

  2. 完整的1panel环境

  3. 1panel未安装OpenResty

  4. 支持 TOTP 的认证软件,如腾讯身份验证器,谷歌身份验证器,微软身份验证器,FreeOTP,Bitwarden等

安装OpenResty

如图找到OpenResty,点击安装。
在这里插入图片描述

在安装配置页注意:修改HTTP/HTTPS的默认端口,后期WAF对外使用会占用80,443端口。这里改为180,1443,点击确认安装OpenResty。

在这里插入图片描述

此处安装取决于服务器连接 dockerhub 的速度,若为国内服务器或速度过慢,可在容器-配置-镜像加速中填入如下配置:

https://dockerproxy.com
https://hub-mirror.c.163.com
https://docker.m.daocloud.io
https://ghcr.io
https://mirror.baidubce.com
https://docker.nju.edu.cn

站点搭建

如图,按照顺序点击创建网站

在这里插入图片描述

静态网站搭建

点击创建静态网站主域名填写站点域名其他域名填写 127.0.0.1:任意未占用端口,如此处127.0.0.1:10000,点击确定创建静态网站。

在这里插入图片描述

反向代理网站搭建

反向代理本机的各种工具类站点,以Alist为例,安装时若未选择 端口外部访问,1panel会将其服务端口映射到127.0.0.1而非0.0.0.0,故适合使用反向代理搭建。

在这里插入图片描述

主域名填写站点域名其他域名填写 127.0.0.1:任意未占用端口,如此处127.0.0.1:10001,点击确定创建反向代理。

在这里插入图片描述

运行环境(PHP)网站搭建

PHP站点的搭建,需要先创建运行环境,如下图:

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

等待安装PHP环境

在这里插入图片描述

当状态转为正常时即安装完毕。

点击创建网站,选择运行环境主域名填写站点域名,其他域名填写 127.0.0.1:任意未占用端口,如此处127.0.0.1:10003,点击确定创建反向代理。

在这里插入图片描述

一键部署网站搭建

一键部署参考此处https://docs.halo.run/getting-started/install/1panel/,注意其他域名填写 127.0.0.1:任意未占用端口

证书申请

创建Acme账户

如图,按此顺序创建ACME账户

在这里插入图片描述

创建DNS账户

参考 1panel官方文档 创建DNS账户

申请证书

参考 1panel官方文档 申请证书

部署证书

在部署好的站点中,点击配置,点击基本HTTPS启用HTTPS,将HTTP选项修改为HTTP可直接访问,下方选择对应证书后保存。

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

获取证书文件

进入网站目录,进入SSL文件夹,下载保存fullchain.pemprivkey.pem两个文件备用。

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

在这里插入图片描述

部署长亭雷池WAF

长亭雷池的安装可参考该文:https://waf-ce.chaitin.cn/docs/guide/install,注意雷池要求CPU支持ssse3指令集

我在此选择一键安装,安装到/opt/safeline

bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)"
```![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/bf1d79278d0e4be58a7a6c3c4fd8c3a8.png)成功安装后显示如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/722b05a685664851b46f567719be8011.png)使用**https://IP:9443**访问WAF![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/73a1da50cd4a40daa079a68f5b75acf9.png)使用**支持TOTP的认证软件**进行认证![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/92e1c7b5ff3c42cda771c0e584c94c17.png)### 添加证书
如图,在`通用配置`-`证书管理`,**添加证书**,上传之前下载的证书文件。
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/5ed2ecda8ad14f30be375cdafdbeb45d.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/b9b5935858c44237b78d6eec9182f02c.png)### 站点通用配置
如图,在`通用配置`-**其他**,**站点通用配置**,根据需求开启,我这里全部开启。
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/2632bca19b5e44349175b987b2aea4f2.png)### 添加防护站点
如图,在防护站点中,**添加站点**,**根据需求配置**,上游服务器填写**1panel****的OpenResty配置的其他域名**,提交。其他网站同理。![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/d3184741270347498ff89360dcbe62fe.png)### 测试访问
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/be345a0dc4df41099e9a131b3400473b.png)## 自动更新雷池WAF的SSL证书
如下图,在1panel中添加计划任务,添加shell脚本,脚本内容及解析见下。![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/61f247a4871e4238b57549593897c367.png)```bash
sudo cp -f /opt/1panel/apps/openresty/openresty/www/sites/域名/ssl/fullchain.pem  /opt/safeline/resources/nginx/certs/cert_1.crt
# 从域名的ssl目录下复制证书到safeline的nginx目录下,替换原有证书,该证书用于雷池的防护站点
sudo cp -f /opt/1panel/apps/openresty/openresty/www/sites/域名/ssl/privkey.pem  /opt/safeline/resources/nginx/certs/cert_1.key
# 从域名的ssl目录下复制密钥到safeline的nginx目录下,替换原有密钥,该密钥用于雷池的防护站点
sudo cp -f /opt/1panel/apps/openresty/openresty/www/sites/域名/ssl/fullchain.pem  /opt/safeline/resources/management/certs/server.crt
# 从域名的ssl目录下复制证书到safeline的nginx目录下,替换原有证书,该证书用于雷池的管理站点,可不设置使用自签证书
sudo cp -f /opt/1panel/apps/openresty/openresty/www/sites/域名/ssl/privkey.pem  /opt/safeline/resources/management/certs/server.key
# 从域名的ssl目录下复制密钥到safeline的nginx目录下,替换原有密钥,该密钥用于雷池的管理站点,可不设置使用自签密钥
sudo docker restart safeline-tengine
# 重启safeline的nginx服务,使证书生效
sudo docker restart safeline-mgt-api
# 重启safeline的管理api服务,使证书生效

防护

为保证网站流量均从WAF进入,在1panel中开启防火墙,具体可参考官方文档,屏蔽掉之前配置的OpenResty的默认端口。

相关文章:

飞致云1panel + 雷池WAF

可能有许多人都有这个需求:为自己的个人站点套上WAF,增加安全性,本文将介绍如何将1panel面板深度结合长亭雷池防火墙,实现为个人站点套上WAF并且自动续签ssl证书。 前提条件: 服务器IP已绑定域名 完整的1panel环境 …...

策略梯度简明教程

策略梯度方法 (PG:Policy Gradient) 是强化学习 (RL:Reinforcement Learning) 中常用的算法。 1、从库里的本能开始 PG的原理很简单:我们观察,然后行动。人类根据观察采取行动。 引用斯蒂芬库里的一句话: 你必须依靠…...

鸿蒙原生应用/元服务开发-利用picker选择器来多选相册图片

前言 在之前的时候,测试一个应用进入相册选择图片demo,利用了startAbilityForResult()方法,启动相对应的Ability来完成效果,但是这种方法有限制,一次只能获取一张图片,在完成某些功能测试的时候就很不方便。…...

java:封装统一的响应体code、data、msg、paging

背景 我们在写接口的时候一般不会直接返回给前端数据,而是会有响应体,比如 code、data、msg,这样就有一个统一的结构方便前端处理,那么今天就来封装一个统一的响应体 封装基本响应体 1、在 config 包里新建 ApiResponse.java …...

leetcode算法之栈

目录 1.删除字符串中的所有相邻重复项2.比较含退格的字符串3.基本计算器II4.字符串解码5.验证栈序列 1.删除字符串中的所有相邻重复项 删除字符串中的所有相邻重复项 class Solution { public:string removeDuplicates(string s) {string ret;//使用数组模拟栈操作for(auto …...

电脑上mp4视频文件无缩略图怎么办

前言:有时候电脑重装后电脑上的mp4视频文件无缩略图,视频文件数量比较多的时候查找比较麻烦 以下方法亲测有效: 1、下载MediaPreview软件 2、软件链接地址:https://pan.baidu.com/s/1bzVJpmcHyGxXNjnzltojtQ?pwdpma0 提取码&…...

【Centos8】配置网络镜像源

文章目录 配置 yum 源配置网络 yum 源备份下载阿里 centos-base.repo 到 /etc/yum.repos.d/安装 EPEL 源测试安装 配置 yum 源 # 检查是否安装了 yum rpm -qa|grep yum# 查看本地已安装的所有软件包 yum list installed# 查看软件包安装位置 # 查看某个东西的软件包 rpm -qa|g…...

深入学习Synchronized各种使用方法

文章目录 前言一、synchronized关键字通用在下面四个地方:1.1synchronized修饰实例方法1.2synchronized修饰静态方法:1.3synchronized修饰实例方法的代码块1.4synchronized修饰静态方法的代码块2.读入数据 二.Sychronized关键特性2.1互斥2.2 刷新内存2.3…...

【idea】设置鼠标滚轮控制缩放大小

1、点击file 选择Setting 2、点击Editor 下面的 General 3、勾选 Mouse Control 下面的 Change font size with CtrlMouse Wheel in 4、点级apply 5、按 ctrl键 鼠标滚轮缩放字体的大小...

合并两个有序数组(leetcode_刷题1)

目录 题目:合并两个有序数组 题目分析方向1: 题目分析方向2: 题目:合并两个有序数组 题目要求: 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums…...

麒麟linux将图片批量生成PDF的方法

笔者手里有一批国产linu系统,目前开始用在日常的工作生产环境中,我这个老程序猿勉为其难的充当运维的或网管的角色。 国产linux系统常见的为麒麟Linux,统信UOS等,基本都是基于debian再开发的linux。 问题描述: wind…...

Linux——vim编辑文件时——.swp文件解决方案

test.cpp样例 当我们vim test.cpp进入编辑文件。 却忘记了保存退出 再次进入就会出现一下画面 当你摁下Enter键位 出现以下几个选项 O——是只读不写 E——是正常打开文件但不会载入磁盘内容 R——覆盖——是加载存储磁盘的文件(当我们忘记保存时,系统会自动帮我…...

【Maven】清理 maven 仓库

初始情况下,我们的本地仓库是没有任何jar包的,此时会从私服去下载(如果没有配置,就直接从中央仓库去下载)。 可能由于网络的原因,jar包下载不完全,这些不完整的jar包都是以lastUpdated结尾。此…...

APOLLO自动驾驶技术沙龙:未来已来,共创智能交通新时代

在这次Apollo会议上,我深刻地感受到了人工智能自动驾驶技术领域的最新进展和未来趋势。作为一名从事软件开发工作的人员,我深感荣幸能够参加这次盛会。 前言 本次活动是百度Apollo社区工程师齐聚首钢Park,带来现场实操与技术分享。主要围绕Ap…...

Java面试题12

1.redis 怎么实现分布式锁? Redis可以通过以下方式实现分布式锁: 使用RedLock算法:多个Redis节点组合使用,通过竞争锁来达到分布式锁的效果。使用SETNX命令:利用SETNX(SET if Not eXists)命令…...

ubuntu上创建服务启动python脚本

场景 最近在使用ubuntu服务器部署MySQL和同步数据,同步数据使用的是python,但是我不能直接操作服务器,只能通过Xshell远程访问服务器,但是启动python脚本的时候如果关掉xshell会停止Python脚本,所以如果要让python脚本…...

51单片机制作数字频率计

文章目录 简介设计思路工作原理Proteus软件仿真软件程序实验现象测量误差和范围总结 简介 数字频率计是能实现对周期性变化信号频率测量的仪器。传统的频率计通常是用很多的逻辑电路和时序电路来实现的,这种电路一般运行较慢,而且测量频率的范围较小。这…...

java中强引用、软引用、弱引用、虚引用的区别是什么?

Java中的引用类型主要分为强引用、软引用、弱引用和虚引用,它们之间的区别主要体现在垃圾回收的行为上。 强引用(Strong Reference):这是使用最普遍和默认的引用类型。如果一个对象具有强引用,那么垃圾回收器就永远不会…...

springboot -事务管理

事务 概念 事务是一组操作的集合,它是一个不可分割的工作单位,这些操作要么同时成功,要么同时失败。 操作 开启事务: start transaction / begin提交事务:commit回滚事务: rollback 注解 Transactional …...

商城系统通过Kafka消息队列,实现订单的处理和状态更新

以下是一个简单的Spring Boot应用程序示例,演示如何使用Kafka实现订单的处理和状态更新。 首先,我们创建一个名为“order”的topic,在application.yaml配置文件中添加Kafka的配置: spring:kafka:bootstrap-servers: localhost:9…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)

服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

对WWDC 2025 Keynote 内容的预测

借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...

《通信之道——从微积分到 5G》读书总结

第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...

高危文件识别的常用算法:原理、应用与企业场景

高危文件识别的常用算法:原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件,如包含恶意代码、敏感数据或欺诈内容的文档,在企业协同办公环境中(如Teams、Google Workspace)尤为重要。结合大模型技术&…...

Python爬虫(一):爬虫伪装

一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多,如何一步解决,采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集(每个目录代表一个类别,目录下是该类别的所有图片),你需要进行以下配置步骤&#x…...

Matlab | matlab常用命令总结

常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践

6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...

【论文阅读28】-CNN-BiLSTM-Attention-(2024)

本文把滑坡位移序列拆开、筛优质因子,再用 CNN-BiLSTM-Attention 来动态预测每个子序列,最后重构出总位移,预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵(S…...

探索Selenium:自动化测试的神奇钥匙

目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...