

0.想说的话#
嗨👋好久不见,我是Hikaru。
如你所见,我的个人博客站点进行了全面升级,使用了全新Astro框架并搭配了使用最前沿技术的主题Astro Pure Theme,使用Waline作为评论组件。虽然也是静态网站,但是美观度相比上一版Fluid好看了许多。
**为什么我隔了几个月才写这一篇文章?**一是博主需要兼顾学业(其实并没有,单纯是懒);二是我需要一些空闲时间休息~~(打舞萌)~~;三是我想打舞萌好吧我编不下去了。其实主要原因还是平时太忙了上学累死了周末等休息时间懒得开电脑写博文,与其写0回报0人在意的博文不如多睡几个小时的觉,床实在是太舒服了嘿嘿。
那么话不多说,让我们进入正题。本篇文章将会详细地指引你如何使用1Panel在你的服务器上安装雷池WAF社区版(可自行升级付费版)和ZITADEL统一认证系统并完成相应的必要配置。
1.你们这是什么群(软件)啊?#
首先,如果你第一次听到这两个软件的话,可能不太知道这两个玩意是干什么的。那么请让 Gemini 2.5 Pro 同学帮我们总结一下叭~
ZITADEL 是一个现代化的开源身份与访问管理(IAM)平台,专为云原生和开发者设计。它被视为 Auth0 或 Keycloak 的有力替代品,尤其擅长处理复杂的 B2B SaaS 多租户场景。ZITADEL 提供全面的身份验证方案,从单点登录(SSO)到无密码认证(Passkeys),并拥有强大的 API 和审计日志功能。凭借其灵活性和可自托管的特性,它能帮助开发者快速构建安全、可定制的用户认证系统。
雷池(SafeLine)是长亭科技推出的一款下一代 Web 应用防火墙(WAF)。它摒弃了传统的规则匹配模式,首创智能语义分析算法,能像人类专家一样理解攻击代码,从而以极低的误报率精准拦截 SQL 注入、XSS 等复杂攻击。雷池 WAF 部署简单、管理便捷,实现了“开箱即用”的安全防护。其免费社区版功能强大且性能卓越,为开发者和中小企业提供了极具性价比的高质量网站安全解决方案。
本期给它们这对CP ( ? ) 介绍的实战案例是:使用ZITADEL+雷池WAF来保护你的1Panel面板
2.准备环节#
首先,你需要准备这些玩意才可以进行安装和部署操作:
- 一台至少2C2G 20GB的云服务器(需要安全组放行权限且没有安装任何环境,如Nginx)
- 一个可用的域名(在本篇文章中至少需要2个域名,1个WAF内置的IAM,1个ZITADEL)
- (可选)域名对应的有效SSL证书
说到这里,我推荐各位购买阿里云新人特惠的云服务器实例了,境内轻量云最低只要38RMB一年,或者参与阿里云99计划,99元一年购买2C2G的ECS实例或199元一年购买2C4G的ECS实例。买到就是赚到,立省80%!另外我为大家争取到了20%(八折)优惠券,可以用于其它云服务购买(不参与99计划等活动,请以实际为准),点击链接即可直达活动页面~ ↗
3.安装面板#
在本篇教学中我们会指引您安装 1Panel V2面板 ↗ 并进行相应的配置和软件部署。那么再让 Gemini 同学给我们介绍一下1Panel吧~
1Panel 是一款现代化、开源的 Linux 服务器运维管理面板。它采用容器化技术构建,通过简洁直观的图形化界面,极大地简化了服务器的管理和维护工作。用户可以通过 1Panel 轻松管理主机、安装各类开源软件、部署网站、操作数据库和文件,甚至进行安全和日志审计。它被认为是传统面板(如宝塔)的一个出色替代品,其开源、安全、免费的特性,以及对 Docker 等新技术的良好支持,使其特别受到开发者和运维人员的青睐。
之所以1Panel能快速支持/接入这么多软件的一键安装和部署得益于它的所有程序的运行都是基于Docker容器之上的。所以理论上只要你的应用支持Docker部署就可以加入到1Panel的应用市场中。
1Panel官方为我们提供了适用于多类型Linux系统的一键安装命令:
bash -c "$(curl -sSL https://resource.fit2cloud.com/1panel/package/v2/quick_start.sh)"jsx理论上只要粘贴到连接服务器的SSH中,回车,回车,再回车*n,就会自动安装好了(不出意外的话)。面板完成安装后,如果一切正常应该会输出这些内容:

如果安装失败,请尝试在社区寻找或询问最新大模型来获取可能可行的解决方案
接下来你就可以通过输出的账密和外部地址访问你的面板后台了。请注意不要泄露这里面的任何信息,否则将会存在被攻击的风险!另外请注意是否在服务商防火墙放行了面板端口,否则面板将会无法访问。
4.安装雷池WAF#
您可以 在此处 ↗ 打开 雷池WAF官方文档-免费安装(推荐) 部分,查看官方最新安装教程。
一般情况下,SSH连接至服务器后,执行一键安装命令即可:
bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/manager.sh)"jsx命令执行成功则代表雷池安装成功,访问 https://<safeline-ip>:9443/ 即可使用雷池控制台。
5.部署ZITADEL实例#
5.1安装ZITADEL#
ZITADEL 在 1Panel应用商店 ↗ 中上架,您可以在 1Panel面板 - 应用商店 的“安全”类别中找到它。

然后按需填写相关信息即可:

- 名称:默认值
- 版本:默认值(最新版本)
- 端口:默认值(若未来或现在有使用8080端口的项目,建议修改;若不使用域名反代访问,记得在服务商面板安全组页面放行对应端口)
- 数据库服务/名称/用户/密码:1Panel自动生成,若未安装PGSQL数据库,再次前往“应用商店”中安装即可(建议安装最新或较新版本,详见 ZITADEL文档 ↗ 中关于数据库部分)
- 管理密钥:前往任意随机字符生成网站生成一段32位长度的随机字符即可
- 外部域名:ZITADEL实例绑定的网站域名(e.g. sso.example.com)
- 组织管理员:你登录时需要的邮箱地址(建议使用可用且安全的邮箱地址)
- 组织管理员密码:你登录时需要的密码(建议生成强密码)
上述信息填写完成后直接点击“安装”即可,一般来说不需要太长时间,取决于你的网络环境和性能,因为都是运行在 Docker 上的。
5.2 配置反向代理#
安装完成之后,由于你的机器上安装了“雷池WAF”(大概率)占用了普通的80/443端口,所以你需要在“雷池WAF”中完成对 ZITADEL 的反向代理。
现在,打开你的 雷池WAF控制台(一般情况下运行在9443端口),使用脚本输出的账密登录,在左侧菜单中选择“防护应用”,在新页面中点击右上角的“添加应用”按钮,打开弹窗后跟随图示完成应用配置:

雷池WAF侧配置完成后,在您的DNS提供商处添加主机记录(CDN可选,本文不做赘述)后即可通过域名访问您的 ZITADEL实例 (如图所示)。

6.配置并实装统一认证#
6.1 ZITADEL部分#
在登录页中,使用您安装时所填写的账密即可登录后台。您的账户会自动加入名为“ZITADEL”的默认组织(强烈建议不要删除或退出该组织,否则后续可能无法正常登录后台)。登录后如图所示(默认无头像):

如果您需要单独开设组织(方便后续人员管理),您可以在菜单中“ZITADEL”右侧的上下图标中创建新的组织:

在新的页面输入组织名称即可,然后再次通过上下图标切换组织。
组织切换成功后,在组织菜单中选择“项目”部分,然后在新页面中点击“创建新项目”按钮,输入项目名称(e.g. Safeline)后点击“继续”按钮,会自动跳转到你所创建的新项目的页面。

然后点击 应用 - 创建 - Web ,并填写应用名称(e.g. Safeline),然后点击“继续”按钮。


然后在“身份验证方式”类型中选择 CODE ,并继续。

在“重定向URLs”和“退出登录重定向URLs”的配置中,相关信息见下图:

(若未确定“雷池WAF的统一认证域名/IP”,此部分可以暂时忽略/跳过)
创建完成后,ZITADEL会显示客户端的密钥信息(ID&secret),请记下并保存在相对安全的位置:

接着在应用配置页面中,选择左侧菜单的“令牌设置”,在“AUTHTOKEN 选项”中勾选启用“在 ID Token 中包含用户信息”选项(因为雷池WAF统一认证需要获取用户信息来辨别身份),记得点击“保存”:

在此,ZITADEL的配置部分已结束。
6.2 雷池WAF部分#
雷池WAF内置了“统一认证平台”系统 ↗,因此我们可以通过 第三方登录/OIDC + 设置为唯一登录方式 的方式来实现 使用ZITADEL(SSO)登录受保护网站 的效果。
再次打开 雷池WAF控制面板 ,在左侧菜单栏中选择“身份认证”,接着点击右上角“配置”按钮,在新的页面中打开“登录配置 - 第三方登录 - OIDC”,随后弹出配置窗口。


在弹窗中完成配置,提交即可:

然后再打开“统一认证”页面,完成雷池侧统一认证系统域名等信息的相关配置后,即可正常使用ZITADEL登录啦!
