Docker搭建Let's Encrypt并连接阿里云自动签发https证书

简介: Docker搭建Let's Encrypt并连接阿里云自动签发https证书

HTTPS (全称:Hyper Text Transfer Protocol over SecureSocket Layer),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性,而如果我们直接使用HTTP来架设自己的网站的话是并不安全的。Let's Encrypt可以提供免费的证书,如果能通过Let's Encrypt + 阿里云DNS来验证域名,那个样可以实现自动签发证书了。Let's Encrypt连接阿里云可以使用官方提供的api工具。


配置阿里云


1.首先在阿里云域名管理页面解析一个域名,记住你的A记录的值,比如我这里解析了一个域名test.aoarasi.com到我的云服务器。


image.png

image.png


搭建Let's Encrypt


这里假设你已经安装好docker环境,使用以下命令,拉取Let's Encrypt镜像到本地并运行

docker run \
  -itd \
  --cap-add=NET_ADMIN \
  --name=letsencrypt \
  --net=host \
  -v /opt/docker/letsencrypt/:/config:rw \
  -e PGID=1000 \
  -e PUID=1000 \
  -e EMAIL=aoarasi@88.com \
  -e URL=aoarasi.com \
  -e SUBDOMAINS=test \
  -e ONLY_SUBDOMAINS=true \
  -e DHLEVEL=2048 \
  -e VALIDATION=dns \
  -e DNSPLUGIN=aliyun \
  -p 80:80/tcp  \
  -p 443:443/tcp  \
  -e TZ=Asia/Shanghai \
  linuxserver/letsencrypt

这个命令需要主要修改以下几个地方,其它未提及到的参数自行对应修改。

-e EMAIL=aoarasi@88.com  #这里修改为自己的邮件地址
-e URL=aoarasi.com       #这里修改为自己的顶级域名
SUBDOMAINS=test          #这里修改为二级域名的前缀,比如我前面解析的a记录为test
-p 80:80/tcp             #这里根据情况修改,:前是主机端口,后面为映射容器端口
-p 443:443/tcp           #同上

修改完后,拷贝上面的代码运行。注意确保你所设置的端口没有被其它程序占用。


image.png

修改阿里aliyun.ini文件,将文件中的access_key和secret为之前我保存的。

[root@mx dns-conf]# vim  /opt/docker/letsencrypt/dns-conf/aliyun.ini

image.png


修改完后,我们重启一下letsencrypt应用,使配置生效。

docker restart letsencrypt
# 查看启动情况
docker logs -f letsencrypt

直到日志显示server ready时,表示已经成功的申请到了证书,这时使用ctrl+c组合键退出。


image.png


访问


使用我们前面解析的域名test.aoarasi.com来访问测试,发现已经正常使用https解析了。


image.png

查看证书详情,默认给我们三个月的有效期。

image.png

至此!

下期我们将分析如何使用Let's Encrypt来反向代理其它应用和使用自动续期功能,欢迎关注!

相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
1月前
|
SQL 关系型数据库 MySQL
阿里云MySQL数据库价格、购买、创建账号密码和连接数据库教程
阿里云数据库使用指南:购买MySQL、SQL Server等RDS实例,选择配置和地区,完成支付。创建数据库和账号,设置权限。通过DMS登录数据库,使用账号密码访问。同地域VPC内的ECS需将IP加入白名单以实现内网连接。参考链接提供详细步骤。
410 3
|
5天前
|
运维 Java Serverless
Serverless 应用引擎产品使用合集之是否提供工具来给OSS配置HTTPS证书
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
10天前
|
Ubuntu 应用服务中间件 Shell
acme.sh自动申请https证书
该文介绍了如何在Ubuntu 20.04系统上使用acme.sh获取和安装免费的HTTPS证书,适用于已经安装了nginx的环境。首先通过`sudo curl https://get.acme.sh | sh -s email=example@mail.com`安装acme.sh,然后使用`acme.sh --issue -d example.com -w /home/onestudy`生成证书,并用`acme.sh --install-cert`安装到nginx。设置定时任务以定期更新证书,并提供了不同方式的证书获取命令及删除和刷新证书有效性的方法。需确保已配置好域名解析和nginx配置。
22 0
|
10天前
|
弹性计算 Ubuntu Linux
为什么要学习去使用云服务器,外网 IP能干什么,MAC使用Termius连接阿里云服务器。保姆级教学
为什么要学习去使用云服务器,外网 IP能干什么,MAC使用Termius连接阿里云服务器。保姆级教学
|
15天前
|
存储 运维 5G
基于阿里云数据库 SelectDB 内核 Apache Doris 的实时/离线一体化架构,赋能中国联通 5G 全连接工厂解决方案
数据是 5G 全连接工厂的核心要素,为支持全方位的数据收集、存储、分析等工作的高效进行,联通 5G 全连接工厂从典型的 Lambda 架构演进为 All in [Apache Doris](https://c.d4t.cn/vwDf8R) 的实时/离线一体化架构,并凭借 Doris 联邦查询能力打造统一查询网关,数据处理及查询链路大幅简化,为联通 5G 全连接工厂带来数据时效性、查询响应、存储成本、开发效率全方位的提升。
基于阿里云数据库 SelectDB 内核 Apache Doris 的实时/离线一体化架构,赋能中国联通 5G 全连接工厂解决方案
|
21天前
|
消息中间件 弹性计算 物联网
【阿里云弹性计算】阿里云ECS在IoT领域的应用:支撑大规模设备连接与数据处理
【5月更文挑战第26天】阿里云ECS是弹性计算服务,支持IoT设备的连接与数据处理。通过MQTT协议实现设备快速接入,配合消息队列处理异构实时数据。ECS可用于部署数据处理工具、应用服务,如智能家居控制系统,通过弹性伸缩适应负载变化。结合阿里云其他服务,ECS为IoT提供完整解决方案,助力企业数字化转型。
28 0
|
25天前
|
网络安全
https的证书错误,错误码-1012问题及解决方案
https的证书错误,错误码-1012问题及解决方案
25 0
|
1月前
|
Java Linux 数据安全/隐私保护
Docker自定义JDK镜像并拉取至阿里云镜像仓库全攻略
Docker自定义JDK镜像并拉取至阿里云镜像仓库全攻略
639 0
|
1月前
|
缓存 运维 Serverless
Serverless 应用引擎产品使用之在阿里云函数计算中使用Docker进行部署函数如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
1月前
|
Linux Docker 容器
阿里云安装docker教程
阿里云安装docker教程
178 0