前言

在上一期教程中已经提到ACME.SH的综合介绍了,重复部分不再描述。

注意,我说的通匹符和通配符是一个东西,只不过我习惯叫通匹符,都是匹配的意思。

Google SSL证书

Google证书的特色是,1个是逼格要高点,毕竟大厂,其次OCSP服务器有优势,然后ZeroSSL的功能和谷歌基本一样

Google的OCSP地址是 http://ocsp.pki.goog/s/gts1p5/lnDlces6w2o 经过检测,在中国大陆是5个上海Google IP,境外地区是谷歌的全球CDN,考虑到8888的强力,应该还是很给力的。

使用Google证书同样只需要填一个邮箱,同时用Google账号获取Google KEY即可,无费用,也不需要实名认证,也不需要隐私信息。

应该也是支持多域名通配符的,但是以实际为准,因为我没测试这个项目

准备工作

目前Google SSL 仍然处于内测阶段,需要填表获取资格。如果你使用过Rclone(或gclone等衍生版本),则肯定创建过Google Cloud Project。

注意这个和谷歌云计算服务没什么影响,不需要信用卡验证什么的。当然,如果你这个都搞不定的话,可以先考虑其他方式、其他产品,或者参考rclone(或者autorclone、gclone和fclone)教程注册

首先你需要手动开启2个谷歌API,支持普通谷歌账号,也支持谷歌商业、企业版账号。

Public Certificate Authority API 和 Certificate Authority Service API ,最后一个账户是方便你切多账号登陆用的。

参考链接是 https://console.cloud.google.com/marketplace/product/google/publicca.googleapis.com?q=search&referrer=search&authuser=1

https://console.cloud.google.com/marketplace/product/google/privateca.googleapis.com?q=search&referrer=search&authuser=1

然后你需要去这里填表 https://docs.google.com/forms/d/e/1FAIpQLSd8zUIww_ztyT9a56OPq9NXISiyw6Y9g8S7LBtRQjxPhsHz5A/viewform

我是周三晚上填的,周五晚上才能用,别人周五早上申请的,晚上也能用,不排除是周五上班统一处理。原则上需要等邮件通知,但是我们都是邮件还没到就能用了。

如果你不填表,就会如图所示

ERROR: (gcloud.beta.publicca.external-account-keys.create) PERMISSION_DENIED: Permission 'publicca.externalAccountKeys.create' denied on resource '//publicca.googleapis.com/projects/quantum-age-332306/locations/global' (or it may not exist).
- '@type': type.googleapis.com/google.rpc.ErrorInfo
  domain: publicca.googleapis.com
  metadata:
    permission: publicca.externalAccountKeys.create
    resource: projects/quantum-age-332306/locations/global
  reason: IAM_PERMISSION_DENIED

获取Google Key

直接在上面的API页面搜索CloudShell

授权、连接好后,右上角切换终端

当然,你也可以在最右上角,头像那边的,左边一点点,也有个快捷Shell入口,会打开底部小窗口,两个都能用,我用的是快捷版本

然后是命令配置

gcloud services enable publicca.googleapis.com

然后是生成key,注意key可能只能被用一次,换设备可能要重新弄一个

gcloud beta publicca external-account-keys create

然后就到手了

格式是

b64MacKey: _-5XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXyw4gDlRUIlFF7w
keyId: 924559XXXXXXXXXXXXXXXc19

然后记得别弄反了

ACME配置和使用

配置

acme.sh  --register-account -m [邮箱] --server google \
    --eab-kid [申请到的 keyId] \
    --eab-hmac-key [申请到的 b64MacKey]

如果要设置默认CA就

acme.sh --set-default-ca --server google

不设置为默认CA也没啥事,命令后加server Google就行

发起签发请求(没有dns01会报错)

acme.sh --issue -d google.com -d *.google.com --server google  --dns dns-01

然后和老教程一样,设置TXT记录

然后验证

acme.sh --renew -d google.com -d *.google.com \
  --yes-I-know-dns-manual-mode-enough-go-ahead-please

然后就完成了,证书内容还是老方法去目录找即可,文件格式什么的和ZeroSSL一致