From 8263474cb2fb79c8a680f5b5720796b224d88829 Mon Sep 17 00:00:00 2001 From: zhangchenhao Date: Tue, 6 May 2025 20:15:02 +0800 Subject: [PATCH] readme --- README.md | 122 +++++++++++++++++++++++++++++++++++++++++++++------ README_EN.md | 112 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 221 insertions(+), 13 deletions(-) create mode 100644 README_EN.md diff --git a/README.md b/README.md index b211dee..4b8a7ed 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,112 @@ -## Hi there 👋 +# ALLinSSL - SSL证书全流程管理工具 - +## 主要功能 + +- **证书申请**: 支持通过ACME协议从Let's Encrypt等CA自动申请免费证书 +- **证书管理**: 集中管理所有SSL证书,包括手动上传和自动申请的证书 +- **证书部署**: 支持一键部署证书到多种平台,如阿里云、腾讯云、宝塔面板、1Panel等 +- **站点监控**: 实时监控站点SSL证书状态,提前预警证书过期 +- **自动化任务**: 支持定时任务,自动续期证书并部署 +- **多平台支持**: 支持多种DNS提供商(阿里云、腾讯云等)的DNS验证方式 + +## 技术栈 + +- **后端**: Go语言 +- **前端**: HTML/CSS/JavaScript +- **数据存储**: SQLite +- **证书管理**: ACME协议 (Let's Encrypt) +- **定时任务**: 内置调度器 + +## 安装说明 + +### 系统要求 + +- 操作系统: Linux +- 权限要求: 需要有读写权限创建数据目录 + +### 安装步骤 +#### 1. 通过官网安装脚本安装 +#### 2. 编译安装: + - 编译安装时需要注意可执行文件的名称和运行目录,在`allinssl.sh`中需要修改为对应的名称和路径否则可能导致脚本不可用 + - 推荐安装路径为`/www/allinssl/`,可执行文件名为`allinssl`,建议将`allinssl.sh`软链到`/usr/bin/`目录下 + - 安装: + 1. 下载最新版本的release包并解压 + 2. 编译go程序(allinssl) + 3. 运行可执行文件启动服务 + - Linux: 执行 `./allinssl start` + +### 首次启动设置 + +1. 首次启动后,设置管理员账号和密码 +2. 设置安全入口和端口号 +3. 完成初始设置后,即可通过 `http://your-ip:your-port/your-secure-entry` 访问管理界面 + +## 使用指南 + +### 自动化部署 + +#### 证书申请 +1. 添加DNS验证凭证(支持阿里云、腾讯云等) +2. 输入需要申请证书的域名 +3. 输入邮箱地址(用于接收ca的通知) + +#### 证书上传 +1. 选择手动上传证书 +2. 粘贴证书和私钥内容 + +#### 证书部署 + +1. 选择申请或上传的证书 +2. 选择部署目标(支持阿里云CDN、腾讯云CDN、宝塔面板、1Panel等) +3. 添加部署凭证(如阿里云、腾讯云的API密钥) + +#### 通知 +1. 配置通知通道 +2. 输入通知内容和主题 + + +### 站点监控 + +1. 添加需要监控的站点域名 +2. 系统将自动检测站点证书状态 +3. 设置证书到期提醒阈值(默认为30天) +4. 当证书接近过期时,系统将发出提醒 +5. 连续多次检测网站异常时,系统将发出提醒 + + +## 命令行操作 + +```bash +# 基本操作 +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 +``` + +## 许可证 + +本项目使用 [LICENSE](./LICENSE) 文件中规定的许可证进行授权。 diff --git a/README_EN.md b/README_EN.md new file mode 100644 index 0000000..4ef44f1 --- /dev/null +++ b/README_EN.md @@ -0,0 +1,112 @@ +# ALLinSSL - Complete SSL Certificate Management Tool + +## Project Introduction + +ALLinSSL is a comprehensive SSL certificate lifecycle management tool that integrates certificate application, management, deployment, and monitoring. This tool helps users easily manage SSL certificates for multiple websites, providing automated certificate application, renewal, and deployment processes, while monitoring certificate status in real-time to ensure website security. + +## Main Features + +- **Certificate Application**: Support automatic free certificate applications from Let's Encrypt and other CAs using the ACME protocol +- **Certificate Management**: Centralized management of all SSL certificates, including manually uploaded and automatically applied certificates +- **Certificate Deployment**: Support one-click deployment to multiple platforms such as Alibaba Cloud, Tencent Cloud, BaoTa Panel, 1Panel, etc. +- **Site Monitoring**: Real-time monitoring of SSL certificate status, early warning of certificate expiration +- **Automated Tasks**: Support scheduled tasks, automatic certificate renewal and deployment +- **Multi-platform Support**: Support multiple DNS providers (Alibaba Cloud, Tencent Cloud, etc.) for DNS verification + +## Technology Stack + +- **Backend**: Go language +- **Frontend**: HTML/CSS/JavaScript +- **Data Storage**: SQLite +- **Certificate Management**: ACME Protocol (Let's Encrypt) +- **Scheduled Tasks**: Built-in scheduler + +## Installation Guide + +### System Requirements + +- Operating System: Linux +- Permission Requirements: Read and write permissions to create data directories + +### Installation Steps +#### 1. Install via official installation script +#### 2. Compile and install: + - When compiling and installing, pay attention to the name and path of the executable file. In `allinssl.sh`, you need to modify the corresponding name and path, otherwise the script may not work + - Recommended installation path is `/www/allinssl/`, executable file name should be `allinssl`, and it's recommended to create a symbolic link of `allinssl.sh` to the `/usr/bin/` directory + - Installation: + 1. Download the latest release package and extract it + 2. Compile the Go program (allinssl) + 3. Run the executable to start the service + - Linux: Execute `./allinssl start` + +### First-time Setup + +1. After first startup, set up administrator account and password +2. Set the secure entry path and port number +3. After completing the initial setup, you can access the management interface via `http://your-ip:your-port/your-secure-entry` + +## User Guide + +### Automated Deployment + +#### Certificate Application +1. Add DNS verification credentials (supporting Alibaba Cloud, Tencent Cloud, etc.) +2. Enter the domain names for which certificates are needed +3. Enter email address (for receiving CA notifications) + +#### Certificate Upload +1. Select manual certificate upload +2. Paste certificate and private key content + +#### Certificate Deployment + +1. Select applied or uploaded certificates +2. Choose deployment targets (supports Alibaba Cloud CDN, Tencent Cloud CDN, BaoTa Panel, 1Panel, etc.) +3. Add deployment credentials (such as API keys for Alibaba Cloud, Tencent Cloud) + +#### Notifications +1. Configure notification channels +2. Enter notification content and subject + + +### Site Monitoring + +1. Add domain names to monitor +2. The system will automatically detect the certificate status +3. Set certificate expiration reminder threshold (default is 30 days) +4. When the certificate is approaching expiration, the system will send reminders +5. When multiple consecutive website anomalies are detected, the system will send alerts + + +## Command Line Operations + +```bash +# Basic Operations +allinssl 1: Start service +allinssl 2: Stop service +allinssl 3: Restart service +allinssl 4: Modify secure entry +allinssl 5: Modify username +allinssl 6: Modify password +allinssl 7: Modify port + +# Web Service Management +allinssl 8: Disable web service +allinssl 9: Enable web service +allinssl 10: Restart web service + +# Background Task Management +allinssl 11: Disable background scheduler +allinssl 12: Enable background scheduler +allinssl 13: Restart background scheduler + +# System Management +allinssl 14: Disable HTTPS +allinssl 15: Get panel address +allinssl 16: Update ALLinSSL to the latest version (file overwrite installation) +allinssl 17: Uninstall ALLinSSL +``` + +## License + +This project is licensed under the terms specified in the [LICENSE](./LICENSE) file. \ No newline at end of file