私は、ユーザーが自分のWebサイトを作成できるWebアプリケーションを構築しています。ユーザーは、これらのサイトで独自のドメイン名を指定することができます。アプリケーションのプロトタイプは既に存在します。 Apacheはすべてのホスト名に対する要求を受け入れ、実際のドメインマッピングと解決はアプリケーションレベルで行われます(単純なデータベース検索で、要求されたホスト名と一致するサイトが取得されます)。ウェブアプリケーションでユーザー提供のSSL証明書をサポートする方法
ここで私は立ち往生していますが、ユーザーのSSL証明書がこの方程式に適合するかどうかです。ユーザーがSSL証明書をアップロードできるようにするために必要な手順は、アプリケーションがホスト名へのセキュアなHTTP要求を正常に処理できるようにすることです。これはアプリケーションだけで処理できるものなのでしょうか?
証明書がどこから来るのかという問題は、本当に別のものです。 Let's Encryptを潜在的な解決策としてすでに議論しました。私の質問は、ドメインごとに別々のApache仮想ホストが存在しないことを念頭に置いて、証明書をインストールする方法と場所の詳細です。 –
@SamHastings私のポイントは、ユーザーが証明書をアップロードしたりインストールしたりしないことです。あなたのシステムは、Let's Encryptツールを使用して、ユーザーに代わってApacheに証明書をリクエストし、検証し、インストールします。彼らは名前の "ユーザーのSSL証明書"になります - 実際にはユーザーによって提供されません。別の仮想ホストにまで、Let's Encryptは実際にあなたのために世話をすることができると思いますが、現時点では別のドメインを既存のサーバーに追加する作業をしているので、ちょっと混乱することがあります。 – manassehkatz