1. 安装和配置Docker
1 | ruby复制代码yum install docker |
一定要执行
setenforce
和usermod
命令,否则后面申请证书时会报权限错误
2. 编写Dockerfile
1 | bash复制代码# VERSION 1.0 |
3. 构建docker镜像
在Dockerfile所在的目录下执行docker build -t aliyun-certbot:v1.0 .
命令,构建过程中会出现红色的错误,不用理会,不影响正常使用,最后会出现Successfully built
代表镜像构建成功,执行docker images
命令进行查看
4. 申请并配置阿里云DNS访问密钥
前往ram.console.aliyun.com 申请子账号并配置AliyunDNSFullAccess
权限。然后为子账号配置AccessKey
并记录。
5. 创建certbot-dns-aliyun的配置文件credentials.ini
1 | bash复制代码cat > /opt/aliyun-dns/credentials.ini <<EOF |
6. 申请证书
1 | bash复制代码docker run -it --rm -v /opt/testdomain:/etc/letsencrypt \ |
/opt/testdomain
证书和日志存放的地方,/opt/aliyun-dns
阿里云DNS配置文件存放地方
注意申请的泛域名证书应是通配符后的直接域名,比如你的域名为
8100.tomcat.test.abc.com
,如果申请的证书为*.abc.com
,配置好后,会提示证书有问题,应该申请的证书为:*.tomcat.test.abc.com
6. 配置apache httpd
在/etc/httpd
下新建common_conf/ssl_common.conf
文件,文件内容如下:
1 | vbnet复制代码SSLEngine on |
配置http服务
1 | perl复制代码<VirtualHost *:443> |
重启httpd服务
1 | 复制代码systemctl restart httpd.service |
7. 编写自动续期脚本
1 | bash复制代码#!/bin/bash |
添加定时任务,每天晚上凌晨1点执行
1 | javascript复制代码crontab -e |
本文转载自: 掘金