XCC 部署全攻略:从零搭建分布式开源 CC 防护系统

936 字
5 分钟
XCC 部署全攻略:从零搭建分布式开源 CC 防护系统

XCC(StarDust CC Defense) 是一个开源、分布式、支持 CDN 思路的 CC / DDoS 防御系统,主要面向中小站点,在不依赖昂贵云防护的情况下,实现“多节点 + 行为校验 + 反向代理”的防护模式。

项目地址:
https://github.com/defeatedperson/xcc

本文将从 架构理解 → 环境准备 → 三种部署方式(重点 Docker)→ 常见坑位,完整讲清楚 XCC 如何部署和上线。


一、XCC 整体架构说明(先搞清楚再部署)#

在部署之前,一定要理解 XCC 的组件划分,否则容易把「主控」「节点」混在一起。

XCC 的核心模块#

XCC 并不是一个“单程序”,而是由多个模块协作完成:

模块技术栈作用
主控(控制台)PHP + SQLite + JSON域名管理、节点管理、策略配置
节点控制Go接收主控指令
节点代理OpenResty(Nginx + Lua)实际拦截 CC / 反代流量
安全逻辑Lua行为分析、人机验证

关键点

  • 主控 ≠ 节点

  • 一个主控可以管理多个节点

  • 节点必须占用 80 / 443 / 8080 等端口


二、部署前的环境要求#

主控端(管理面板)#

  • PHP 8.0 及以上

  • 支持 exec 函数 宝塔用户需要解除 exec 禁用

  • SQLite 可用

  • Web 环境即可(Nginx / Apache 均可)

节点端(防护服务器)#

  • 推荐 Debian 11 / 12

  • 最低配置:

    • 1 核 CPU

    • 1 GB 内存(512 MB 也能跑,需调小连接数)

  • 需要独占端口:

    • 80

    • 443

    • 8080


三、部署方式总览#

XCC 官方提供了 三种部署方式

  1. 手动部署(传统 PHP 方式)

  2. Docker 部署(推荐)

  3. 云厂商一键部署

下面重点讲 Docker 部署,这是目前最稳定、最省事的方式。


四、Docker 部署 XCC(推荐方案)#

创建宿主机目录#

sudo mkdir -p /opt/xcc-appsudo touch /opt/xcc-app/site.json

site.json 用于节点配置,必须存在。


拉取官方镜像#

docker pull defeatedperson/xcc-app:latest

这是官方维护的 XCC 主控 Docker 镜像


启动容器#

docker run -d \ -p 8080:80 \ --name xcc-app-instance \ --restart always \ -v xcc_auth_data:/var/www/html/auth/data \ -v xcc_api_db:/var/www/html/api/db \ -v xcc_data_db:/var/www/html/data/db \ -v /opt/xcc-app/site.json:/var/www/html/node/site.json \ defeatedperson/xcc-app:latest

参数说明(非常重要)#

参数说明
-p 8080:80容器 Web 面板暴露在 8080
--restart always服务器重启自动拉起
xcc_auth_data登录 / 鉴权数据
xcc_api_dbAPI 数据库
xcc_data_db核心业务数据
site.json节点配置文件

配置反向代理(HTTPS)#

强烈建议:8080 面板只通过 HTTPS 访问

你需要在宿主机:

  • 建一个 Nginx 反向代理

  • 指向 127.0.0.1:8080

  • 开启 HTTPS(Let’s Encrypt 即可)

官方已内置伪静态规则
无需额外配置 rewrite


五、手动部署方式(不推荐但可用)#

适合想“像装 WordPress 一样装 XCC”的用户。

步骤简述#

  1. 下载 Release 包

  2. 解压到 Web 目录

  3. 配置 Nginx / Apache

  4. 按页面提示完成初始化

缺点

  • 环境依赖多

  • 不如 Docker 稳定

  • 升级麻烦


六、部署完成后的关键配置#

初始化主控#

访问:

https://你的域名

完成:

  • 管理员账号设置

  • 初始节点配置


添加节点#

在主控面板中:

  • 添加节点 IP

  • 下发配置

  • 节点拉起 OpenResty

节点状态正常后,才会开始拦截流量。


域名接入流程#

正确顺序是:

用户请求 → XCC 节点 → 原站服务器

所以你需要:

  • 将域名 DNS 指向 XCC 节点 IP

  • 原站只允许来自节点的访问(防绕过)


七、常见坑位与建议#

1. exec 被禁用#

表现:

  • 节点无法下发

  • 面板报错

解决:

  • PHP 配置中解除 exec

2. 节点内存不够#

表现:

  • OpenResty 启动失败

  • 频繁 502

解决:

  • 调小 nginx.conf 中连接数

  • 或升级内存


安全建议#

  • 面板 IP 白名单

  • 节点与原站隔离

  • 配合防火墙限制直连

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

XCC 部署全攻略:从零搭建分布式开源 CC 防护系统
https://www.kshare.top/posts/xcc-部署全攻略从零搭建分布式开源-cc-防护系统支/
作者
Kshare
发布于
2026-01-25
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
Kshare
Hello, I'm Kshare.
公告
欢迎来到Kshare站点!近期站点进行升级,欢迎访问和收藏站点!
音乐
封面

音乐

暂未播放

0:00 0:00
暂无歌词
分类
标签
站点统计
文章
137
分类
12
标签
59
总字数
333,011
运行时长
0
最后活动
0 天前

文章目录