複数ドメイン / リダイレクトでLet's Encryptを設定

両方のサイトのDNSはサーバーを指していますか?

両方のドメイン名がディスコースサーバーを解決することを確認している場合。

「いいね!」 1

これで動作するようになりました。2回再構築しました。

「いいね!」 1

Google Chromeのシークレットモードでmysite.caにアクセスしても、このメッセージが表示されます。

プライベートではありません

mysite.ca から情報を盗もうとしている攻撃者がいる可能性があります(パスワード、メッセージ、クレジットカードなど)。[詳細はこちら]

NET::ERR_CERT_COMMON_NAME_INVALID

安全なページに戻る 詳細を表示しない

このサーバーは、それがmysite.caであることを証明できませんでした。セキュリティ証明書はforum.mysite.caのものです。これは、設定ミスまたは攻撃者による接続の傍受が原因である可能性があります。

[mysite.caに進む(安全ではありません)]

mysite.caのセキュリティ証明書を取得するにはどうすればよいですか?これは、DigitalOceanのAレコードまたはCNAMEレコードに関連していますか?

「いいね!」 1

実際のURLは何ですか?

domain.comforum.domain.com にリダイレクトしたい場合、DNSレベルでリダイレクトを設定するだけで良いと思います。:thinking:

編集:問題は解決したようですね。

「いいね!」 1

httpsも機能させたい場合はそうではありません。両方のドメインの証明書が必要になります。そうしないと、証明書が無効であるというエラーが表示されます。

機能しているようです。

証明書が有効かどうかを確認するために、「https証明書を確認する」のようなキーワードでGoogle検索すると、いくつかのテストサイトが見つかります。

「いいね!」 1

Chrome/BraveブラウザでCookieを保存しないドメインにアクセスすると、警告が表示されます。

Your connection is not private

Attackers might be trying to steal your information from mysite.ca (for example, passwords, messages, or credit cards). Learn more

NET::ERR_CERT_COMMON_NAME_INVALID

「続行」を押すと、Discourseインスタンスに移動します。元の投稿の指示に従いました。
ドメインのランディングページを作成するためにファイルをアップロードする方法がわかりません。また、ドメインの証明書を取得する方法もわかりません。SSLはサブドメイン/Discourseインスタンスに対してのみ持っています。

解決できたと思います。

「いいね!」 1

CertBot を再度実行し、フォーラムと apex ドメイン名の両方を含めることができます: -d mysite.ca -d forum.mysite.ca。両方の名前を含む新しい証明書が発行されます。

すべてが正常であることを確認するために、テスト中は常にステージング環境を使用する必要があります。その後、本番環境で実行してください。これにより、LE のサーバーへの負荷が軽減されます。

「いいね!」 1

しかし、そのコマンドは app.yml で設定され、サイトが再構築されるときに実行されます。/etc/runit/1.d/letsencrypt にいくつかの変更を加えて再度実行することは可能ですが、ほとんどの人が快適に行えることではありません。そして、それらの変更はイメージが再構築されると消去されます。

これは複雑です。DNS がステージング環境を指す必要があるため、ステージングで異なるホスト名のセットを使用してテストし、その app.yml と DNS 設定を本番環境用に設定するモデルとして使用しない限り、この Let’s Encrypt セットアップを解決するためにステージング環境を使用する余地はあまりありません。

「いいね!」 1

明白な答えは2つあります。

  • NginxやApache2のようなリバースプロキシを使用する。ただし、これはOPにとって最も簡単なタスクではないと感じています(非常に簡単ですが)。
    *Apexドメインを使用しない。

このトピックは、リバースプロキシなしでこれを行う方法についてです。

それはそうでした、そうでした😳 私は2つの異なるトピックを混同しているのでしょうか、それとも単に迷っているだけでしょうか?

とにかく…一般的に言えば、すべての質問は正しくありません。なぜなら、人は自分で解決できない問題を抱えており、求められた解決策は必ずしも正しいものではないからです。なぜなら…尋ねる人は知らないからです😏

ええ、その通りです—あまりにもメタです。

「いいね!」 1

certbot は実行していませんが、アプリを何度も再構築しました。制限があるかどうかはよくわかりません。

certbot は var/discourse で実行しますか?

unityforhesquiaht.ca のリダイレクトは機能しましたが、nuuchahnulth.ca は機能していません。Google Chrome のシークレットモードやその他のブラウザのプライベートモードでもテストしています。app.yml ファイルのインデントが間違っているのか、それともアプリを再構築しすぎたのか疑問に思っています。インデントを確認しましたが、問題ないように思えますが、もう一度確認する必要があります。

「いいね!」 1

それを実行して、すべてのドメインでDNSが設定されていなかった場合、レート制限に達したため、1週間待つか、別のドメインセットを使用する必要があります。

両方かもしれません!

同じサーバーでそれらの証明書を取得したい場合、DNSが問題です。

 pfaffman@noreno:~$ dig +short unityforhesquiaht.ca
164.92.110.32
 pfaffman@noreno:~$ dig +short nuuchahnulth.ca
24.199.125.235
「いいね!」 2

複数のドロップレットに設定しています。おそらくこれでしょう。

1週間待てます。まだユーザーはそれほど多くなく、今はドメインをさらに購入する余裕がありません。お金よりも時間があります(笑)

「いいね!」 1

それが最も可能性の高い問題です。5回で制限に達します。だからこそ、ステージングの使用を提案していました。すべてを設定するための無制限の試行が可能です。もし彼がcertbotを使用していたら、ログに「試行回数が多すぎます…」のようなエラーメッセージが表示され、レート制限と待機時間、別のドメインの使用などが通知されたでしょう。certbotを使用しなかった場合に、同様のエラーがログに表示されるかどうかはわかりません。

「いいね!」 2

ああ。ステージングサイトではなく、Let’s Encrypt のステージング環境のことを言っているのかもしれませんね。Let’s Encrypt のテンプレートでそれがどうやるのか全く分かりません。

「いいね!」 2

はい、LEステージング環境のことです。LEステージングとPebble(ステージング/開発用に構築された小さなacmeサーバー)に関するリンクをいくつかご紹介します。最初のリンクには、さまざまなシナリオの制限が記載されています。

「いいね!」 2

それが、ディスコースのLet’s Encryptテンプレートをステージングモードで使用できるかどうかを知るのに役立ちません。

「いいね!」 1

すべて正常に動作しているようですね。
Discourseインスタンスをサブドメインではなくドメインに配置したいと考えているのですが、どのような問題がありますか?
すでに構築したものや、将来のビルドで変更することは可能でしょうか?
標準インストールを行いましたか?何かヒントやアドバイスはありますか?ありがとうございます。
unityforhesquiaht.ca ドメインを forum.unityforhesquiaht.ca にリダイレクトしようとすると問題が発生するようで、アプリの再構築のために1週間待ったのですが、それでもこの問題が発生しています。

「いいね!」 1