🚀 一站式SSL证书生命周期管理解决方案 | 支持Let's Encrypt、ZeroSSL、Google、SSL.COM、BuyPass等多家CA | 多平台部署 | 自动化运维
- ✅ 全自动证书申请/续期
- 🌐 多平台部署(CDN/WAF/面板/云存储)
- 🔔 证书过期监控
- 🛡️ 安全入口保护
- 📊 可视化证书管理
我们正在积极完善以下功能,欢迎通过 GitHub Issues 提出建议!
- Linux 系统
- macOS/Windows(请参照下面教程,暂不支持脚本安装)
- Docker
curl -sSO http://download.allinssl.com/install_allinssl.sh && bash install_allinssl.sh allinssl
curl -sSO https://cnb.cool/allinssl/install.sh/-/git/raw/main/install_allinssl.sh && bash install_allinssl.sh allinssl
docker run -itd \
--name allinssl \
-p 7979:8888 \
-v /www/allinssl/data:/www/allinssl/data \
-e ALLINSSL_USER=allinssl \
-e ALLINSSL_PWD=allinssldocker \
-e ALLINSSL_URL=allinssl \
-e TZ=Asia/Shanghai \
allinssl/allinssl:latest
- 打开 releases 下载页面
- 下载最新版本的二进制文件
- 解压缩文件,并通过终端或者CMD进入解压目录
- 获取登陆地址,账号和密码
- 账号和登陆地址:
- Linux:
./allinssl 15
- Windows:
.\allinssl 15
- 密码:
- Linux:
./allinssl 6
- Windows:
.\allinssl 6
- Linux:
- 运行可执行文件启动服务,请保持终端打开,或者自行配置进程守护
- Linux: 执行
./allinssl start
- Windows: 终端进入到解压目录,执行
.\allinssl start
- Linux: 执行
- 访问
http://your-server-ip:port/安全入口
,使用账号和密码登录 - 更多命令行操作请参考 命令行操作
如需自行编译,请确保已安装Go 1.23+环境:
git clone https://github.com/allinssl/allinssl.git
cd allinssl
go mod tidy
go build -o allinssl cmd/main.go
./allinssl start
- 访问
http://your-server-ip:port/安全入口
- 添加DNS提供商和主机提供商凭证 ☁️
- 创建工作流
功能 | 支持提供商 |
---|---|
DNS验证 | 阿里云、腾讯云、Cloudflare... |
证书部署 | 宝塔面板、1Panel、阿里云CDN、腾讯云COS |
监控通知 | 邮件、Webhook、钉钉 |
graph LR
A[证书申请] --> B{有效期监控}
B -->|剩余30天| C[自动续期]
C --> D[部署到目标平台]
D --> E[通知结果]
graph TB
subgraph "前端层"
A[Vue 3 + Naive UI]
A --> B[Vite构建系统]
A --> C[Turbo Monorepo]
end
subgraph "后端层"
D[Gin Web框架]
D --> E[RESTful API]
D --> F[Session管理]
D --> G[中间件层]
end
subgraph "核心服务层"
H[证书申请服务]
I[证书部署服务]
J[工作流引擎]
K[监控调度服务]
L[通知服务]
end
subgraph "数据存储层"
M[(SQLite数据库)]
N[文件存储]
end
subgraph "外部集成"
O[ACME协议]
P[云服务商API]
Q[DNS提供商]
R[CDN/面板API]
end
A -.-> D
D --> J
J --> H
J --> I
J --> K
J --> L
H --> M
I --> M
K --> M
L --> M
H --> O
I --> P
H --> Q
I --> R
# 基本操作
allinssl 1: 启动服务 🚀
allinssl 2: 停止服务 ⛔
allinssl 3: 重启服务 🔄
allinssl 4: 修改安全入口 🔐
allinssl 5: 修改用户名 👤
allinssl 6: 修改密码 🔑
allinssl 7: 修改端口 🔧
# Web服务管理
allinssl 8: 关闭web服务 🌐➖
allinssl 9: 开启web服务 🌐➕
allinssl 10: 重启web服务 🌐🔄
# 后台任务管理
allinssl 11: 关闭后台自动调度 📻⛔
allinssl 12: 开启后台自动调度 📻✅
allinssl 13: 重启后台自动调度 📻🔄
# 系统管理
allinssl 14: 关闭https 🔓
allinssl 15: 获取面板地址 📋
allinssl 16: 更新ALLinSSL到最新版本(文件覆盖安装) 🔄⬆️
allinssl 17: 卸载ALLinSSL 🗑️
欢迎通过以下方式参与项目:
- 提交Issue报告问题
- 发起Pull Request改进代码 💻
- 完善项目文档 📖
- 分享使用案例 ✨
- QQ交流群:768610151 👥
- 邮箱:support@allinssl.com 📧
- 问题反馈:GitHub Issues
感谢在SSL证书管理领域做出贡献的开源项目和社区:
- Let's Encrypt - 免费SSL证书颁发机构
- lego - Go语言ACME客户端,为本项目提供核心证书申请功能
- acme.sh - 纯Shell脚本实现的ACME客户端
- certimate - 工作流部分设计参考,以及使用了其京东云DNS的代码实现
- certd - 工作流部分的设计参考
- Certbot - EFF官方ACME客户端
- Caddy - 自动HTTPS Web服务器
感谢以下技术栈和依赖库:
🔧 后端依赖
- Web框架: gin-gonic/gin - HTTP Web框架
- 数据库: modernc.org/sqlite - SQLite数据库
- ACME客户端: go-acme/lego - 证书申请核心
- 会话管理: gin-contrib/sessions - 用户会话
- HTTP客户端: go-resty/resty - API调用
- 邮件服务: jordan-wright/email - 邮件发送
- 验证码: mojocn/base64Captcha - 图形验证码
- UUID: google/uuid - 唯一标识符
- 环境变量: joho/godotenv - 配置管理
🎨 前端依赖
- 框架: Vue 3 - 渐进式JavaScript框架
- UI组件: Naive UI - Vue 3组件库
- 构建工具: Vite - 极速构建工具
- 包管理: Turbo - Monorepo构建系统
- 路由: Vue Router - 单页应用路由
- 状态管理: Pinia - 轻量级状态管理
- 工具库: VueUse - Vue组合式API工具
- 图表: ECharts - 数据可视化
- 工作流: Vue Flow - 可视化流程编辑器
- HTTP: Axios - HTTP客户端
- 样式: TailwindCSS - CSS框架
☁️ 云服务集成
- 阿里云: alibabacloud-go SDK系列
- 腾讯云: tencentcloud-sdk-go
- 华为云: huaweicloud-sdk-go-v3
- 百度云: bce-sdk-go
- 火山引擎: volcengine-go-sdk
- 京东云: jdcloud-sdk-go
- 七牛云: qiniu/go-sdk
- Azure: azure-sdk-for-go
- AWS: aws-sdk-go-v2
- Cloudflare: cloudflare-go
证书颁发机构:
- Let's Encrypt - 免费SSL证书
- ZeroSSL - 免费SSL证书
- Google Trust Services - Google证书服务
- SSL.com - 商业SSL证书
- BuyPass - 挪威免费SSL证书
- TrustAsia - 亚洲诚信
- Racent - 锐成信息
特别感谢:
- 所有DNS服务商和CDN提供商对API的开放支持
感谢以下用户对本项目的支持和贡献:
本项目采用 AGPL-3.0 license 开源协议
🌟 Star本项目以支持开发 | 推荐用于:中小型网站运维、多证书管理场景、自动化HTTPS部署