深入浅出解读http和https及ACME协议工作原理(另附域名证书申请教程)

名词说明

  • CA(Certificate Authority)

数字证书认证机构,也称为电子商务认证中心、电子商务认证授权机构;是负责发放和管理数字证书的权威机构,并作为电子商务交易中受信任的第三方,承担公钥体系中公钥的合法性检验的责任。

  • .key 文件

私钥

  • .csr 文件(certificate signing request)

证书签名请求文件;含有公钥信息及相关资讯的档案。

  • .crt 文件(certificate)

用.csr 生成的证书文件(包含了由私钥文件生成的公钥)。

  • x.509

是密码学里公钥证书的格式标准。X.509证书里含有公钥、身份信息(比如网络主机名,组织的名称或个体名称等)和签名信息(可以是证书签发机构CA的签名,也可以是自签名)

  • RA(Registration Authority)

数字证书注册审批机构,给申请数字证书者发放证书,发放前对申请者进行审合登记,它是CA的延伸机构。

  • PKI(Public Key Infrastructure)

公钥基础设施,由密钥管理(发放,吊销),密钥合法性验证,认证机构,密钥发放等组成。为数据完整性,隐私性,数据身份认证等提供基础服务。

前言

​ 不知道小伙伴们注意到没有,现在我们访问大多数网站的时候,他们的网站前面都会显示一个HTTPS的字样,这就代表该网站是使用的SSL证书加密的。

​ 而SSL证书是需要权威的专门机构颁发的,那么这个颁发过程又是怎样的呢?怎样颁发才能更加高效便捷、省心省力呢?

​ 今天,我们就来详细聊聊ACME协议。正是它,大大简化了我们的SSL证书管理。

​ 在本篇文章中,首先我们会介绍一下HTTPS的加密传输过程,以便于为理解后面的知识扫清障碍;其次会通过了解传统人工的SSL证书管理方式来理解为什么我们需要使用ACME协议;最后详细解读一下ACME协议是如何工作的。

HTTPS的加密传输过程

HTTP、HTTPS

当我们通过浏览器访问某一网站时,通常分为两种形式:

  • 一种是HTTP明文传输
  • 一种是H
  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Certbot 是一个开源的工具,用于自动化安装和更新 SSL/TLS 证书。目前,Certbot 官方并不支持 Windows 操作系统。但是,有一些第三方开发者已经为 Windows 平台提供了一些替代方案。 以下是一个使用 Certbot 在 Windows 上运行制作泛域名证书的指南: 1. 安装 Certbot-ACME-Installer:这是一个基于 PowerShell 的脚本,可用于在 Windows 上自动安装和配置 Certbot。此脚本是由 Certbot 官方社区维护的,可以在 GitHub 上找到。在安装前请确保已经安装了 PowerShell 2.0 及以上版本。 2. 运行 Certbot-ACME-Installer:在 PowerShell 中执行以下命令,即可安装 Certbot: ``` Set-ExecutionPolicy Bypass -Scope Process -Force; ` iex ((New-Object System.Net.WebClient).DownloadString('https://dl.eff.org/certbot-auto.ps1')) ``` 安装完成后,会在 `C:\Program Files (x86)\Certbot` 目录下生成 Certbot 的可执行文件。 3. 生成泛域名证书:在 PowerShell 中执行以下命令,即可生成泛域名证书: ``` certbot-auto certonly --server https://acme-v02.api.letsencrypt.org/directory --manual --preferred-challenges dns-01 --email admin@example.com --agree-tos -d example.com -d *.example.com ``` 说明: - `certonly`:表示只生成证书,不进行安装。 - `--server https://acme-v02.api.letsencrypt.org/directory`:表示使用 Let's Encrypt 的 ACME v2 API。 - `--manual`:表示手动进行验证。 - `--preferred-challenges dns-01`:表示使用 DNS 验证方式。 - `--email admin@example.com`:表示管理员邮箱。 - `-d example.com -d *.example.com`:表示需要生成证书域名,其中 `example.com` 为主域名,`*.example.com` 为泛域名。 4. 验证域名:在运行以上命令后,Certbot 会提示您添加 DNS 记录。请按照提示,在您的 DNS 服务商中添加相应的 TXT 记录,以完成域名验证。 5. 下载证书:验证通过后,Certbot 会在 `C:\Program Files (x86)\Certbot\live\example.com` 目录下生成证书文件。您可以将 `cert.pem` 和 `privkey.pem` 文件下载到本地,以备后续使用。 需要注意的是,以上的指南并非 Certbot 官方支持的方案,使用时需要自行承担风险。在使用前请仔细阅读相关文档和指南,确保您的系统安全和稳定。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值