AllInSSL官网
GitHub:https://github.com/allinssl/allinssl
安装AllInSSL
参考官网教程:https://allinssl.com/guide/getting-started
使用二进制安装命令 (推荐)
curl -sSO http://download.allinssl.com/install_allinssl.sh && bash install_allinssl.sh allinssl
docker安装
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 \
allinssl/allinssl:latest
docker compose安装
docker-compose.yml文件内容如下
services:
allinssl:
image: allinssl/allinssl:latest
container_name: allinssl
ports:
- "7979:8888"
environment:
- ALLINSSL_USER=allinssl
- ALLINSSL_PWD=allinssldocker
- ALLINSSL_URL=allinssl
volumes:
- ./data:/www/allinssl/data
restart: always
访问管理网页
打开网址:http://127.0.0.1:7979/allinssl
账户:allinssl
密码:allinssldocker
登录成功界面如下:
授权API管理
新增DNS提供商API授权(阿里云)(用于申请域名证书)
官网教程:https://allinssl.com/guide/help/provider/#阿里云
AccessKeyId: 阿里云 RAM 用户的 AccessKey ID。
AccessKeySecret: 对应的 AccessKey Secret。
权限建议: 为了安全,建议创建一个拥有所需最小权限(例如 DNS 管理
AliyunDNSFullAccess
,CDN 管理AliyunCDNFullAccess
,WAF 管理相关权限等)的 RAM 用户,并使用其 AK/SK。
新增主机SSH授权(用于部署)
输入服务器的地址账户密码即可,后续用来将生成的ssl证书部署到该服务器上。
新建一个自动化部署
自动化部署>添加>快速部署模版
申请证书
部署
选择ssh(本教程使用ssh,也可以自行使用其他方式)
选择配置服务器,输入证书的路径、私钥路径的后缀名。注意
证书文件:/www/ssl/www.xxx.com/cert.pem
私钥文件:/www/ssl/www.xxx.com/key.pem
通知任务(可选)
如下
执行任务
保存上述配置,回到任务列表界面,点击执行
点击查看执行历史
点击查看执行详情
查看自动部署的证书
任务执行成功后,在服务器的对应目录可以看到自动生成的证书,自此自动更新证书任务成功。
Nginx配置
nginx配置https访问
关键代码如下
server {
listen 443 ssl http2; # 监听443端口
server_name xxx.xxx.cn; # 配置的域名
ssl_certificate /opt/appnode/agent/data/ssl/xxx-20250121162206/xxx-cn.pem; # 自动生产的证书文件路径
ssl_certificate_key /opt/appnode/agent/data/ssl/xxx-20250121162206/xxx-cn.key; # 自动生产的证书密钥路径
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_prefer_server_ciphers on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_session_cache shared:SSL:5m;
ssl_session_timeout 5m;
}