5

Let's Encrypt の ZeroSSL.com ページを使用して作成された ssl 証明書を Google Cloud Platform にインストールしようとしています。そのために、無料の SSL 証明書ウィザードに従いました。ZeroSSL ページは、プロセスで次の 4 つのファイルを生成します。 domain-crt.txt domain-key.txt account-key.txt domain-csr.txt

Google クラウド プラットフォームは、次の 2 つのファイルを要求します。 PEM でエンコードされた X.509 公開鍵証明書 暗号化されていない PEM でエンコードされた RSA 秘密鍵

私はすべての組み合わせを作成し、ウェブで見つけることができるすべての提案に従いましたが、成功しませんでした.

4

2 に答える 2

5

これを zeroSSL の人々に尋ねたところ、Alexander が解決策を教えてくれました。

SSL Certificate Wizard はデフォルトでより長い、より安全な 4096 ビット キーを生成しますが、Google は 2048 ビット キーのみを受け入れます。そのため、最初にhttps://zerossl.com/free-ssl/#csrでCSR ジェネレーターを使用し、2048 ビットを選択していることを確認して、新しい CSR を個別に生成する必要があります。次に、生成されたキーと CSR をダウンロードし (これは LE キーではなくドメイン キーであることに注意してください)、最初に使用したものと同じ LE キーと、この新しい CSR を SSL 証明書ウィザードで使用します。ウィザードの最後の手順で、domain-crt.txt ファイルを 2 つに分割する必要がある場合があります。---BEGIN CERTIFICATE----- と ---END CERTIFICATE----- の間の最初の部分は、「公開鍵証明書」フィールドに入ります。最後に、domain-key.txt の内容を「秘密鍵」フィールドに貼り付けます。

于 2016-09-22T19:48:10.520 に答える
2

コマンドラインから無料でこれを行うことができます:

Certbot クライアントをインストールします。

$ sudo brew install wget
$ wget https://dl.eff.org/certbot-auto
$ chmod a+x ./certbot-auto
$ ./certbot-auto --help

次に、証明書を生成するには:

$ cd certbot (if not already there)
$ sudo ./certbot-auto certonly --debug -a manual -d www.yoursite.com -d yoursite.com (<--if you want naked too.)

ドメインの検証に必要なチャレンジ URL と応答を示す画面が表示されます。それぞれを追加して展開します。各 URL を機能させたままにします。(これらは更新時に必要になります。) ネイキッドと www の両方を実行する場合、サブドメインごとに 1 回ずつ、チャレンジ URL を 2 回実行する必要があります。最後に、次のメッセージが表示されます。

  • おめでとう!証明書とチェーンは /etc/letsencrypt/live/www.yoursite.com/fullchain.pem に保存されています。あなたの証明書は 2016-xx-07 に期限切れになります。将来、この証明書の新しいバージョンまたは調整されたバージョンを取得するには、単に certbot-auto を再度実行します。非対話的にすべての証明書を更新するには、「certbot-auto renew」を実行します

ディレクトリを pem ファイルが配置されている場所に変更します。

$ cd /private/etc/letsencrypt/live/www.yoursite.com

暗号化されていないキーを作成します (これは、GAE にアップロードするキーです。失敗した場合は、元の privkey.pem を使用します)。

$ sudo openssl rsa -in privkey.pem -out unencrypted_key.pem

https://console.cloud.google.com/appengine/settings/certificates?project=yoursiteに移動します。クリックUpload a new SSL certificate

これらの PEM ファイルをテキスト エディターで開き、フィールドの内容をコピーして貼り付けます。(fullchain.pemは公開鍵です。 unencrypted_key.pemは暗号化されていない秘密鍵です。)

注: 末尾のスペースや改行は必ず削除してください。

それはそれを行う必要があります。

デバッグ:

証明書を GAE 設定ページに貼り付けると、次のinvalidエラーが表示されます。

  • 末尾の改行やスペースは必ず削除してください。

  • それでも PEM ファイルを受け入れない場合は、unencrypted_key.pemのコードを元のコードに置き換えます。privkey.pem

自作エラーが発生した場合:

$ cd /usr/local/Library
$ sudo git pull origin master

augeas エラーが発生した場合:

$ brew install augeas

警告が表示された場合: augeas-1.4.0 は既にインストールされています。リンクされていません。

$ sudo brew link augeas

ExecutableNotFound の場合:

$ brew install dialog

警告: dialog-1.2-20150920 が既にインストールされている場合は、リンクされていません。

$ sudo brew link dialog

更新中:

$ cd certbot
$ ./certbot-auto certonly --debug --force-renew -a manual -d www.yoursite.com -d yoursite.com

(「到達できません...」というエラーが表示される場合がありますが、証明書はまだ作成されています。) ディレクトリを pem ファイルが配置されている場所に変更します。

$ cd /private/etc/letsencrypt/live/www.yoursite.com

暗号化されていないキーを作成します (これは、GAE にアップロードするキーです。失敗した場合は、元の privkey.pem を使用します)。

$ sudo openssl rsa -in privkey.pem -out unencrypted_key.pem

fullchain.pem公開鍵です。
unencrypted_key.pem暗号化されていない秘密鍵です

GAE 設定に移動し、上記の概要に従ってインストールします。

于 2016-09-22T20:31:23.443 に答える