1

相互認証に複数のキー/証明書のペアを使用するようにApache2(バージョン2.0.64)を構成する方法を知りたいです。

より正確には、次の構成を使用して、ポート443でSSL接続を受け入れるようにapacheを構成しました。

<VirtualHost _default_:443>
     SSLEngine on
     SSLCertificateFile certs/mycert.crt
     SSLCertificateKeyFile certs/mykey.key
     SSLCACertificateFile certs/ca.crt
     .....
</VirtualHost>

私には2つのエイリアスがあります。

https://myserver/project1
https://myserver/project2

2番目のURL()に接続するクライアントを認証するために、 ( mykey.key/よりも)異なるキー/証明書のペアを使用したいと思います。mycert.crthttps://myserver/project2

<Location>andディレクティブを試してみました<LocationMatch>が、SSLディレクティブはこれらのディレクティブではサポートされていないようです。

これはどのように行うことができますか?

4

2 に答える 2

1

TLSにはServiceNameIndication (別名SNI )という名前の拡張機能があります。TLSクライアントは、接続先のサーバーの名前を示します。したがって、サーバーは使用する正しいキーと証明書を選択できます。

SNI wikipediaページによると、Apache 2モジュールmod_sslとmod_gnutlsの両方が、この拡張機能と多数のWebクライアントをサポートしているようです。

Apache 2構成チュートリアルは、http://en.gentoo-wiki.com/wiki/Apache2/SSL_and_Name_Based_Virtual_Hostsから入手できます。

于 2011-04-28T16:06:48.467 に答える
0

apache2でSNIを使用するための可能な解決策:

  • apache2をバージョン2.2.xにアップグレードします
  • apache2を使用してgnutlsをコンパイル/インストールします
于 2011-06-14T07:21:25.947 に答える