Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,506 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 474 раз в 338 постах
|
Автор: Pechenko Vladimir Nginx стартует без ошибок, но по ГОСТу не работает: Код:# /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl s_client -cipher 'GOST2001-GOST89-GOST89' -connect localhost:443
CONNECTED(00000004)
140244304541440:error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:ssl/record/rec_layer_s3.c:1407:SSL alert number 40
....
В лог(/var/log/nginx/error.log) при этом ничего не пишет. Если попытаться из браузера(IE), в логе появляется ошибка: Код:2018/05/09 00:44:03 [crit] 28730#28730: *7 SSL_do_handshake() failed (SSL: error:1417D18C:SSL routines:tls_process_client_hello:version too low) while SSL handshaking, client: 172.28.1.2, server: 0.0.0.0:443
Обычно спасает "ssl_protocols TLSv1;", старую сюиту не очень тестируем, перепроверим. |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 22.03.2018(UTC) Сообщений: 4 Откуда: Новосибирск
|
Автор: pd Автор: geniymax Связался с коллегами СКБ-контур, получил от них ответ, что запрос они видят, но сертификат не передается. Как понять "сертификат не передается"? Мы не передаем сертификат авторизации при входе\вызове метода Как выглядит неверный запрос на стороне сервиса: Line 2236: 2018-05-07 12:03:46.817 /CC/CertificateInfo/FindForms Phone=9996667733&Inn=012558018349 500 "CABINETTEST" - -2147023901 0 194 - - А так выглядит корректный запрос: Line 294: 2018-05-07 11:54:08.833 /CC/CertificateInfo/FindForms Phone=9996667733&Inn=012558018349 200 "CABINETTEST" - 0 512 696 "38-46-81-88-00-00-00-01-ca-80" "E=catest@skbkontur.ru, C=RU, L=Екатеринбург, O=ЗАО «ПФ «СКБ Контур», CN=UC Test" В связи с этим встает вопрос, может ли вообще nginx в такой конфигурации использоваться? Подскажите, пожалуйста.
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,506 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 474 раз в 338 постах
|
Автор: geniymax Автор: pd Автор: geniymax Связался с коллегами СКБ-контур, получил от них ответ, что запрос они видят, но сертификат не передается. Как понять "сертификат не передается"? Мы не передаем сертификат авторизации при входе\вызове метода Как выглядит неверный запрос на стороне сервиса: Line 2236: 2018-05-07 12:03:46.817 /CC/CertificateInfo/FindForms Phone=9996667733&Inn=012558018349 500 "CABINETTEST" - -2147023901 0 194 - - А так выглядит корректный запрос: Line 294: 2018-05-07 11:54:08.833 /CC/CertificateInfo/FindForms Phone=9996667733&Inn=012558018349 200 "CABINETTEST" - 0 512 696 "38-46-81-88-00-00-00-01-ca-80" "E=catest@skbkontur.ru, C=RU, L=Екатеринбург, O=ЗАО «ПФ «СКБ Контур», CN=UC Test" В связи с этим встает вопрос, может ли вообще nginx в такой конфигурации использоваться? Подскажите, пожалуйста. Вы же понимаете, что при работе nginx в качестве прокси, согласно вашей конфигурации, nginx устанавливает двустороннее TLS-соединение, по которому ко всем запросам проксируемым запросам от клиента приклеивает заголовок X-Forwarded-For и отправляет по TLS на удалённый сервер. Откуда в запросе берётся заголовок с сертификатом? Обычно его приклеивает серверная сторона и отправляет к своим backend-ам. Если же, по каким-то причинам, клиент должен сам, в обход состояния TLS-соединения (чего мы никогда не встречали в рабочих системах), приклеивать сертификат в заголовок запроса, вы можете это сделать установив соответствующий proxy_set_header. |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 10.05.2018(UTC) Сообщений: 4
|
Коллеги, приветствую. Не получается корректно и с нуля настроить работу с ГОСТ с использованием gostengy. Действую согласно инструкции. Текущяя ошибка: nginx: [emerg] ENGINE_load_private_key("srvtest") failed (SSL: error:8001401F:lib(128):gng_store_open:CertOpenStore error:26096080:engine routines:ENGINE_load_private_key:failed loading private key) Все выполняется под пользователем root. О системе:
Код:root@debian8:/home/user# uname -a
Linux debian8 3.16.0-4-amd64 #1 SMP Debian 3.16.51-3 (2017-12-13) x86_64 GNU/Linux
Код:root@debian8:/home/user# /usr/sbin/nginx -V
nginx version: nginx/1.14.0
built by gcc 4.9.2 (Debian 4.9.2-10+deb8u1)
built with OpenSSL 1.1.0h 27 Mar 2018
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --user=root --group=nginx --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fPIC' --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-
z,relro -Wl,-z,now -Wl,--as-needed -pie'
Код:root@debian8:/home/user# /opt/cprocsp/cp-openssl-1.1.0/bin/amd64/openssl engine
(dynamic) Dynamic engine loading support
(gostengy) CryptoPro GostEngy ($Revision: 174535 $)
p.s отсутствует "(rdrand) Intel RDRAND engine" Код:root@debian8:/home/user# dpkg-query --list | grep csp
ii cprocsp-compat-debian 1.0.0-1 all CryptoPro CSP compatibility extension for non-LSB Debian/Ubuntu
ii cprocsp-cpopenssl-110-64 5.0.11099-5 amd64 OpenSSL-110. Build 11099.
ii cprocsp-cpopenssl-110-base 5.0.11099-5 all Openssl-110 common Build 11099.
ii cprocsp-cpopenssl-110-devel 5.0.11099-5 all Openssl-110 devel Build 11099.
ii cprocsp-cpopenssl-110-gost-64 5.0.11099-5 amd64 OpenSSL-110 gostengy engine. Build 11099.
ii cprocsp-curl-64 4.0.0-4 amd64 CryptoPro Curl shared library and binaris. Build 9842.
ii lsb-cprocsp-base 4.0.0-4 all CryptoPro CSP library. Build 9842.
ii lsb-cprocsp-capilite-64 4.0.0-4 amd64 CryptoAPI lite. Build 9842.
ii lsb-cprocsp-kc1-64 4.0.0-4 amd64 CryptoPro CSP library. Build 9842.
ii lsb-cprocsp-kc2-64 4.0.0-4 amd64 CryptoPro CSP KC2. Build 9842.
ii lsb-cprocsp-rdr-64 4.0.0-4 amd64 CryptoPro CSP readers. Build 9842.
Код:root@debian8:/home/user# ps aux | grep nginx
root 17120 0.0 0.9 79376 3660 ? Ss 02:30 0:00 nginx: master process nginx
root 17121 0.0 2.0 79924 7740 ? S 02:30 0:00 nginx: worker process
root 17534 0.0 0.5 12728 2204 pts/1 S+ 04:36 0:00 grep nginx
Код:root@debian8:/home/user# ldd /usr/sbin/nginx
linux-vdso.so.1 (0x00007ffca49ae000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f874b000000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f874ade3000)
libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007f874abac000)
libpcre.so.1 => /usr/local/lib/libpcre.so.1 (0x00007f874a98f000)
libssl.so.1.1 => /opt/cprocsp/cp-openssl-1.1.0/lib/amd64/libssl.so.1.1 (0x00007f874a721000)
libcrypto.so.1.1 => /opt/cprocsp/cp-openssl-1.1.0/lib/amd64/libcrypto.so.1.1 (0x00007f874a29c000)
libz.so.1 => /usr/local/lib/libz.so.1 (0x00007f874a081000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f8749cd6000)
/lib64/ld-linux-x86-64.so.2 (0x00007f874b560000)
nginx.conf Код:user root;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
# HTTP server
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
# HTTPS server
server {
listen 443 ssl;
server_name lemp.sec.local;
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 TLSv1.1 TLSv1.2;
ssl_ciphers GOST2012-GOST8912-GOST8912:GOST2001-GOST89-GOST89: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;
}
}
}
update: понял, что косяк был в конфиге nginx, в строчке ssl_certificate_key engine:gostengy: lemp.sec.local; Поправил. Далее столкнулся с проблемой, что скрипт не создал в системе пользователя nginx. Создал, тест файла прошел. ГОСТ по прежнему не работает, впрочем, как и RSA. Кажется пока косяк в самом nginx, разбираюсь. Буду признателен за мысли в какую сторону копать. update2: Все починил самостоятельно. Спасибо :) Отредактировано пользователем 10 мая 2018 г. 15:08:04(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,506 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 474 раз в 338 постах
|
Автор: dmstay update: понял, что косяк был в конфиге nginx, в строчке ssl_certificate_key engine:gostengy:lemp.sec.local; Поправил. Далее столкнулся с проблемой, что скрипт не создал в системе пользователя nginx. Создал, тест файла прошел. ГОСТ по прежнему не работает, впрочем, как и RSA. Кажется пока косяк в самом nginx, разбираюсь. Буду признателен за мысли в какую сторону копать. Лучший вариант -- взять чистую систему и: https://www.cryptopro.ru...ts&m=90930#post90930Автор: Pechenko Vladimir После установки базовой системы, скриптами установил Nginx и ключи(ГОСТ, RSA): Код:apt update
apt install curl git build-essential linux-headers-$(uname -r)
wget https://raw.githubusercontent.com/fullincome/scripts/master/nginx-gost/install-nginx.sh && chmod +x install-nginx.sh
./install-nginx.sh --csp=linux-amd64_deb.tgz
wget https://raw.githubusercontent.com/fullincome/scripts/master/nginx-gost/install-certs.sh && chmod +x install-certs.sh
./install-certs.sh
/usr/sbin/nginx
|
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 11.06.2018(UTC) Сообщений: 1
|
Настроил криптопро+nginx. RSA сертификат отдается, а на ГОСТовый вылезает ошибка:
/opt/cprocsp/cp-openssl/bin/amd64/openssl s_client -connect localhost:443 CONNECTED(00000004) 139814204233536:error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error:ssl/record/rec_layer_s3.c:1407:SSL alert number 80 --- no peer certificate available --- No client certificate CA names sent --- SSL handshake has read 7 bytes and written 186 bytes Verification: OK --- New, (NONE), Cipher is (NONE) Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated SSL-Session: Protocol : TLSv1.2 Cipher : 0000 Session-ID: Session-ID-ctx: Master-Key: PSK identity: None PSK identity hint: None SRP username: None Start Time: 1528787499 Timeout : 7200 (sec) Verify return code: 0 (ok) Extended master secret: no ---
в логах nginx-а [crit] 1860#1860: *2099 SSL_do_handshake() failed (SSL: error:8000601C:lib(128):gng_hash_init_common:CryptCreateHash error:14125044:SSLoutines:ssl3_digest_cached_records:internal error) while SSL handshaking, client: 127.0.0.1, server: 0.0.0.0:443 Что самое интересное - так же настраивал тестовый сервер на своем компьютере в виртуалке - там всё работает... UPD: обратил внимание, что на нерабочем сервере отсутствует провайдер KC2 Цитата:cpconfig -defprov -view -provtype 75 Listing Available Providers: Provider type Provider Name _____________ _____________________________________ 75 Crypto-Pro GOST R 34.10-2001 KC1 CSP 75 Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider
Provider types and provider names have been listed.
заработалао после установки вручную Цитата:rpm -i lsb-cprocsp-kc2-64-4.0.9944-5.x86_64.rpm но в упор не помню, чтобы я это делал на первом сервере, где всё работало изначально Отредактировано пользователем 12 июня 2018 г. 11:09:32(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,506 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 474 раз в 338 постах
|
Автор: alex_gl UPD: обратил внимание, что на нерабочем сервере отсутствует провайдер KC2 ... заработалао после установки вручную Цитата:rpm -i lsb-cprocsp-kc2-64-4.0.9944-5.x86_64.rpm Да, для работы в nginx нужен провайдер КС2, если устанавливали скриптами из данной темы, то это должно происходить автоматически. Для работы КС1 можете использовать экспериментальный режим отложенной загрузки ключей: https://www.cryptopro.ru...ts&m=91061#post91061 |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 06.07.2016(UTC) Сообщений: 11 Сказал(а) «Спасибо»: 1 раз Поблагодарили: 1 раз в 1 постах
|
Автор: pd Текущая версия gostengy является тестовой? Когда планируется релиз?
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,506 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 35 раз Поблагодарили: 474 раз в 338 постах
|
Автор: Pechenko Vladimir Автор: pd Текущая версия gostengy является тестовой? Когда планируется релиз? По ссылке находится, как и сказано, актуальная рабочая версия. Что в вашем понимании означает "релиз"? Если речь про сертификацию, то, как уточнялось ранее, сертифицируется конкретное решение, в состав которого может входить gostengy, сам же модуль является прослойкой к КриптоПро CSP. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 06.07.2016(UTC) Сообщений: 11 Сказал(а) «Спасибо»: 1 раз Поблагодарили: 1 раз в 1 постах
|
Автор: Дмитрий Пичулин По ссылке находится, как и сказано, актуальная рабочая версия. Что в вашем понимании означает "релиз"?
Тема начиналась с поста: Автор: Ефремов Степан Мы начали тестирование nginx, работающего с ENGINE gostengy. ...
Я думал, что есть план и сроки тестирования, после которого будет выпущена рабочая версия. Но раз это актуальная рабочая версия - https://update.cryptopro.../nginx-gost/bin/174535/, то вопрос отпадает.
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close