1. ホーム
  2. ssl

[解決済み] SNIとCCSを使用してhttpsのデフォルトのWebサイトを設定する方法

2022-02-19 15:41:56

質問事項

IIS8.5を使用しており、デフォルトのWebサイトしか設定されていませんが、同じロードバランスIPで数千のドメインがそのサイトを指しています。

この数千のドメイン全てにhttps(SSL)を提供する予定です。すべての.pfx証明書はセントラル証明書ストア(CCS)に格納され、サーバー名表示(SNI)機能により、同じIPを使用して、同じウェブサイトにバインドされます。

SNIとCCSはこの目的のためにうまく機能しますが、デフォルトのWebサイトに各ドメインの明示的な入札を追加した場合のみで、数千のドメインには実用的ではありません。

        <site name="Default Web Site" id="1">
            <application path="/">
                <virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" />
            </application>
            <bindings>
                <binding protocol="http" bindingInformation="*:80:" />
                <binding protocol="https" bindingInformation="*:443:www.domain1.com.br" sslFlags="3" />
                <binding protocol="https" bindingInformation="*:443:www.domain2.com.br" sslFlags="3" />
                <binding protocol="https" bindingInformation="*:443:www.domain3.com.br" sslFlags="3" />
                ...
                ...
                ...
                <binding protocol="https" bindingInformation="*:443:www.otherdomain9998.com.br" sslFlags="3" />
                <binding protocol="https" bindingInformation="*:443:www.otherdomain9999.com.br" sslFlags="3" />
                ...
            </bindings>
        </site>

デフォルトの http プロトコルバインディングと同じ方法で、sslFlags="3" (これは SNI+CCS を意味します) を使用して、デフォルトの https プロトコルバインディングを設定しようと試みました。

        <site name="Default Web Site" id="1">
            <application path="/">
                <virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" />
            </application>
            <bindings>
                <binding protocol="http" bindingInformation="*:80:" />
                <binding protocol="https" bindingInformation="*:443:" sslFlags="3" />
            </bindings>
        </site>

上記の設定では、どのブラウザにもSSL証明書は提供されません。

SNIとCCSを使用してhttpsのデフォルトのWebサイトを設定する他の方法はありますか?

正しい方向性を示してくれるような手助けがあれば本当にありがたいです。

ありがとうございました。

ギリェルメ

解決方法は?

解決しました

1) まず、IISを使って、SNIとCCSを使い、www.whatever.com のデフォルトのWebサイトに偽のSSLバインディングを作成しました。

2) それから、applicationHost.configファイル内のこの偽装バインディングのエントリーを以下のように手動で編集しました。

FROM。

<binding protocol="https" bindingInformation="*:443:www.whatever.com" sslFlags="3" />

TO

<binding protocol="https" bindingInformation="*:443:" sslFlags="3" />

3) 最後に、証明書をCCSフォルダに送りました。約5分後、新しいSSLサイトがIISによって自動的にアクティブにされました。

つまり、同じIPで多くの証明書を使い、それぞれの証明書のバインディングを作成することなく、SSL用のデフォルトのWebサイトを手に入れたのです!

これはすごい!!!