Certbot + swagger-parser swagger-parser+ Nginx Proxy Manager Nginx Proxy Manager+ PHP PHP + Docker+ Let's Encrypt+ fail2ban

Nginx反向代理一键集成HTTPS证书与防爆破安全网关

Nginx承担反向代理与PHP托管,Certbot自动续签Let's Encrypt证书,fail2ban拦截恶意访问,三者打包于同一Docker镜像

✓ 内置证书客户端自动HTTPS✓ 集成fail2ban增强防护 ✕ 以Docker容器方式运行

方案简介

SWAG(Secure Web Application Gateway)是 LinuxServer.io 打包的一体化安全 Web 网关 Docker 镜像。自托管服务暴露到公网时,通常需要三件事:反向代理(把域名路由到各个内部服务)、HTTPS 证书(加密与可信)、以及防暴力破解/防扫描(安全防护)。SWAG 把这三件事组合在一个容器里:以 Nginx 作为 Web 服务器和反向代理,内置 Certbot 客户端自动申请与续期 Let's Encrypt 证书,并集成 fail2ban 对恶意来源进行封禁,同时支持托管 PHP 应用。适合希望用一个容器统一管理自托管服务入口与安全的用户。

亮点与能力

  • Nginx Web 服务器与反向代理
  • PHP 应用支持
  • 内置 Certbot 客户端,使用 Let's Encrypt 证书
  • 集成 fail2ban 防暴力破解
  • 一体化 Docker 容器部署
  • GPL-3.0 开源许可

组成与分工

  • Nginx:核心 Web 服务器与反向代理,接收外部请求并转发到内部自托管服务,同时支持 PHP
  • Certbot:内置的证书客户端,对接 Let's Encrypt 自动签发/续期 HTTPS 证书
  • fail2ban:集成在内的入侵防护组件,封禁异常访问来源
  • PHP:为托管的 PHP 应用提供运行支持
  • Docker:全部组件的打包与运行方式

前置要求

  • Docker 环境(条目标注运行方式为 Docker
  • 域名与公网可达(使用 Let's Encrypt 证书的前提,材料中提及 "Let's Encrypt")

使用与配置要点

SWAG 以单个 Docker 容器形式运行,运行后充当所有自托管服务的统一入口:在 Nginx 中配置各服务的代理主机规则即可路由;HTTPS 证书由内置 Certbot 对接 Let's Encrypt 自动处理,无需手动申请;fail2ban 集成后自动参与防护,无需单独部署。验证成功的标志是:外部域名可通过 HTTPS 访问到后端自托管服务,且证书为 Let's Encrypt 签发。

注意事项与常见问题

  • 材料中该条目为简介式描述,未包含具体安装命令或配置文件示例
  • 项目由 linuxserver 维护,仓库地址为 docker-swag,运行依赖 Docker

优缺点

  • ✓ 内置证书客户端自动HTTPS
  • ✓ 集成fail2ban增强防护
  • ✕ 以Docker容器方式运行

出处

本方案挖掘自开源项目 awesome-selfhosted/awesome-selfhosted,方案内容与实施命令均来自其 README 原文。

方案出处
awesome-selfhosted/awesome-selfhosted

本方案由真实开源项目挖掘整理,实施命令均来自其 README 原文,安装使用请遵循项目开源协议。