Discourse をベアメタル OVH サーバー (Fedora Server 38 実行中) にクリーンインストールしようとしていますが、インストールは正常に完了したものの、app.yml で指定したホスト名 forums.dogsrv.dev を使用して接続できません。
OVH のエッジファイアウォールは無効、firewalld は無効、iptables は無効、DNS は正常に解決されています。この時点で他に確認すべきことが見当たらず、何かアイデアがあれば教えていただけると幸いです。
/var/discourse/shared/standalone/log/var-log/nginx/production.log を確認してください。DNS またはその他の理由で証明書の発行が妨げられ、Let’s Encrypt によってレート制限された可能性があります。
その場合、1 週間待つか、別のサブドメイン (例: forums の代わりに forum) を使用できます。
discourse-setup を実行しましたか?
不思議なことに、そのフォルダに production.log はありません。しかし、error.log があり、そこにはこのエラーが繰り返し記録されています。
2023/06/02 07:27:34 [emerg] 289163#289163: cannot load certificate "/shared/ssl/forums.dogsrv.dev.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0909006C:PEM routines:get_name:no start line:Expecting: TRUSTED CERTIFICATE)
そして、その証明書ファイルを確認したところ、空でした。
最初に discourse-setup を実行しましたが、常に以下のエラーで失敗しました。
Hostname for your Discourse? [forums.dogsrv.dev]:
Checking your domain name . . .
WARNING: Port 443 of computer does not appear to be accessible using hostname: forums.dogsrv.dev.
WARNING: Connection to http://forums.dogsrv.dev (port 80) also fails.
これは、.dev TLD がデフォルトで Google の HSTS 事前読み込みリストに含まれているためだと思われたので、app.yml を手動で設定し、./launcher rebuild app を実行したところ、問題なく動作したように見えました。
サブドメインを forum に切り替えてアプリを再構築しましたが、問題は解決せず、以前と同じエラーが発生しています。ただし、forums の代わりに forum となっています。
Dockerの外でファイアウォールにポートを開きましたか?
はい、firewalld は iptables と共に完全に無効になっています。サーバー自体で Apache または Nginx を手動でインストールおよび設定すると、ポート 80 と 443 の両方でトラフィックが許可されていることがわかりますが、HSTS のため、すべての HTTP リクエストで HTTPS リライトを有効にし、機能する SSL 証明書が必要になります。これが現在問題となっている点です。
では、ポート80と443を開いてみてはいかがでしょうか?
まだ着信トラフィックに何か干渉しているように聞こえます。DNSにCloudflareを使用していますか?
いいえ、Googleを使用しています。
Discourse-setup が実行しているテストが失敗している場合は、その原因を突き止める必要があります。Let’s Encrypt が証明書を発行できないことは明らかです。
nginx と Apache のインストール方法がわかっているので、Let’s Encrypt に証明書の発行を試みることができますが、80 または 443 をブロックしていることは明らかです。
問題は、discourse-setup が新しい netcat バージョンで破損していることでした。これは、このプルリクエストで確認できます: https://github.com/discourse/discourse_docker/pull/697
-p フラグを削除すると、discourse-setup はポートで接続を確立できないという誤った報告をしなくなり、正常に完了してアプリを再構築できるようになり、インストールに問題なく接続できるようになりました。
ご協力ありがとうございました。
動作するようになったとのこと、よかったです!再構築で証明書を取得できなかった理由がよくわかりません。再構築を行って discourse-setup ステップをスキップすると思っていたからです。
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.