问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

群辉7.X 版本利用acme.sh实现证书申请和自动续签

创作时间:
作者:
@小白创作中心

群辉7.X 版本利用acme.sh实现证书申请和自动续签

引用
CSDN
1.
https://m.blog.csdn.net/mfkd1000/article/details/143500948

群辉7.X 版本利用acme.sh实现证书申请和自动续签

http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输。HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

一、域名购买与解析

  1. 到阿里云购买域名,同时域名解析群辉的IPV4或者IPV6都可以,同时获取Ali_Key,Ali_Secret。
  2. 群辉内利用社群的插件或者docker安装ddns-go 或lucky进行域名解析到阿里云
  3. Ali_Key,Ali_Secret位置在,阿里云后台,右上角点头像,弹出AccessKey管理进入增加一个,查看时用记事本记录下Ali_Key,Ali_Secret,注意只出现一次。

二、zerossl账号注册

  1. 到zerossl官网https://app.zerossl.com/signup,注册一个账号,输入邮箱和密码进行注册,后面登陆官网可以看到后台证书。
  2. 注意:
  • 密码要复杂的大小写字母+符合+数字
  • 如果不能点下一步意思网络不能通过,需要魔--法网络自行处理,注册的时候才用上,其它时候不需要
  • 这步骤也可以忽略注册,如果没有注册看不到后台证书。其实也不要看到证书,下面会自动获取下载到本地。

三、群辉docker安装acme.sh

  1. 新建文件夹注意修改路径

    sudo -i
    mkdir -p /volume2/docker/acme
    
  2. 创建compose.yml,注意修改路径

    echo "
    services:
      acme.sh:
        image: neilpang/acme.sh
        container_name: acme.sh
        restart: always
        volumes:
    
  • /volume2/docker/acme:/acme.sh
    network_mode: host
    command: daemon
    " > /volume2/docker/acme/docker-compose.yml
    
    
  1. 运行docker-compose

    cd /volume2/docker/acme
    docker-compose up -d
    
  2. 进入acme.sh容器,进入/root/.acme.sh目录

    docker exec acme.sh /bin/sh
    cd /root/.acme.sh
    
  3. 注册 填写自己的邮箱

    ./acme.sh --register-account -m y2228@163.com
    
  4. 增加阿里key变量,填写自己的上面获取到的

    echo "export Ali_Key="L2222222222222d"" >> /etc/profile
    echo "export Ali_Secret="G5555555555555555555p"" >> /etc/profile && source /etc/profile
    
  5. 申请证书,填写自己的一级或二级域名上面阿里已经解析过的域名

    ./acme.sh --issue --dns dns_ali -d test.m1100.top
    
  6. 证书生成后在/volume2/docker/acme/目录下域名_ecc文件夹里

  7. 完成后退出容器

    exit
    
  8. 进入 /usr/syno/etc/certificate/_archive/目录查看多少个文件夹,同时分清楚文件夹名称,等下一步增加证书的时候会自动创建一个新文件夹注意文件夹名称,到时候把证书替换到新的文件夹内。

    cd /usr/syno/etc/certificate/_archive/
    ls
    
  9. 把证书下载到桌面

  10. 进入群辉-控制面板-安全性-证书-增加证书-设置为默认证书

  11. 进入设置为新增加的域名

  12. 新上传后,/usr/syno/etc/certificate/_archive/目录下增加了一个文件夹

  13. 里面为最新的证书和私钥。

四、设置自动更新证书

  1. 创建sh执行定时更新

    echo "
    #!/bin/sh
    docker start acme.sh
    sleep 10
    rm -rf /volume2/docker/acme/test.m1100.top_ecc/*   #替换自己的域名和地址
    docker exec acme.sh  /root/.acme.sh/./acme.sh source /etc/profile
    docker exec acme.sh /root/.acme.sh/./acme.sh --issue --dns dns_ali -d test.m1100.top  #替换自己的域名和地址
    sleep 15
    cp -f /volume2/docker/acme/test.m1100.top_ecc/test.m1100.top.cer   /usr/syno/etc/certificate/system/default/cert.pem     #替换自己的域名和文件夹
    cp -f /volume2/docker/acme/test.m1100.top_ecc/test.m1100.top.key   /usr/syno/etc/certificate/system/default/privkey.pem     #替换自己的域名和文件夹
    cp -f /volume2/docker/acme/test.m1100.top_ecc/fullchain.cer   /usr/syno/etc/certificate/system/default/fullchain.pem                  #替换自己的域名和文件夹
    #
    cp -f /volume2/docker/acme/test.m1100.top_ecc/test.m1100.top.cer   /usr/syno/etc/certificate/_archive/yptcQK/cert.pem          #替换自己的域名和文件夹
    cp -f /volume2/docker/acme/test.m1100.top_ecc/test.m1100.top.key   /usr/syno/etc/certificate/_archive/yptcQK/privkey.pem     #替换自己的域名和文件夹
    cp -f /volume2/docker/acme/test.m1100.top_ecc/fullchain.cer    /usr/syno/etc/certificate/_archive/yptcQK/fullchain.pem                  #替换自己的域名和文件夹
    #
    " > /volume2/docker/acme/upcert.sh
    
  2. 进入群辉控制面板-任务计划-计划任务

  • 常规 名称:自定义 用户:root
  • 计划 日期:每月 时间:机器在开机状态
  • 任务设置 执行任务 bash /volume2/docker/acme/upcert.sh

其它命令

  • 注销域名

    docker exec acme.sh /root/.acme.sh/./acme.sh --revoke -d test.m1100.top
    
  • 删除账户

    docker exec acme.sh /root/.acme.sh/./acme.sh --deactivate-account
    
  • 带锁没有安全访问提示!
    如果上面操作复杂,下面提供简单的插件
    如果上面操作复杂,下面提供简单的插件
    如果上面操作复杂,下面提供简单的插件
    插件下载 | 镜像下载(备用)
    123网盘 | 百度网盘
    ) 更新 Docker 守护进程

    1. 更新 DSM SSL 配置
    2. 升级系统(未实现)
    3. 升级开发环境(未实现)
    4. 取消并退出

      2025-03-09 19:37:03 - 检测到已验证用户,跳过身份验证
      请选择一个升级选项:
    5. 更新dockerdaemen
    6. 更新dsm_ssl需要安装dokcer
    7. 升级bl
    8. 升级de
    9. 取消升级
      请输入选项编号: 2
      2025-03-09 19:37:09 - 正在执行选项:2
      2025-03-09 19:37:09 - 正在更新 dsm_ssl...
      2025-03-09 19:37:10 - 检查 Docker 和 Docker Compose 是否安装...
      2025-03-09 19:37:10 - 查找 Docker 数据目录...
      2025-03-09 19:37:10 - 选择的 /docker 目录为: /volume2/docker
      2025-03-09 19:37:10 - 创建目录 /volume2/docker/acme...
      2025-03-09 19:37:10 - 未找到 .env 文件,将引导您进行配置
      请选择 DNS 提供商:
    1. 阿里云
    2. 腾讯云
    3. Cloudflare
      输入数字 (1/2/3):1
      请输入阿里云 API Key:填自己的API Key
      请输入阿里云 API Secret:填自己的API Secret
      请输入域名:填自己的域名
      请输入邮箱(用于注册 acme.sh 账户):填自己的邮箱
      剩下的自动完成!!!!
      2025-03-09 16:46:41 - 正在更新 dsm_ssl...
      2025-03-09 16:46:42 - 检查 Docker 和 Docker Compose 是否安装...
      2025-03-09 16:46:42 - 查找 Docker 数据目录...
      2025-03-09 16:46:42 - 选择的 /docker 目录为:
      2025-03-09 16:46:42 - 目录 /已存在
      2025-03-09 16:46:42 - 检测到 .env 文件,将使用现有配置
      2025-03-09 16:46:42 - 创建 docker-compose.yml 文件...
      2025-03-09 16:46:42 - 启动 Docker 容器...
      WARN[0000] The "DP_ID" variable is not set. Defaulting to a blank string.
      WARN[0000] The "DP_KEY" variable is not set. Defaulting to a blank string.
      WARN[0000] The "CF_KEY" variable is not set. Defaulting to a blank string.
      WARN[0000] The "CF_EMAIL" variable is not set. Defaulting to a blank string.
      [+] Running 1/1
      ⠿ Container acme.sh Removed 5.4s
      WARN[0000] The "DP_ID" variable is not set. Defaulting to a blank string.
      WARN[0000] The "DP_KEY" variable is not set. Defaulting to a blank string.
      WARN[0000] The "CF_KEY" variable is not set. Defaulting to a blank string.
      WARN[0000] The "CF_EMAIL" variable is not set. Defaulting to a blank string.
      [+] Running 1/1
      ⠿ Container acme.sh Started 8.2s
      2025-03-09 16:46:56 - 等待容器就绪...
      2025-03-09 16:46:56 - 清理旧证书...
      2025-03-09 16:46:56 - 注册 acme.sh 账户...
      2025-03-09 16:47:10 - 生成 SSL 证书...
      2025-03-09 16:49:07 - SSL 证书已生成,路径为
      2025-03-09 16:49:07 - 替换默认证书中...
      2025-03-09 16:49:07 - 替换默认证书完成,重启 nginx...
      2025-03-09 16:49:07 - 脚本执行完成!

    #若果有问题可以私信 !多谢阅读

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号