0

私はTomcat 8.5で作業しており、server.xmlで複数のホストのSSL構成を構成しようとしていますが、Opensslのプロトコル「org.apache.coyote.http11.Http11AprProtocol」がdefaultSSLHostConfigNameattributesのみを尊重するという問題に遭遇しました。 "TLSv1.2") のみ、独自の属性が定義されているホストの場合でも。ただし、証明書を適切にチェックします。興味深いことに、JSSE プロトコル「org.apache.coyote.http11.Http11NioProtocol」を使用すると、正常に動作し、対応するホストの構成 (証明書の検証、プロトコルなど) を尊重します。以下に、server.xml のコードを添付します。

<Connector port="8690" protocol="org.apache.coyote.http11.Http11AprProtocol"
           maxHttpHeaderSize="1234"
           server="aaaa"
           SSLEnabled="true" scheme="https" secure="true"
           enableLookups="false" disableUploadTimeout="true"
           maxThreads="150" minSpareThreads="25"
           acceptCount="400" URIEncoding="UTF-8"
           defaultSSLHostConfigName="abctest.com">
    <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />

    <SSLHostConfig
         ciphers= ALL:!ADH:!TLSv1:!EXPORT40:!EXP:!LOW
         honorCipherOrder="true"
         disableCompression="true"
         certificateVerification="required"
         protocols="TLSv1.2" hostName="test123.com">
        <Certificate certificateKeyFile="conf/XYZ-TESTSRV-KEY.crt"
                     certificateFile="conf/XYZ-TESTSRV.crt"
                     certificateChainFile="conf/XYZ-TESTSRV-CA.crt"
                     certificateKeyPassword="somepassword"
                     type="RSA" />
    </SSLHostConfig>
    <SSLHostConfig
         disableCompression="true"
         certificateVerification="optional"
         protocols="TLSv1.1" hostName="abctest.com">
        <Certificate certificateKeyFile="conf/abc.key"
                     certificateFile="conf/abc.crt"
                     certificateKeyPassword="somepassword"
                     type="RSA" />
    </SSLHostConfig>

したがって、上記の xml の場合、「org.apache.coyote.http11.Http11AprProtocol」の場合、abctest.com の (defaultSSLHostConfigName) 属性 (certificateVerification, protocols="TLSv1.2") のみがすべてのホストに対して機能します。「org.apache.coyote.http11.Http11NioProtocol」属性を使用した場合、対応するホストに従って属性が適用されますが、それは私の要件に従っていません。これは Http11AprProtocol の問題ですか? 前もって感謝します

4

0 に答える 0