2017-11-21 10 views
0

私が取り組んでいるセットアップには、いくつかのWebアプリケーションを提供するTomcatサーバーのプロキシとして機能するApacheサーバーが関係しています。私はApacheで相互TLSを有効にしました。私は正常に私のTomcat Webアプリケーションの1つに接続し、クライアント証明書を確認できます。私はのような構成を持っている私のmodproxy.confでTomcatへのApacheプロキシを使用した相互TLS

<VirtualHost *:443> 
    .... 
    SSLEngine on 
    SSLCertificateFile /path/to/www_yoursite_com.crt 
    .... 
    #other SSL options... 
</VirtualHost> 

:しかし、私はこのようになりますデフォルトHTTPS VirtualHostの設定を持っている私のssl.confの中で、この一歩...瞬間に撮りたいです

ProxyPass /webApp1 https://localhost:1234/webApp1 
ProxyPassReverse /webApp1 https://localhost:1234/webApp1 

ProxyPass /webApp2 https://localhost:1234/webApp2 
ProxyPassReverse /webApp2 https://localhost:1234/webApp2 

ここで、1234はtomcatのserver.xmlファイルのconnector要素に設定されているhttpsポートです。

私はwebApp1のmTLSだけを必要とすると仮定しましょう。この設定の問題は、webApp2にアクセスしていてもブラウザにクライアント証明書が必要なことです。つまり、1つのWebアプリケーションに対してmTLSを有効にします。さらに、私はWebアプリケーション内の特定のURLに対してmTLSを有効にしたいと考えています(これも可能ですか?)。たとえば、誰かがhttps://myserver.com/webApp1/test/mtlsEndpointにヒットしたときにmTLSが必要ですが、https://myserver.com/webApp1/test/otherEndpointには必要ありません。

私のssl.confでSSL用の別のVirtualHost設定でこれを実現することはできますか?私はこれを明日テストしようとしています(これを達成するために、私のwebApp1にmTLSをプロキシする別のVirtualHost設定を使っています)。試行錯誤を避け、

答えて

0

はい、webApp1webApp2に別々のSSLディレクティブが必要です。 ApacheでSSLディレクティブをディレクトリレベルまで設定することができます。

関連する問題