Discourseにアクセスできません - SSLの問題

こんにちは。

フォーラムはこちらです:https://forum.survivingeconomicabuse.org/

SSL証明書の期限切れのため、現在アクセスできないと聞いています。

昨年の夏にサイトをセットアップし、フォーラムは保護されていましたが、証明書を更新できなかったようです(推測ですが)。証明書を強制的に更新する方法についてのさまざまなスレッドを調べましたが、何も機能しないようです。既存の証明書を削除してアプリを再構築するという提案もありましたが、これも機能しませんでした。

これについて何かヒントを教えていただけますでしょうか。コマンドラインはそれほど苦手ではありませんが、専門家ではありません。

よろしくお願いします!

再構築が必要です。

  cd /var/discourse
 ./launcher rebuild app
「いいね!」 3

何度か再構築を試しましたが、成功しませんでした。念のためもう一度試してみます。

再構築を試しましたが、残念ながらサイトは同じままです。

これを最初に実行してください

apt-get update
apt-get upgrade

http://でデフォルトのApacheページが表示されるようになりました。これは奇妙なことではありませんか?

いいえ、違います。SSL証明書が期限切れになったため、httpでブラウジングできます。

これは、サーバーで Apache が実行されていることを示唆しているため、削除または無効にする必要があります。また、多数の再構築を行った場合、レート制限を受けており、新しい証明書を取得できるのは 1 週間後になる可能性があります。

「いいね!」 1

もし私が間違っていたら訂正してください。エラーを探すために /var/discourse/shared/standalone/letsencrypt/acme.sh.log を確認することもできます。

Apacheを削除しましたが、フォーラムにアクセスできません。

この時点で、問題を完全に理解するために他にできることはありますか?

これを試すと、権限が拒否されます…

私の知る限り、デフォルトではDiscourseはhttpsなしでは動作しません。

しかし、/var/discourse/container/app.ymlのこれらの行をコメントアウト(先頭に#を追加)して、アプリを再構築してみてはどうでしょうか?

#  - "templates/web.ssl.template.yml"
#  - "templates/web.letsencrypt.ssl.template.yml"

サーバーにrootでログインしていますか?どのように接続していますか?

以前にコメントアウトしていたので、元に戻して再構築しましたが、変更はありませんでした。

DigitalOceanでrootとしてログインしています。

サーバーに他のアプリケーションがない場合は、単純にフォーマット/リセットして、クリーンなサーバーにしてからDiscourseを再インストールし(その前にバックアップをダウンロードしてください!)、Discourseのバックアップを復元できます。

しかし、Jayが言うように、


とはいえ、疑問に思っています。この場合、app.ymlのSSL行をコメントアウトすると、フォーラムはHTTPで動作し、1週間後にコメントアウトを解除して再構築を行うと、動作する証明書を取得できるでしょうか?

試したときに何が起こりますか?

試しましたか?

./launcher start app

しかし、おそらく必要になるでしょう。

  ./launcher rebuild app

しかし、前述したように、おそらく十分に再構築したため、Let’s Encrypt のレート制限に達しているでしょう。1 週間待つか、複数のドメインでの Let’s Encrypt の設定 を試して、別のサブドメイン (まずサーバーを指す DNS エントリを作成する) を追加して、再度再構築してみてください。

エラーを確認するには、以下を確認してください。

  tail  /var/discourse/shared/standalone/logs/var-log/nginx/error.log

nginx のエラーを確認できます。

start app = “何もすることがありません。コンテナはすでに起動しています”

最近、追加の変更なしで再構築しました。

実行しました: ls -l /var/discourse/shared/standalone/ssl

新しい証明書があるように見えますか?

tail /var/discourse/shared/standalone/logs/var-log/nginx/error.log

「そのようなファイルまたはディレクトリはありません」というエラーが表示されますか?

sudo を使って試してください:
sudo nano /var/discourse/shared/standalone/letsencrypt/acme.sh.log

@stuartleech まだ問題が解決していないようですが、何かお手伝いできることはありますか?

すみません、こちらが正しいはずでした:

root@forum:~# tail  /var/discourse/shared/standalone/log/var-log/nginx/error.log
2022/02/04 17:04:01 [emerg] 19332#19332: cannot load certificate "/shared/ssl/forum.survivingeconomicabuse.org.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0909006C:PEM routines:get_name:no start line:Expecting: TRUSTED CERTIFICATE)

現在、この問題に取り組んでおり、SSLの問題がまだ解決していません。IPがレート制限されているのか、それとも見えていないネットワークまたはファイアウォールの問題があるのか判断できません。

「いいね!」 1

参考までに、これでSSLの問題が解決しました。ありがとうございます!

「いいね!」 1