2017-02-11 3 views
0

Чтобы быть PCI Compliance, я использую Nmap для сканирования SSL уязвимости:Отключить TLS_RSA_WITH_3DES_EDE_CBC_SHA для Jetty сервера

птар -p 8443 --script SSL-перечислений-шифры myJettyServer.com

> 8443/tcp open https-alt
| ssl-enum-ciphers:
| TLSv1.0:
| ciphers:
| TLS_DHE_RSA_WITH_AES_128_CBC_SHA (dh 768) - C
| TLS_DHE_RSA_WITH_AES_256_CBC_SHA (dh 768) - B
| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp160k1) - A
| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp160k1) - A
| TLS_RSA_WITH_3DES_EDE_CBC_SHA (rsa 2048) - C
| TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
| TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A
| компрессоры:
| NULL
| предпочтение шифрования: клиент
| Предупреждения:
| 64-битный блочный шифр 3DES уязвим для атаки SWEET32
| Обмен ключами (dh 768) с меньшей прочностью, чем ключ сертификата
| Обмен ключами (secp160k1) меньшей прочности, чем ключ сертификата
| TLSv1.1:
| ciphers:
| TLS_DHE_RSA_WITH_AES_128_CBC_SHA (dh 768) - C
| TLS_DHE_RSA_WITH_AES_256_CBC_SHA (dh 768) - B
| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp160k1) - A
| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp160k1) - A
| TLS_RSA_WITH_3DES_EDE_CBC_SHA (rsa 2048) - C
| TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
| TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A
| компрессоры:
| NULL
| предпочтение шифрования: клиент
| Предупреждения:
| 64-битный блочный шифр 3DES уязвим для атаки SWEET32
| Обмен ключами (dh 768) с меньшей прочностью, чем ключ сертификата
| Обмен ключами (secp160k1) меньшей прочности, чем ключ сертификата
| TLSv1.2:
| ciphers:
| TLS_DHE_RSA_WITH_AES_128_CBC_SHA (dh 768) - C
| TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 (dh 768) - C
| TLS_DHE_RSA_WITH_AES_256_CBC_SHA (dh 768) - B
| TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 (dh 768) - B
| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp160k1) - A
| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (secp160k1) - A
| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp160k1) - A
| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (secp160k1) - A
| TLS_RSA_WITH_3DES_EDE_CBC_SHA (rsa 2048) - C
| TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
| TLS_RSA_WITH_AES_128_CBC_SHA256 (rsa 2048) - A
| TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A | TLS_RSA_WITH_AES_256_CBC_SHA256 (rsa 2048) - A
| компрессоры:
| NULL
| предпочтение шифрования: клиент
| Предупреждения:
| 64-битный блочный шифр 3DES уязвим для атаки SWEET32
| Обмен ключами (dh 768) с меньшей прочностью, чем ключ сертификата
| Обмен ключами (secp160k1) из более низкой прочности, чем сертификат ключа
| _ минимум прочности: C

я обнаружил, что SWEET32 существует на моем встроенный Jetty 9.1.5 сервер. Чтобы решить эту проблему, я добавляю эти строки в jetty.xml:

<Set name="ExcludeProtocols"> 
    <Array type="java.lang.String"> 
     <Item>SSLv3</Item> 
    </Array> 
    </Set> 
    <Set name="ExcludeCipherSuites"> 
    <Array type="java.lang.String"> 
     <!-- default --> 
     <Item>SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA</Item> 
     <Item>SSL_DHE_DSS_WITH_AES_128_CBC_SHA</Item> 
     <Item>SSL_DHE_DSS_WITH_AES_256_CBC_SHA</Item> 
     <Item>SSL_DHE_DSS_WITH_DES_CBC_SHA</Item> 
     <Item>SSL_DHE_DSS_WITH_RC4_128_SHA</Item> 
     <Item>SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA</Item> 
     <Item>SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA</Item> 
     <Item>SSL_DHE_RSA_WITH_AES_128_CBC_SHA</Item> 
     <Item>SSL_DHE_RSA_WITH_AES_256_CBC_SHA</Item> 
     <Item>SSL_DHE_RSA_WITH_DES_CBC_SHA</Item> 
     <Item>SSL_RSA_EXPORT_WITH_DES40_CBC_SHA</Item> 
     <Item>SSL_RSA_EXPORT_WITH_RC4_40_MD5</Item> 
     <Item>SSL_RSA_FIPS_WITH_3DES_EDE_CBC_SHA</Item> 
     <Item>SSL_RSA_FIPS_WITH_DES_EDE_CBC_SHA</Item> 
     <Item>SSL_RSA_WITH_DES_CBC_SHA</Item> 

     <!--3DES--> 
     <Item>TLS_RSA_WITH_3DES_EDE_CBC_SHA</Item>   
     <Item>TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA</Item> 
     <Item>TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA</Item>    
     <Item>TLS_DH_anon_WITH_3DES_EDE_CBC_SHA</Item> 
     <Item>TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA</Item> 
     <Item>TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA</Item> 
     <Item>TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA</Item> 
     <Item>TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA</Item> 

     <!-- RC4 --> 
     <Item>PCT_SSL_CIPHER_TYPE_1ST_HALF</Item> 
     <Item>SSL_DH_anon_EXPORT_WITH_RC4_40_MD5</Item> 
     <Item>SSL_DH_anon_WITH_RC4_128_MD5</Item> 
     <Item>SSL_RSA_EXPORT_WITH_RC4_40_MD5</Item> 
     <Item>SSL_RSA_WITH_RC4_128_MD5</Item> 
     <Item>SSL_RSA_WITH_RC4_128_SHA</Item> 
     <Item>SSL2_RC4_128_EXPORT40_WITH_MD5</Item> 
     <Item>SSL2_RC4_128_WITH_MD5</Item> 
     <Item>SSL2_RC4_64_WITH_MD5</Item> 
     <Item>TLS_DH_Anon_EXPORT_WITH_RC4_40_MD5</Item> 
     <Item>TLS_DH_Anon_WITH_RC4_128_MD5</Item> 
     <Item>TLS_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA</Item> 
     <Item>TLS_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA256</Item> 
     <Item>TLS_DHE_DSS_WITH_RC4_128_SHA</Item> 
     <Item>TLS_DHE_DSS_WITH_RC4_128_SHA256</Item> 
     <Item>TLS_DHE_PSK_WITH_RC4_128_SHA</Item> 
     <Item>TLS_DHE_PSK_WITH_RC4_128_SHA256</Item> 
     <Item>TLS_ECDH_Anon_WITH_RC4_128_SHA</Item> 
     <Item>TLS_ECDH_Anon_WITH_RC4_128_SHA256</Item> 
     <Item>TLS_ECDH_ECDSA_WITH_RC4_128_SHA</Item> 
     <Item>TLS_ECDH_ECDSA_WITH_RC4_128_SHA256</Item> 
     <Item>TLS_ECDH_RSA_WITH_RC4_128_SHA</Item> 
     <Item>TLS_ECDH_RSA_WITH_RC4_128_SHA256</Item> 
     <Item>TLS_ECDHE_ECDSA_WITH_RC4_128_SHA</Item> 
     <Item>TLS_ECDHE_ECDSA_WITH_RC4_128_SHA256</Item> 
     <Item>TLS_ECDHE_PSK_WITH_RC4_128_SHA</Item> 
     <Item>TLS_ECDHE_PSK_WITH_RC4_128_SHA256</Item> 
     <Item>TLS_ECDHE_RSA_WITH_RC4_128_SHA</Item> 
     <Item>TLS_ECDHE_RSA_WITH_RC4_128_SHA256</Item> 
     <Item>TLS_KRB5_EXPORT_WITH_RC4_40_MD5</Item> 
     <Item>TLS_KRB5_EXPORT_WITH_RC4_40_SHA</Item> 
     <Item>TLS_KRB5_EXPORT_WITH_RC4_40_SHA256</Item> 
     <Item>TLS_KRB5_WITH_RC4_128_MD5</Item> 
     <Item>TLS_KRB5_WITH_RC4_128_SHA</Item> 
     <Item>TLS_KRB5_WITH_RC4_128_SHA256</Item> 
     <Item>TLS_PSK_WITH_RC4_128_SHA</Item> 
     <Item>TLS_PSK_WITH_RC4_128_SHA256</Item> 
     <Item>TLS_RSA_EXPORT_WITH_RC4_40_MD5</Item> 
     <Item>TLS_RSA_EXPORT1024_WITH_RC4_56_MD5</Item> 
     <Item>TLS_RSA_EXPORT1024_WITH_RC4_56_SHA</Item> 
     <Item>TLS_RSA_EXPORT1024_WITH_RC4_56_SHA256</Item> 
     <Item>TLS_RSA_PSK_WITH_RC4_128_SHA</Item> 
     <Item>TLS_RSA_PSK_WITH_RC4_128_SHA256</Item> 
     <Item>TLS_RSA_WITH_RC4_128_MD5</Item> 
     <Item>TLS_RSA_WITH_RC4_128_SHA</Item> 
     <Item>TLS_RSA_WITH_RC4_128_SHA256</Item> 
    </Array> 
    </Set> 

Все другие 3DES шифры ушли, кроме этого одного TLS_RSA_WITH_3DES_EDE_CBC_SHA. Это так странно!

Как я могу избавиться от этого шифрования? Спасибо заранее.

+0

Я решить проблему путем изменения исключают образец.Используйте регулярное выражение, чтобы охватить все шифры, а не листинг: . * DES. *

ответ

1

Используя недавнюю стабильную версию Jetty, вы можете запросить дамп сервера и просмотреть список активированных/запрещенных шифров, а также (самое главное!) , где отключены.

Пример:

$ cd /path/to/my/jettybase 
$ java -jar /path/to/jetty-dist/start.jar jetty.server.dumpAfterStart=true 

| += [email protected]{SSL->http/1.1} - STARTED 
| | += [email protected](file:///path/to/my/jettybase/etc/keystore,file:///path/to/my/jettybase/etc/keystore) trustAll=false 
| |  +- Protocol Selections 
| |  | +- Enabled (size=3) 
| |  | | +- TLSv1 
| |  | | +- TLSv1.1 
| |  | | +- TLSv1.2 
| |  | +- Disabled (size=2) 
| |  |  +- SSLv2Hello - ConfigExcluded:'SSLv2Hello' 
| |  |  +- SSLv3 - JreDisabled:java.security, ConfigExcluded:'SSLv3' 
| |  +- Cipher Suite Selections 
| |   +- Enabled (size=29) 
| |   | +- TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 
| |   | +- TLS_DHE_DSS_WITH_AES_128_GCM_SHA256 
| |   | +- TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 
| |   | +- TLS_DHE_DSS_WITH_AES_256_GCM_SHA384 
| |   | +- TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 
| |   | +- TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 
| |   | +- TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 
| |   | +- TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 
| |   | +- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 
| |   | +- TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 
| |   | +- TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 
| |   | +- TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 
| |   | +- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 
| |   | +- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 
| |   | +- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 
| |   | +- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 
| |   | +- TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 
| |   | +- TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256 
| |   | +- TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 
| |   | +- TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384 
| |   | +- TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 
| |   | +- TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256 
| |   | +- TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384 
| |   | +- TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384 
| |   | +- TLS_EMPTY_RENEGOTIATION_INFO_SCSV 
| |   | +- TLS_RSA_WITH_AES_128_CBC_SHA256 
| |   | +- TLS_RSA_WITH_AES_128_GCM_SHA256 
| |   | +- TLS_RSA_WITH_AES_256_CBC_SHA256 
| |   | +- TLS_RSA_WITH_AES_256_GCM_SHA384 
| |   +- Disabled (size=53) 
| |    +- SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_DHE_DSS_WITH_DES_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_DHE_RSA_WITH_DES_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_DH_anon_WITH_3DES_EDE_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_DH_anon_WITH_DES_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_RSA_EXPORT_WITH_DES40_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_RSA_WITH_3DES_EDE_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_RSA_WITH_DES_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_RSA_WITH_NULL_MD5 - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- SSL_RSA_WITH_NULL_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_DHE_DSS_WITH_AES_128_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_DHE_DSS_WITH_AES_256_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_DHE_RSA_WITH_AES_128_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_DHE_RSA_WITH_AES_256_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_DH_anon_WITH_AES_128_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_DH_anon_WITH_AES_128_CBC_SHA256 - JreDisabled:java.security 
| |    +- TLS_DH_anon_WITH_AES_128_GCM_SHA256 - JreDisabled:java.security 
| |    +- TLS_DH_anon_WITH_AES_256_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_DH_anon_WITH_AES_256_CBC_SHA256 - JreDisabled:java.security 
| |    +- TLS_DH_anon_WITH_AES_256_GCM_SHA384 - JreDisabled:java.security 
| |    +- TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDHE_ECDSA_WITH_NULL_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDHE_RSA_WITH_NULL_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDH_ECDSA_WITH_NULL_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDH_RSA_WITH_AES_128_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDH_RSA_WITH_AES_256_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDH_RSA_WITH_NULL_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDH_anon_WITH_AES_128_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDH_anon_WITH_AES_256_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_ECDH_anon_WITH_NULL_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5 - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_KRB5_WITH_3DES_EDE_CBC_MD5 - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_KRB5_WITH_3DES_EDE_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_KRB5_WITH_DES_CBC_MD5 - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_KRB5_WITH_DES_CBC_SHA - JreDisabled:java.security, ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_RSA_WITH_AES_128_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_RSA_WITH_AES_256_CBC_SHA - ConfigExcluded:'^.*_(MD5|SHA|SHA1)$' 
| |    +- TLS_RSA_WITH_NULL_SHA256 - JreDisabled:java.security 

Вы быстро поймете, что шифры вы специально звонящие из уже отключены по умолчанию в конфигурации Jetty, с другими, отключенный от бегущего JRE.

Что касается настройки списка шифров, вы должны настроить SslContextFactory на то, чтобы исключить необходимость. Есть много способов, чтобы настроить его, было бы лучше, если вы выбираете метод, который наилучшим образом соответствует вашим потребностям из официальной документации на ...

https://www.eclipse.org/jetty/documentation/current/configuring-ssl.html#configuring-sslcontextfactory-cipherSuites

+0

Я использую встроенный причал, настроенный через jetty.xml. После изменения установите значение true: true. Я получил журнал свалки. Но есть только две строки включают SSL, нет данных: | + = [email protected]{SSL-http/1.1} - НАЧАЛО | | + = SslContextFactory @ 1066fd12 (webapps/conf/iDS.keystore, webapps/conf/iDS.keystore) - НАЧАЛО –

+0

@ KhoaBui, что выход из стабильного Jetty 9.4.1 –

+0

Спасибо за подсказку. Mine - Jetty 9.1.5, я использовал для обновления, но не смог с некоторой конфигурацией. Найдите время, чтобы попробовать еще раз. Btw, я решил проблему, используя шаблон в правиле исключения. –

Смежные вопросы