静看光阴荏苒
不管不顾不问不说也不念

使用Certbot申请Google证书

前几天看到的消息,我当时就申请试了下,直接给我那个mattermost的聊天室部署上了,不过一直没空水文章。。今天把整个申请和配置的步骤记录一下。

首先要在这里填写一个申请表:

https://docs.google.com/forms/d/e/1FAIpQLSd8zUIww_ztyT9a56OPq9NXISiyw6Y9g8S7LBtRQjxPhsHz5A/viewform?ts=620a6854

里面有一个Google Cloud Project ID,这个是必须要填的,在你的GCP控制台-信息中心-项目信息可以查看到:

等差不多半天吧,Google那边审核通过后,邮箱里面会收到一封这样的邮件:

现在在GCP控制台的右上角打开CloudShell,执行下面的命令切换到你当时申请时填写的项目ID:

gcloud config set project 项目ID

启用Public CA API:

gcloud services enable publicca.googleapis.com

申请EAB密钥ID和HMAC:

gcloud beta publicca external-account-keys create

申请成功的话,回显类似:

Created an external account key
[b64MacKey: xxxxx
keyId: xxxxx]

这里注意这个EAB密钥是有使用期限的,获得后的7天内得使用一次,如果在7天内未使用会失效。

另外使用EAB密钥注册的ACME帐户是没有过期时间的。

有了EAB密钥ID和HMAC后就可以用Certbot注册ACME账户了:

certbot register \
    --email "example@example.com" \
    --no-eff-email \
    --server "https://dv.acme-v02.api.pki.goog/directory" \
    --eab-kid "xxxxx" \
    --eab-hmac-key "xxxxx"

注册完成后就可以像往常一样申请证书了,这里假设给你的现有Nginx站点申请Google证书,可以使用下面的命令:

certbot --nginx --server "https://dv.acme-v02.api.pki.goog/directory"

这个是基于HTTP-01的验证方式,如果你要申请通配符证书得使用DNS-01的验证方式,这里就不演示了。

申请下来的证书长这样:

赞(8)
未经允许不得转载:荒岛 » 使用Certbot申请Google证书
分享到: 更多 (0)

评论 5

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    每个证书有效期多久的啊?

    Vincent Young2年前 (2022-04-18) Google Chrome 100.0.4896.88 Google Chrome 100.0.4896.88 Mac OS X  10.15.7 Mac OS X 10.15.7回复
  2. #2

    立马就换

    橘子2年前 (2022-04-21) Google Chrome 99.0.4894.185 Google Chrome 99.0.4894.185 GNU/Linux x64 GNU/Linux x64回复
  3. #3

    la神更新时间间隔越来越长了, :shock: :shock:

    白墨2年前 (2022-05-02) Google Chrome 100.0.4896.127 Google Chrome 100.0.4896.127 Android 11 Android 11回复
  4. #4

    看上去只能申请一个吗?

    Saiki2年前 (2022-07-14) Microsoft Edge 103.0.1264.49 Microsoft Edge 103.0.1264.49 Windows 10 x64 Edition Windows 10 x64 Edition回复

分享创造快乐

广告合作资源投稿