1,安装环境准备
请自行安装好 1Panel 面板,并启动 HTTPS 访问和 2FA 认证。同时,还需要安装 Linux 防火墙软件和 Fail2Ban。具体操作请参考以下链接:
- Linux 防火墙设置
- Fail2Ban 安装指南 。
22 端口按需设置(请不要使用弱密码),80 和 443 端口仅限 Cloudflare IP 访问。
2,进入 1Panel 应用商店
当 1Panel 面板进入应用商店后,点击“全部”,选择第一个 OpenResty 进行直接安装。安装完成后,进入 WAF 全局设置,开启总开关。
3,自定义 WAF 设置
在自定义规则中:
- 文件上传限制:开启
- CDN:开启
- 真实 IP 获取方式:选择 HTTP Header 获取,设置为 cf-connecting-ip
确保其他选项未启用。
4,安装 Bitwarden
在应用商店中搜索 Bitwarden ,点击安装。在下拉菜单中选择“编辑 compose 文件”,在 bitwarden: 字段后面添加以下环境变量:
编辑 compose
点击确认。
5,创建网站及设置 HTTPS
等待安装完成后,点击 1Panel 网站选项,选择“创建网站”。
- 主域名设置为:test.pepapro.store
- 代理地址设置为:http://127.0.0.1:40031
点击确定。
然后点击刚才创建的网站,找到网站设置中的 HTTPS,选择启用 HTTPS,之后选择正确的泛域名证书并点击保存。(之前的 Cloudflare 托管教程可回顾)
如果是小水管,建议进行限速设置。
6,设置 WAF 频率限制
在 1Panel 面板中,选择 WAF,进入网站设置,进行以下频率限制:
- URL 模式设置为:10 秒 5 次,封禁 60 秒或 600 秒,点击保存。
接着进入 Cloudflare WAF 速率限制规则,创建一个速率限制:(http.request.uri.path wildcard “/*”) ,设置为:10 秒 100 次,措施为阻止。
自定义规则设置:
- 第一个规则命名为“阻止”,表达式设置为:(ip.geoip.country ne “CN”)
- 第二个规则用于人机验证,表达式设置为:(http.request.uri.path wildcard r”/admin”) or (cf.threat_score ge 5)
7,添加 DNS 记录
最后在 DNS 中添加记录 A,名称设置为 test ,IPv4 地址选择源站 IP(请填写你自己的)。开启小黄云(已代理)。
找到 SSL/TLS 概述,选择配置,自定义 SSL/TLS,选择完全(严格)。
8,登录网站
访问地址:https://test.pepapro.store/ ,创建自己的新账户即可。
在 1Panel 面板中,选择容器,找到容器 1Panel-bitwarden
,选择终端,进入 **/bin/ash/**
,输入命令:
./vaultwarden hash --preset owasp
设置的密码为:oZfrQz2xqPitSJze38JvHWgVh8a4ytG3
9,完成配置
访问管理页面:https://test.pepapro.store**/admin** ,输入 ADMIN_TOKEN,即上面的密码。
将 Domain URL 设置为你自己的网址,Client IP header 设置为“cf-connecting-ip”,Admin token/Argon2 PHC 选项设置为刚才输出的 ADMIN_TOKEN
{去除**“”**符号}
注意 :
其他设置请根据自己的需求进行更改,强烈建议在 Cloudflare WAF 中禁止访问 **/admin**
路径。此外,示例中的密码设置只是示例,请务必自行更改为更安全的密码。除了密码之外务必设置2FA,另外1panel也可以定期备份,比如服务器+S3存储桶方式。保存好自己密码和2FA令牌。
作者是小白技术有限,难免有所错漏,如果问题请留言。
文章前置 关于域名托管到CF
我的博客:https://blog.pepaper.org
源文 1Panel 面板安装 Vaultwarden 以及cloudflare WAF设置 CC BY-NC-SA 4.0