a) メールを完全に設定せずに Discourse を使う方法。これは機能しますか?おそらく、各アカウントを有効化するためにいくつかの手動手順に従う必要があると思いますが、予想されるユーザー数が限られているので問題ありません。これで動作しますか?メール送信が機能しない場合の制限は何でしょうか?もちろん、メール通知を送信できないことは避けられないデメリットですが、それだけでしょうか?
b) サーバーはプライベート IP を使用しつつ、メール専用のパブリックアドレスを持つことも可能です。セットアップが簡単になるよう最適化されていると想定し、インストール手順に従ってサーバーアドレスを一度だけ入力します。その後、そのアドレスは HTTP リダイレクトや SMTP などに使用される可能性があります。これは簡単に区別できますか?プライベート IP アドレスを持つサーバーと、メール専用で一致しないドメインを簡単に設定できますか?
Discourse の経験はまだありませんが、実際に問題に直面した際には自分で調べて対応する用意はあります。しかし、ここでは根本的な選択(a か b か)があるため、間違った道に進まないようアドバイスがいただければ幸いです。
メールに関しては、外部メールサーバーに接続する必要があります。パブリックインターネットにはいつでもアクセス可能です!ただし、このトピックについては詳しくありません。ただ、「ねえ、私は 10.0.0.1 です、メールを送信してください」という形でパブリックメールサーバーに接続しても、プライベート IP アドレスを使用しているため機能しないだろうと予想しています。ここではパブリックアドレスが必要だと考えています。
皆さんの回答を楽観的に読むと、設定されたドメインはクライアントの HTTP セッションには使用されないようです。サーバーがプライベート IP でアクセス可能であり、その IP に接続する場合、すべての自己参照リンクやリダイレクトは相対的になるため、ユーザーはサーバーが接続されていることを想定しているドメインへリダイレクトされません。xyz.com をドメインとして設定したまま、ブラウザで Discourse を 10.0.0.1 で開くだけで、機能しない xyz.com のアドレスへ転送されることなく利用できます。
その場合、サーバーが外部 IP にアクセスできる(受信フィルタリングのみ)のであれば、メールサービスへの接続に問題はないはずです。
特に、ドメインが正しい IP に解決される場合です。
インストールのためにポートを開く必要さえありません。VPN を使用してドメインをプライベート IP に指すように設定し、VPN トンネルを通じて example.com というドメインにアクセスできるからです。
Discourse が相対 URL のみを使用するかどうかは確信がありませんが、おそらくそうではないでしょう。ただし、ドメインの DNS レコードを変更することで、10.0.0.1 アドレスを指す A レコード(最初のもの)と、8.7.6.5 というパブリック IP を指す 2 つ目の A レコードを持つように設定できます。アドレスの解決やキャッシュなどの面で、時々面倒なこともあるかもしれませんが、試してみる価値はあります。
VPN 内で動作する Web サーバーの場合、VPN サーバーが DNS としても機能する必要があります。内部 DNS は、外部 IP に解決される同じドメインを内部 IP に解決する必要があります。そして、サーバーの IP をどこでも使用することをやめ、DNS にこの複雑さを任せるべきです。現在、私の VPN は IP レベルでしか動作しておらず、これらの詳細に気づいていませんでした。
デメリット: すべてのユーザーの www を台無しにしてしまう可能性があります。