Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,506 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 474 раз в 338 постах
|
Автор: Pechenko Vladimir Тема начиналась с поста: Автор: Ефремов Степан Мы начали тестирование nginx, работающего с ENGINE gostengy. ...
Спасибо, поправим шапку. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 06.07.2016(UTC) Сообщений: 11 Сказал(а) «Спасибо»: 1 раз Поблагодарили: 1 раз в 1 постах
|
При тестировании, обратил внимание на такую ситуацию. Если у клиента стоит CSP < 4.0, то при попытке обратиться к nginx из IE, HTTPS соединение сбрасывается. В логе nginx при этом: Код:
2018/06/20 14:20:18 [crit] 28433#28433: *41 SSL_do_handshake() failed (SSL: error:1417D18C:SSL routines:tls_process_client_hello:version too low) while SSL handshaking, client: 172.16.1.2, server: 0.0.0.0:443
Понимаю, что все срабатывает очевидно и штатно. Возможно ли на уровне настроек nginx, сделать так, чтобы клиенты, которые не поддерживают ГОСТ 2012 (CSP < 4.0), работали по RSA?
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,506 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 474 раз в 338 постах
|
Автор: Pechenko Vladimir При тестировании, обратил внимание на такую ситуацию. Если у клиента стоит CSP < 4.0, то при попытке обратиться к nginx из IE, HTTPS соединение сбрасывается. В логе nginx при этом: Код:
2018/06/20 14:20:18 [crit] 28433#28433: *41 SSL_do_handshake() failed (SSL: error:1417D18C:SSL routines:tls_process_client_hello:version too low) while SSL handshaking, client: 172.16.1.2, server: 0.0.0.0:443
Понимаю, что все срабатывает очевидно и штатно. Возможно ли на уровне настроек nginx, сделать так, чтобы клиенты, которые не поддерживают ГОСТ 2012 (CSP < 4.0), работали по RSA? По идее, можно попробовать убрать "GOST2001-GOST89-GOST89", оставив только "GOST2012-GOST8912-GOST8912:HIGH". |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 06.07.2016(UTC) Сообщений: 11 Сказал(а) «Спасибо»: 1 раз Поблагодарили: 1 раз в 1 постах
|
Автор: Дмитрий Пичулин Автор: Pechenko Vladimir При тестировании, обратил внимание на такую ситуацию. Если у клиента стоит CSP < 4.0, то при попытке обратиться к nginx из IE, HTTPS соединение сбрасывается. В логе nginx при этом: Код:
2018/06/20 14:20:18 [crit] 28433#28433: *41 SSL_do_handshake() failed (SSL: error:1417D18C:SSL routines:tls_process_client_hello:version too low) while SSL handshaking, client: 172.16.1.2, server: 0.0.0.0:443
Понимаю, что все срабатывает очевидно и штатно. Возможно ли на уровне настроек nginx, сделать так, чтобы клиенты, которые не поддерживают ГОСТ 2012 (CSP < 4.0), работали по RSA? По идее, можно попробовать убрать "GOST2001-GOST89-GOST89", оставив только "GOST2012-GOST8912-GOST8912:HIGH". Не помогло. На клиенте CSP 3.9
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,506 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 474 раз в 338 постах
|
Автор: Pechenko Vladimir Автор: Дмитрий Пичулин Автор: Pechenko Vladimir При тестировании, обратил внимание на такую ситуацию. Если у клиента стоит CSP < 4.0, то при попытке обратиться к nginx из IE, HTTPS соединение сбрасывается. В логе nginx при этом: Код:
2018/06/20 14:20:18 [crit] 28433#28433: *41 SSL_do_handshake() failed (SSL: error:1417D18C:SSL routines:tls_process_client_hello:version too low) while SSL handshaking, client: 172.16.1.2, server: 0.0.0.0:443
Понимаю, что все срабатывает очевидно и штатно. Возможно ли на уровне настроек nginx, сделать так, чтобы клиенты, которые не поддерживают ГОСТ 2012 (CSP < 4.0), работали по RSA? По идее, можно попробовать убрать "GOST2001-GOST89-GOST89", оставив только "GOST2012-GOST8912-GOST8912:HIGH". Не помогло. На клиенте CSP 3.9 И TLS 1.0 придётся разрешить. А возможно и ничего больше TLS 1.0. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 06.07.2016(UTC) Сообщений: 11 Сказал(а) «Спасибо»: 1 раз Поблагодарили: 1 раз в 1 постах
|
Автор: Дмитрий Пичулин ... И TLS 1.0 придётся разрешить. А возможно и ничего больше TLS 1.0.
Не получается. На клиенте с CSP 3.9 та же проблема. Сейчас такая конфигурация SSL в nginx: Код:
...
server {
listen 443 ssl;
server_name localhost;
ssl_certificate /etc/nginx/srvtest.pem;
ssl_certificate_key engine:gostengy:srvtest;
ssl_certificate srvtestRSA.pem;
ssl_certificate_key srvtestRSA.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_protocols TLSv1;
ssl_ciphers GOST2012-GOST8912-GOST8912:HIGH;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
...
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,506 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 474 раз в 338 постах
|
Автор: Pechenko Vladimir Не получается. На клиенте с CSP 3.9 та же проблема. Не очень понятно почему, возможно что-то не учитываем в алгоритме одновременной работы на уровне openssl или nginx. Ваш вариант задачи интересный, нужны эксперименты с настройками, постараемся воспроизвести и посмотреть в чём дело. |
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,506 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 474 раз в 338 постах
|
Автор: Дмитрий Пичулин Автор: Pechenko Vladimir Не получается. На клиенте с CSP 3.9 та же проблема. Не очень понятно почему, возможно что-то не учитываем в алгоритме одновременной работы на уровне openssl или nginx. Ваш вариант задачи интересный, нужны эксперименты с настройками, постараемся воспроизвести и посмотреть в чём дело. Проверили на Windows 7 + CSP 3.9, у нас работает согласно предложенной логике, то есть, для сертификатов 2012 года открывается RSA вариант. Изучили исходники, где встречается SSL_R_VERSION_TOO_LOW, похоже ваш клиент пытается установить соединение с версией меньшей TLS 1.0, возможно это SSL 3.0, тогда в ssl_protocols необходимо указать SSLv3, но делать это крайне нежелательно, так как протокол SSL 3.0 устарел. Если ошибка не в этом, ждём дамп трафика с проблемой. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 06.07.2016(UTC) Сообщений: 11 Сказал(а) «Спасибо»: 1 раз Поблагодарили: 1 раз в 1 постах
|
Автор: Дмитрий Пичулин Автор: Дмитрий Пичулин Автор: Pechenko Vladimir Не получается. На клиенте с CSP 3.9 та же проблема. Не очень понятно почему, возможно что-то не учитываем в алгоритме одновременной работы на уровне openssl или nginx. Ваш вариант задачи интересный, нужны эксперименты с настройками, постараемся воспроизвести и посмотреть в чём дело. Проверили на Windows 7 + CSP 3.9, у нас работает согласно предложенной логике, то есть, для сертификатов 2012 года открывается RSA вариант. Изучили исходники, где встречается SSL_R_VERSION_TOO_LOW, похоже ваш клиент пытается установить соединение с версией меньшей TLS 1.0, возможно это SSL 3.0, тогда в ssl_protocols необходимо указать SSLv3, но делать это крайне нежелательно, так как протокол SSL 3.0 устарел. Если ошибка не в этом, ждём дамп трафика с проблемой. Да, я не указал ОС, в которой проблема. Это Windows XP(SP3), CSP 3.9, IE 8 Сделал дамп через ssldump:
Код:
# ssldump -i eth0 -n port 443
New TCP connection #1: 172.16.1.2(35064) <-> 172.16.1.1(443)
1 1 0.2737 (0.2737) C>S Handshake
ClientHello
Version 3.1
cipher suites
TLS_RSA_WITH_RC4_128_MD5
TLS_RSA_WITH_RC4_128_SHA
TLS_RSA_WITH_3DES_EDE_CBC_SHA
TLS_RSA_WITH_DES_CBC_SHA
TLS_RSA_EXPORT1024_WITH_RC4_56_SHA
TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA
TLS_RSA_EXPORT_WITH_RC4_40_MD5
TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5
TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
TLS_DHE_DSS_WITH_DES_CBC_SHA
TLS_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA
compression methods
NULL
1 2 0.2746 (0.0009) S>C Alert
level fatal
value handshake_failure
1 0.2748 (0.0002) S>C TCP FIN
1 0.5477 (0.2729) C>S TCP FIN
New TCP connection #2: 172.16.1.2(35065) <-> 172.16.1.1(443)
2 1 0.2725 (0.2725) C>S Handshake
ClientHello
Version 3.0
cipher suites
SSL_RSA_WITH_RC4_128_MD5
SSL_RSA_WITH_RC4_128_SHA
SSL_RSA_WITH_3DES_EDE_CBC_SHA
SSL_RSA_WITH_DES_CBC_SHA
SSL_RSA_EXPORT1024_WITH_RC4_56_SHA
SSL_RSA_EXPORT1024_WITH_DES_CBC_SHA
SSL_RSA_EXPORT_WITH_RC4_40_MD5
SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5
SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA
SSL_DHE_DSS_WITH_DES_CBC_SHA
SSL_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA
Unknown value 0xff
compression methods
NULL
2 2 0.2728 (0.0003) S>C Alert
level fatal
value handshake_failure
2 0.2730 (0.0001) S>C TCP FIN
2 0.5455 (0.2725) C>S TCP FIN
New TCP connection #3: 172.16.1.2(35066) <-> 172.16.1.1(443)
3 0.2715 (0.2715) C>S TCP FIN
3 0.2716 (0.0000) S>C TCP FIN
Пробовал так же указывать SSLv3 в ssl_protocols. Вот ошибка:
Код:
2018/07/03 11:25:29 [crit] 7166#7166: *1 SSL_do_handshake() failed (SSL: error:1417D102:SSL routines:tls_process_client_hello:unsupported protocol) while SSL handshaking, client: 172.16.1.2, server: 0.0.0.0:443
2018/07/03 11:25:29 [crit] 7166#7166: *2 SSL_do_handshake() failed (SSL: error:1417D18C:SSL routines:tls_process_client_hello:version too low) while SSL handshaking, client: 172.16.1.2, server: 0.0.0.0:443
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,506 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 474 раз в 338 постах
|
Автор: Pechenko Vladimir Да, я не указал ОС, в которой проблема. Это Windows XP(SP3), CSP 3.9, IE 8 Сделал дамп через ssldump:
Код:
# ssldump -i eth0 -n port 443
New TCP connection #1: 172.16.1.2(35064) <-> 172.16.1.1(443)
1 1 0.2737 (0.2737) C>S Handshake
ClientHello
Version 3.1
cipher suites
TLS_RSA_WITH_RC4_128_MD5
TLS_RSA_WITH_RC4_128_SHA
TLS_RSA_WITH_3DES_EDE_CBC_SHA
TLS_RSA_WITH_DES_CBC_SHA
TLS_RSA_EXPORT1024_WITH_RC4_56_SHA
TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA
TLS_RSA_EXPORT_WITH_RC4_40_MD5
TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5
TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
TLS_DHE_DSS_WITH_DES_CBC_SHA
TLS_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA
compression methods
NULL
1 2 0.2746 (0.0009) S>C Alert
level fatal
value handshake_failure
1 0.2748 (0.0002) S>C TCP FIN
1 0.5477 (0.2729) C>S TCP FIN
New TCP connection #2: 172.16.1.2(35065) <-> 172.16.1.1(443)
2 1 0.2725 (0.2725) C>S Handshake
ClientHello
Version 3.0
cipher suites
SSL_RSA_WITH_RC4_128_MD5
SSL_RSA_WITH_RC4_128_SHA
SSL_RSA_WITH_3DES_EDE_CBC_SHA
SSL_RSA_WITH_DES_CBC_SHA
SSL_RSA_EXPORT1024_WITH_RC4_56_SHA
SSL_RSA_EXPORT1024_WITH_DES_CBC_SHA
SSL_RSA_EXPORT_WITH_RC4_40_MD5
SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5
SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA
SSL_DHE_DSS_WITH_DES_CBC_SHA
SSL_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA
Unknown value 0xff
compression methods
NULL
2 2 0.2728 (0.0003) S>C Alert
level fatal
value handshake_failure
2 0.2730 (0.0001) S>C TCP FIN
2 0.5455 (0.2725) C>S TCP FIN
New TCP connection #3: 172.16.1.2(35066) <-> 172.16.1.1(443)
3 0.2715 (0.2715) C>S TCP FIN
3 0.2716 (0.0000) S>C TCP FIN
Пробовал так же указывать SSLv3 в ssl_protocols. Вот ошибка:
Код:
2018/07/03 11:25:29 [crit] 7166#7166: *1 SSL_do_handshake() failed (SSL: error:1417D102:SSL routines:tls_process_client_hello:unsupported protocol) while SSL handshaking, client: 172.16.1.2, server: 0.0.0.0:443
2018/07/03 11:25:29 [crit] 7166#7166: *2 SSL_do_handshake() failed (SSL: error:1417D18C:SSL routines:tls_process_client_hello:version too low) while SSL handshaking, client: 172.16.1.2, server: 0.0.0.0:443
Ваша система устарела, с большой вероятностью она не сможет открыть не только целевой nginx, а вообще любой современный https сайт. Пробуйте использовать вместо набора HIGH, поддерживаемые сюиты из вашего дампа. |
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close