Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

39 Страницы«<1516171819>»
Опции
К последнему сообщению К первому непрочитанному
Offline ozz_born  
#161 Оставлено : 29 мая 2019 г. 9:47:50(UTC)
ozz_born

Статус: Новичок

Группы: Участники
Зарегистрирован: 29.05.2019(UTC)
Сообщений: 8
Российская Федерация

Сказал(а) «Спасибо»: 1 раз
Автор: Дмитрий Пичулин Перейти к цитате
Автор: Mikhail0101 Перейти к цитате
Включил логирование CSP, перезапустил nginx - новых ошибок в логах (/var/log/nginx/error.log, /var/log/messages) не появилось...

Да, ошибка оказалась крепким орешком.

При типичном использовании nginx в качестве сервера, всегда есть ссылка на закрытый ключ через gostengy, поэтому криптографический модуль OpenSSL никогда не выгружается.

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

При такой конфигурации, мастер процесс nginx после запуска рабочих процессов делает cleanup, который освобождает неиспользуемые модули, что приводит к освобождению глобального контекста, который общий для всех процессов. После этого рабочие процессы не могут пользоваться контекстом, так как он был освобождён.

Это исправлено. Проверено. Скрипты обновлены.


Добрый день!

Использую ручную сборку Nginx на базе вашего скрипта, на всякий пожарный заодно его и пропатчил.

./configure --prefix=/opt/nginx.cp --with-http_ssl_module --with-cc-opt='-I/opt/cprocsp/cp-openssl-1.1.0/include/' --with-ld-opt='-L/opt/cprocsp/cp-openssl-1.1.0/lib/amd64/' --with-http_stub_status_module --with-debug --with-compat --with-file-aio --with-threads --with-http_addition_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module

# rpm -qa|grep cproc|sort
cprocsp-cpopenssl-110-64-5.0.11216-5
cprocsp-cpopenssl-110-base-5.0.11216-5
cprocsp-cpopenssl-110-devel-5.0.11216-5
cprocsp-cpopenssl-110-gost-64-5.0.11216-5
cprocsp-rdr-gui-gtk-64-4.0.9963-5
lsb-cprocsp-base-4.0.9963-5
lsb-cprocsp-capilite-64-4.0.9963-5
lsb-cprocsp-kc1-64-4.0.9963-5
lsb-cprocsp-kc2-64-4.0.9963-5
lsb-cprocsp-rdr-64-4.0.9963-5

# /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl engine
(dynamic) Dynamic engine loading support
(gostengy) CryptoPro GostEngy ($Revision: 180423 $)

# /opt/nginx.cp/sbin/nginx -V
nginx version: nginx/1.16.0
built by gcc 4.3.4 [gcc-4_3-branch revision 152973] (SUSE Linux)
built with OpenSSL 1.1.0h 27 Mar 2018
TLS SNI support enabled
configure arguments: --prefix=/opt/nginx.cp --with-http_ssl_module --with-cc-opt=-I/opt/cprocsp/cp-openssl-1.1.0/include/ --with-ld-opt=-L/opt/cprocsp/cp-openssl-1.1.0/lib/amd64/ --with-http_stub_status_module --with-debug --with-compat --with-file-aio --with-threads --with-http_addition_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module

# ldd /opt/nginx.cp/sbin/nginx
linux-vdso.so.1 => (0x00007fffc571a000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fa91e1eb000)
librt.so.1 => /lib64/librt.so.1 (0x00007fa91dfe2000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fa91ddc4000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007fa91db89000)
libpcre.so.0 => /usr/lib64/libpcre.so.0 (0x00007fa91d959000)
libssl.so.1.1 => /opt/cprocsp/cp-openssl-1.1.0/lib/amd64/libssl.so.1.1 (0x00007fa91d6ea000)
libcrypto.so.1.1 => /opt/cprocsp/cp-openssl-1.1.0/lib/amd64/libcrypto.so.1.1 (0x00007fa91d265000)
libz.so.1 => /lib64/libz.so.1 (0x00007fa91d04f000)
libc.so.6 => /lib64/libc.so.6 (0x00007fa91ccd5000)
/lib64/ld-linux-x86-64.so.2 (0x00007fa91e426000)

Подключаюсь openssl к ресурсу без проблем

# /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl s_client --connect gost2012.stable.dp.korona.net:443 -cipher GOST2012-GOST8912-GOST8912 -quiet
depth=2 C = RU, O = Center of Financial Technologies, CN = Primary CA
verify error:num=19:self signed certificate in certificate chain

Но nginx при проксировании запроса ломается с ошибкой

[crit] 3535#3535: *11 SSL_do_handshake() failed (SSL: error:80005022:lib(128):gng_support_create_pubkey_3410:CryptImportPublicKeyInfo error:0B09407D:x509 certificate routines:x509_pubkey_decode:public key decode error error:1416F0EF:SSL routines:tls_process_server_certificate:unable to find public key parameters) while SSL handshaking to upstream,

Кусок конфигурации Nginx.
server {
listen 81;

location ~ ^/ {
proxy_ssl_verify off;
proxy_ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
proxy_ssl_ciphers GOST2012-GOST8912-GOST8912; #


proxy_pass https://gost2012.stable.dp.korona.net;
proxy_set_header Host "gost2012.stable.dp.korona.net";

}
}

Что я делаю не так?

Отредактировано пользователем 29 мая 2019 г. 13:25:50(UTC)  | Причина: Не указана

Offline Санчир Момолдаев  
#162 Оставлено : 29 мая 2019 г. 22:44:02(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,038
Российская Федерация

Сказал(а) «Спасибо»: 88 раз
Поблагодарили: 223 раз в 211 постах
Автор: ozz_born Перейти к цитате


# /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl engine
(dynamic) Dynamic engine loading support
(gostengy) CryptoPro GostEngy ($Revision: 180423 $)

Что я делаю не так?


приведите вывод which openssl
Техническую поддержку оказываем тут
Наша база знаний
Offline ozz_born  
#163 Оставлено : 30 мая 2019 г. 5:42:36(UTC)
ozz_born

Статус: Новичок

Группы: Участники
Зарегистрирован: 29.05.2019(UTC)
Сообщений: 8
Российская Федерация

Сказал(а) «Спасибо»: 1 раз
Автор: Санчир Момолдаев Перейти к цитате
Автор: ozz_born Перейти к цитате


# /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl engine
(dynamic) Dynamic engine loading support
(gostengy) CryptoPro GostEngy ($Revision: 180423 $)

Что я делаю не так?


приведите вывод which openssl


# which openssl
/usr/bin/openssl
Offline Санчир Момолдаев  
#164 Оставлено : 30 мая 2019 г. 5:48:46(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,038
Российская Федерация

Сказал(а) «Спасибо»: 88 раз
Поблагодарили: 223 раз в 211 постах
Автор: ozz_born Перейти к цитате
Автор: Санчир Момолдаев Перейти к цитате
Автор: ozz_born Перейти к цитате


# /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl engine
(dynamic) Dynamic engine loading support
(gostengy) CryptoPro GostEngy ($Revision: 180423 $)

Что я делаю не так?


приведите вывод which openssl


# which openssl
/usr/bin/openssl


попробуйте мувнуть куда-нибудь оригинальный /usr/bin/openssl и вместо него сделать симлинк на /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl
и попробуйте заново в nginx
Техническую поддержку оказываем тут
Наша база знаний
Offline ozz_born  
#165 Оставлено : 30 мая 2019 г. 5:55:28(UTC)
ozz_born

Статус: Новичок

Группы: Участники
Зарегистрирован: 29.05.2019(UTC)
Сообщений: 8
Российская Федерация

Сказал(а) «Спасибо»: 1 раз
Автор: Санчир Момолдаев Перейти к цитате
Автор: ozz_born Перейти к цитате
Автор: Санчир Момолдаев Перейти к цитате
Автор: ozz_born Перейти к цитате


# /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl engine
(dynamic) Dynamic engine loading support
(gostengy) CryptoPro GostEngy ($Revision: 180423 $)

Что я делаю не так?


приведите вывод which openssl


# which openssl
/usr/bin/openssl


попробуйте мувнуть куда-нибудь оригинальный /usr/bin/openssl и вместо него сделать симлинк на /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl
и попробуйте заново в nginx


Перезапустил nginx и сервис КриптоПро. Результат тот же.

# ls -l /usr/bin/openssl
lrwxrwxrwx 1 root root 47 May 30 07:50 /usr/bin/openssl -> /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl

[crit] 10001#10001: *1 SSL_do_handshake() failed (SSL: error:80005022:lib(128):gng_support_create_pubkey_3410:CryptImportPublicKeyInfo error:0B09407D:x509 certificate routines:x509_pubkey_decode:public key decode error error:1416F0EF:SSL routines:tls_process_server_certificate:unable to find public key parameters) while SSL handshaking to upstream,
Offline Санчир Момолдаев  
#166 Оставлено : 30 мая 2019 г. 6:06:19(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,038
Российская Федерация

Сказал(а) «Спасибо»: 88 раз
Поблагодарили: 223 раз в 211 постах
Автор: ozz_born Перейти к цитате

Перезапустил nginx и сервис КриптоПро. Результат тот же.

# ls -l /usr/bin/openssl
lrwxrwxrwx 1 root root 47 May 30 07:50 /usr/bin/openssl -> /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl

[crit] 10001#10001: *1 SSL_do_handshake() failed (SSL: error:80005022:lib(128):gng_support_create_pubkey_3410:CryptImportPublicKeyInfo error:0B09407D:x509 certificate routines:x509_pubkey_decode:public key decode error error:1416F0EF:SSL routines:tls_process_server_certificate:unable to find public key parameters) while SSL handshaking to upstream,

вы хотите спроксировать одностороннее tls соединение?
Техническую поддержку оказываем тут
Наша база знаний
Offline ozz_born  
#167 Оставлено : 30 мая 2019 г. 6:10:49(UTC)
ozz_born

Статус: Новичок

Группы: Участники
Зарегистрирован: 29.05.2019(UTC)
Сообщений: 8
Российская Федерация

Сказал(а) «Спасибо»: 1 раз
Автор: Санчир Момолдаев Перейти к цитате
Автор: ozz_born Перейти к цитате

Перезапустил nginx и сервис КриптоПро. Результат тот же.

# ls -l /usr/bin/openssl
lrwxrwxrwx 1 root root 47 May 30 07:50 /usr/bin/openssl -> /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl

[crit] 10001#10001: *1 SSL_do_handshake() failed (SSL: error:80005022:lib(128):gng_support_create_pubkey_3410:CryptImportPublicKeyInfo error:0B09407D:x509 certificate routines:x509_pubkey_decode:public key decode error error:1416F0EF:SSL routines:tls_process_server_certificate:unable to find public key parameters) while SSL handshaking to upstream,

вы хотите спроксировать одностороннее tls соединение?


Именно одностороннее. Насколько я понял из предыдущих постов проблема с выгрузкой криптомодуля была решена в версии 5.0.11216-5.
Offline Санчир Момолдаев  
#168 Оставлено : 1 июня 2019 г. 11:22:51(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,038
Российская Федерация

Сказал(а) «Спасибо»: 88 раз
Поблагодарили: 223 раз в 211 постах
Автор: ozz_born Перейти к цитате
Автор: Санчир Момолдаев Перейти к цитате
Автор: ozz_born Перейти к цитате

Перезапустил nginx и сервис КриптоПро. Результат тот же.

# ls -l /usr/bin/openssl
lrwxrwxrwx 1 root root 47 May 30 07:50 /usr/bin/openssl -> /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl

[crit] 10001#10001: *1 SSL_do_handshake() failed (SSL: error:80005022:lib(128):gng_support_create_pubkey_3410:CryptImportPublicKeyInfo error:0B09407D:x509 certificate routines:x509_pubkey_decode:public key decode error error:1416F0EF:SSL routines:tls_process_server_certificate:unable to find public key parameters) while SSL handshaking to upstream,

вы хотите спроксировать одностороннее tls соединение?


Именно одностороннее. Насколько я понял из предыдущих постов проблема с выгрузкой криптомодуля была решена в версии 5.0.11216-5.


может тогда легче использовать stunnel? задача по проксированию через nginx не ставилась.
Техническую поддержку оказываем тут
Наша база знаний
Offline ozz_born  
#169 Оставлено : 3 июня 2019 г. 8:25:44(UTC)
ozz_born

Статус: Новичок

Группы: Участники
Зарегистрирован: 29.05.2019(UTC)
Сообщений: 8
Российская Федерация

Сказал(а) «Спасибо»: 1 раз
Автор: Санчир Момолдаев Перейти к цитате

может тогда легче использовать stunnel? задача по проксированию через nginx не ставилась.


Добрый день! Как тогда понимать этот пост?

Автор: Дмитрий Пичулин Перейти к цитате
Автор: Mikhail0101 Перейти к цитате
Включил логирование CSP, перезапустил nginx - новых ошибок в логах (/var/log/nginx/error.log, /var/log/messages) не появилось...

Да, ошибка оказалась крепким орешком.

При типичном использовании nginx в качестве сервера, всегда есть ссылка на закрытый ключ через gostengy, поэтому криптографический модуль OpenSSL никогда не выгружается.

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

При такой конфигурации, мастер процесс nginx после запуска рабочих процессов делает cleanup, который освобождает неиспользуемые модули, что приводит к освобождению глобального контекста, который общий для всех процессов. После этого рабочие процессы не могут пользоваться контекстом, так как он был освобождён.

Это исправлено. Проверено. Скрипты обновлены.


Ставить stunnel после nginx не хотелось бы.
Offline Санчир Момолдаев  
#170 Оставлено : 3 июня 2019 г. 8:44:09(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,038
Российская Федерация

Сказал(а) «Спасибо»: 88 раз
Поблагодарили: 223 раз в 211 постах
My bad, протестирую на стенде
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
39 Страницы«<1516171819>»
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.