2012-08-31 27 views
7

IIS 7のポート443(https)で1つのWebサイト "www.example1.com"をホストしました。同じドメインに対して "www.example2.com"という新しいドメインを購入しました。 IP。私はこのドメイン(www.example2.com)の別のウェブサイトをポート443(私は既に "www.example1.com"のポート443を使用していました)でホストしたいと思います。同じIPの443ポートに複数のドメインがあります

どうすればいいですか?同じIPでポート443に2つのドメインをホストすることは可能ですか?はいの場合は誰でも私にこれを行う正しい方法を教えてくださいできますか?私は、我々はまた、ポート443で複数のサイトをホストするが、我々はサイトごとに固有のIPアドレスを必要とするIIS 7.

よろしく、 カルティク

答えて

2

を使用しています。 1つのIPアドレスだけを使用して複数のサイトをポート443にバインドすることはできません。 回避策がない限り、私は何も認識していません。

この記事は助けることがあります。 http://www.harbar.net/articles/ssl.aspx

5

をあなたはIIS7にすることはできません - 各HTTPSバインディングホストヘッダーがSSLを使用してサイトを区別するために使用することはできませんので、ユニークなIP /ポートの組み合わせが必要です。これは、SSLハンドシェイク中にホストヘッダーが表示されないためです。

回避策は、異なる外部IPにバインドするか、または443以外のポートにバインドすることでサイトを区別することです。どちらのオプションも私が知る以上に理想的ではありません。

これにはMSDN blogがあります。

幸いにも、IIS8は、Server Name Indication (SNI)という形で解決策を持つようです。

興味深いことに、これはIISクォークではありません。Apache has the same issue、SNI導入前のWebサーバーと同様です。

+0

同じIP +ポートを持つ複数のSSLドメインを持つために、IIS8より前のSAN証明書を使用できることを追加する必要があります。 SAN証明書を使用すると、複数のドメイン名を1つの証明書で保護することができます。たとえば、myserver.comの証明書を取得してから、同じ証明書を持つSAN値を追加してmyserver.org、myserver.net、さらにmyserver2.comまたはwww.example.comを保護することができます。 – saille

6

できます。

IIS 7のSSLホストヘッダーを使用すると、同じIPアドレス上の複数のIIS Webサイトに対して1つのSSL証明書を使用できます。 IISマネージャインターフェイスを使用すると、IISはSSL証明書を使用して各IPアドレスの1つのサイトをポート443にバインドすることのみを許可します。 IPアドレスの2番目のサイトを同じ証明書にバインドしようとすると、IIS 7はサイトを起動してポートの競合が発生したことを示すエラーを表示します。同じIPアドレス上の複数のIISサイトで使用する証明書を割り当てるには、以下の手順に従ってSSLホストヘッダーを設定する必要があります。

どのようなタイプのSSL証明書が必要ですか? 証明書を1つしか使用できないため、その証明書は、使用するWebサイトのすべてのホスト名で動作する必要があります(そうしないと、名前の不一致エラーが発生します)。たとえば、IIS 7 Webサイトのそれぞれが(以下の例のように)単一の共通ドメイン名のサブドメインを使用している場合は、* .mydomain.comのワイルドカード証明書を取得でき、site1.mydomain.com、site2 .mydomain.comなど

一方、IIS 7サイトがすべて異なるドメイン名(mail.mydomain1.com、mail.mydomain2.comなど)を使用する場合は、 Unified Communications Certificate(SAN証明書とも呼ばれます)。

IIS 7.0でSSLホストヘッダーを設定する SSL証明書を取得してIIS 7にインストールします。これを行う方法の手順については、「Windows Server 2008(IIS 7.0)にSSL証明書をインストールする」を参照してください。 。 証明書がIISにインストールされたら、IPアドレスの最初のサイトにバインドします。 スタートメニューをクリックし、「cmd」と打ち込んでコマンドプロンプトを開き、Enterキーを押します。 コマンドラインで「cd C:\ Windows \ System32 \ Inetsrv \」と入力して、C:\ Windows \ System32 \ Inetsrv \に移動します。 はInetsrvフォルダでは、証明書を使用します(両方の線をコピー)する必要があるIPアドレス上の他のウェブサイトごとに次のコマンドを実行します。

appcmd set site /site.name:"<IISSiteName>" /+bindings.[protocol='https',bindingInformation='*:443:<hostHeaderValue>'] 

Replace <IISSiteName> with the name of the IIS site and <hostHeaderValue> with the host header for that site (site1.mydomain.com) 

テストブラウザ内の各ウェブサイトを。正しいページが表示され、エラーなしにロックアイコンが表示されるはずです。最初のIISサイトのWebページが表示される場合は、SSLホストヘッダーが正しく設定されていません。

+2

これは正しいです、あなたはSAN証明書でこれを行うことができます。あなたがすでに別のSSL証明書を持っている場合、それらを取り消して新しいSAN証明書を取得する必要があり、別のドメインを追加するたびに新しいSAN証明書が必要になります。 – saille

関連する問題