随意居论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 1732|回复: 1

[docker]利用acme.sh自动获取tls证书

[复制链接]

2

主题

3

帖子

26

积分

版主

Rank: 7Rank: 7Rank: 7

积分
26
发表于 2022-1-20 11:19:02 | 显示全部楼层 |阅读模式
本帖最后由 fsunset 于 2022-2-17 09:02 编辑


> 默认为宿主机已安装好docker,未安装的参照docker官方文档安装即可.
> 本文仅为dnsapi校验方式获取证书.
1. 获取域名所在服务商的api信息(示例为阿里云)

    1.1 登陆 https://www.aliyun.com/ 阿里云账号;

    1.2 点击右上角控制台;

   

    1.3 鼠标放在右上角头像处,跳出对话框点击assesskey管理;

  

    1.4 进入后选择创建AssesKey,按提示完成步骤后获得AssessKeyID及AssessKeySecret;

2. 在阿里云域名-解析中添加记录做好域名解析,动态域名按论坛教程做好ddns;

3. 创建docker容器获取tls证书;

    3.1 创建容器
```shell
docker run -itd --name="acme.sh" --net=host -v /path/to/local:/acme.sh -e Ali_key=YourAssessKeyID -e Ali_secret=AssessKeySecret --restart=always neilpang/acme.sh daemon

```
> /path/to/local为你本机需要储存证书的目录;YourAssessKeyID/Secret为此前获取的ID及Secret;
    自此docker创建完成并运行;

    3.2 申请证书
-----------------------------

> 2022/02/17 添加内容,现在acme.sh默认证书是zerossl的,zerossl需要eab较为麻烦,我们将默认CA修改为letsencrypt


```shell

docker exec acme.sh --set-default-ca --server letsencrypt

```

------------------------------


```shell

docker exec acme.sh --issue --dns dns_ali -d Prefix.YourDomain.com -d '*.YourDomain.com' --keylength ec-384

```

> Prefix.YourDomain.com为你做好解析的二级域名,*.YourDomain.com为泛域名; --keylength ec-384 为ECC证书,如去掉此项则为RSA证书;

4. 设置crontab任务自动续签
运行`crontab -e`编辑crontab文件,添加下面的内容并保存

```shll
*/10 0 * * * docker exec acme.sh --cron
```
教程结束,去你挂载的/path/to/local文件夹下看看吧;
另使用证书的时候建议使用fullchain.cer;否则部分浏览器仍然是小红锁;




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

2

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2022-1-20 12:25:19 | 显示全部楼层
居然看不懂
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|随意居论坛 ( 粤ICP备2022000312号 )

GMT+8, 2025-1-9 17:53 , Processed in 0.086544 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表