diff --git a/README.md b/README.md index 601cc8bc..d925b7f9 100644 --- a/README.md +++ b/README.md @@ -142,6 +142,7 @@ http://your_server_ip:7001 * [Cloudflare](./doc/cf/cf.md) * [腾讯云](./doc/tencent/tencent.md) * [windows主机](./doc/host/host.md) +* [google证书](./doc/google/google.md) ## 八、问题处理 diff --git a/doc/google/google.md b/doc/google/google.md new file mode 100644 index 00000000..3cf7e3c8 --- /dev/null +++ b/doc/google/google.md @@ -0,0 +1,37 @@ +# google证书申请教程 + +## 1、启用API +打开如下链接,启用 API + +https://console.cloud.google.com/apis/library/publicca.googleapis.com + +打开该链接后点击“启用”,随后等待右侧出现“API已启用”则可以关闭该页。 + +## 2、 申请Key +随后打开“Google Cloud Shell”(在右上角点击激活CloudShell图标)。 + +等待分配完成后在 Shell 窗口内输入如下命令: + +```shell +gcloud beta publicca external-account-keys create +``` +此时会弹出“为 Cloud Shell 提供授权”,点击授权即可。 + +执行完成后会返回类似如下输出;注意不要在没有收到 Google 的邮件时执行该命令,会返回命令不存在。 + +```shell +Created an external account key +[b64MacKey: xxxxxxxxxxxxx +keyId: xxxxxxxxx] +``` +记录以上信息备用 + + +## 3、 创建证书流水线 +选择证书提供商为google, 开启使用代理 + +## 4、 将key信息作为EAB授权信息 +google证书需要EAB授权, 使用第二步中的 keyId 和 b64MacKey 信息创建一条EAB授权记录 + +## 5、 其他就跟正常申请证书一样了 + diff --git a/packages/plugins/plugin-cert/src/plugin/cert-plugin/index.ts b/packages/plugins/plugin-cert/src/plugin/cert-plugin/index.ts index 9a92d228..7d44f35c 100644 --- a/packages/plugins/plugin-cert/src/plugin/cert-plugin/index.ts +++ b/packages/plugins/plugin-cert/src/plugin/cert-plugin/index.ts @@ -64,7 +64,8 @@ export class CertApplyPlugin extends CertApplyBasePlugin { type: "eab", }, maybeNeed: true, - helper: "如果使用ZeroSSL或者google证书,需要提供EAB授权, 请前往 https://app.zerossl.com/developer 生成 'EAB Credentials for ACME Clients' ", + helper: + "如果使用ZeroSSL或者google证书,需要提供EAB授权\nZeroSSL:请前往 https://app.zerossl.com/developer 生成 'EAB Credentials' \n Google:请前往https://github.com/certd/certd/blob/v2/doc/google/google.md", }) eabAccessId!: number; @@ -103,7 +104,7 @@ export class CertApplyPlugin extends CertApplyBasePlugin { vModel: "checked", }, maybeNeed: true, - helper: "如果acme-v02.api.letsencrypt.org或goog被墙无法访问,请尝试开启此选项", + helper: "如果acme-v02.api.letsencrypt.org或dv.acme-v02.api.pki.goog被墙无法访问,请尝试开启此选项", }) useProxy = false;