Статус: Участник
Группы: Участники
Зарегистрирован: 17.07.2018(UTC) Сообщений: 22  Откуда: екат Сказал(а) «Спасибо»: 5 раз
|
Добрый день всем, Пытаюсь подключиться по зашифрованному соединению к порталу https://api.markirovka.nalog.ru/.Неудача происходит на этапе Client Hello. Нет нужного шифра TLS_GOSTR341001. В итоге - ошибка Вроде бы как (неуверен) я подключил библиотеку gost_capi.dll Код:OpenSSL> engine
(dynamic) Dynamic engine loading support
(4758cca) IBM 4758 CCA hardware engine support
(aep) Aep hardware engine support
(atalla) Atalla hardware engine support
(cswift) CryptoSwift hardware engine support
(chil) CHIL hardware engine support
(nuron) Nuron hardware engine support
(sureware) SureWare hardware engine support
(ubsec) UBSEC hardware engine support
(gost) Reference implementation of GOST engine
(capi) CryptoAPI ENGINE
OpenSSL>
Через IE11 соединение с сервером по SSL происходит. Подскажите, что делать дальше, чтобы Клиентское приложение на Qt подключилось к серверу, который требует ssl_protocols: TLSv1 и ssl_ciphers: GOST2012-GOST8912-GOST8912 Отредактировано модератором 8 августа 2018 г. 13:13:16(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,540 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 37 раз Поблагодарили: 502 раз в 356 постах
|
Автор: andre74  Проще использовать stunnel, а не обучать неизвестное приложение работать по ГОСТ. Например используем stunnel-msspi: https://github.com/deemru/stunnel/releases/latestМинимальная конфигурация для решения задачи: Код:[MARKIROVKA]
client = yes
accept = 127.0.0.1:18080
connect = api.markirovka.nalog.ru:443
sni = api.markirovka.nalog.ru
verify = 0
После запуска подключаемся по локальному адресу http://127.0.0.1:18080 и пользуемся API. |
|
 1 пользователь поблагодарил pd за этот пост.
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 17.07.2018(UTC) Сообщений: 22  Откуда: екат Сказал(а) «Спасибо»: 5 раз
|
Автор: Дмитрий Пичулин  Проще использовать stunnel, а не обучать неизвестное приложение работать по ГОСТ.
Спасибо, попробую
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 17.07.2018(UTC) Сообщений: 22  Откуда: екат Сказал(а) «Спасибо»: 5 раз
|
Автор: Дмитрий Пичулин  После запуска подключаемся по локальному адресу и пользуемся API.
Проблема решена, спасибо!
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 17.07.2018(UTC) Сообщений: 22  Откуда: екат Сказал(а) «Спасибо»: 5 раз
|
Автор: Дмитрий Пичулин  добрый день, Загрузил stunnel-msspi с вашего репозитория, откомпилировал и установил на своей машине Linux. Файл конфигурации тот-же самый, запускаю программу, ошибок не выдается Код:root:/usr/local/etc/stunnel# /usr/local/bin/stunnel /usr/local/etc/stunnel/stunnel.conf
root:/usr/local/etc/stunnel# pgrep stunnel
26830
Пытаюсь далее подключиться из своего приложения к stunnel, ошибка - "Connection closed". При повторном запуске stunnel вот что выдается: Код:root:/usr/local/etc/stunnel# /usr/local/bin/stunnel /usr/local/etc/stunnel/stunnel.conf
[ ] Clients allowed=500
[.] stunnel 5.48 on armv7l-unknown-linux-gnueabihf platform
[.] Compiled/running with OpenSSL 1.0.2g 1 Mar 2016
[.] Threading:PTHREAD Sockets:POLL,IPv6 TLS:ENGINE,FIPS,OCSP,PSK,SNI
[ ] errno: (*__errno_location ())
[.] Reading configuration from file /usr/local/etc/stunnel/stunnel.conf
[.] UTF-8 byte order mark not detected
[.] FIPS mode disabled
[ ] Compression disabled
[ ] No PRNG seeding was required
[ ] Initializing service [MARKIROVKA]
[ ] Ciphers: HIGH:!aNULL:!SSLv2:!DH:!kDHEPSK
[ ] TLS options: 0x03000004 (+0x00000000, -0x00000000)
[ ] No certificate or private key specified
[:] Service [MARKIROVKA] needs authentication to prevent MITM attacks
[.] Configuration successful
[ ] Binding service [MARKIROVKA]
[ ] Listening file descriptor created (FD=7)
[ ] Setting accept socket options (FD=7)
[ ] Option SO_REUSEADDR set on accept socket
[.] Binding service [MARKIROVKA] to 127.0.0.1:18080: Address already in use (98)
[!] Binding service [MARKIROVKA] failed
[ ] Deallocating section defaults
[ ] Unbinding service [MARKIROVKA]
[ ] Service [MARKIROVKA] closed
[ ] Deallocating section [MARKIROVKA]
Кажется, что он уже нормально работает. Порт открывается при запуске: Код:root:/usr/local/etc/stunnel# telnet localhost 18080Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Connection closed by foreign host.
В чем может быть проблема, почему не могу подключиться к stunnel из своего ПО? Отредактировано пользователем 8 августа 2018 г. 13:04:28(UTC)
| Причина: дополнил
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,540 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 37 раз Поблагодарили: 502 раз в 356 постах
|
Автор: andre74  В чем может быть проблема, почему не могу подключиться к stunnel из своего ПО? Проблем может быть масса. У вас платформа armv7? Мы на ней не тестировали. Вы использовали свой билд, вот так собирается msspi: https://travis-ci.org/de...nnel/jobs/411340193#L646 |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 17.07.2018(UTC) Сообщений: 22  Откуда: екат Сказал(а) «Спасибо»: 5 раз
|
Автор: Дмитрий Пичулин  Автор: andre74  В чем может быть проблема, почему не могу подключиться к stunnel из своего ПО? Проблем может быть масса. У вас платформа armv7? Мы на ней не тестировали. Вы использовали свой билд, вот так собирается msspi: https://travis-ci.org/de...nnel/jobs/411340193#L646 да, на armv7, ОС Ubuntu 16.04.4 LTS. К слову сказать, я сначала установил CSP 5 с сайта, с поддержкой данной платформы, юсб ключи видит, подписывает ими. Когда начал работать с шедшей в комплекте stunnel с вышеупомянутым конфигом, у меня возникла ошибка Код:file /usr/local/etc/stunnel/stunnel.conf line 5: Specified option name is not valid here
, то есть ругается на строку Код:sni = api.markirovka.nalog.ru
. Удалив данную строку, результата положительного не последовало. Поэтому, я решил собрать из исходников Вашу версию, которая работает на Винде.
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,540 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 37 раз Поблагодарили: 502 раз в 356 постах
|
Автор: andre74  ... то есть ругается на строку Код:sni = api.markirovka.nalog.ru
. Удалив данную строку, результата положительного не последовало. Поэтому, я решил собрать из исходников Вашу версию, которая работает на Винде. Да, возможно поддержки опции sni не было в ранних версиях. Но "результата положительного не последовало" плохо описывает ошибку. Собрать stunnel-msspi возможно, но это потребует или вмешательства в код, или указания корректного SECURITY_DLL_NAME_LINUX при сборке msspi.cpp: https://github.com/deemr...5bb0d0/src/msspi.cpp#L77 |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 17.07.2018(UTC) Сообщений: 22  Откуда: екат Сказал(а) «Спасибо»: 5 раз
|
Автор: Дмитрий Пичулин  Автор: andre74  ... то есть ругается на строку Код:sni = api.markirovka.nalog.ru
. Удалив данную строку, результата положительного не последовало. Поэтому, я решил собрать из исходников Вашу версию, которая работает на Винде. Да, возможно поддержки опции sni не было в ранних версиях. Но "результата положительного не последовало" плохо описывает ошибку. Собрать stunnel-msspi возможно, но это потребует или вмешательства в код, или указания корректного SECURITY_DLL_NAME_LINUX при сборке msspi.cpp: https://github.com/deemr...5bb0d0/src/msspi.cpp#L77 Я имею ввиду, что когда убрал эту опцию, процесс не запускается. (а Ваш собранный с этой опцией - запускается.) Я бы попробовал пересобрать на своей платформе. файл находится здесь Код:/opt/cprocsp/lib/arm/libssp.so
Вы можете подсказать, как корректно указать SECURITY_DLL_NAME_LINUX в msspi.cpp для данной библиотеки? Отредактировано пользователем 8 августа 2018 г. 13:42:06(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,540 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 37 раз Поблагодарили: 502 раз в 356 постах
|
Автор: andre74  файл находится здесь Код:/opt/cprocsp/lib/arm/libssp.so
Вы можете подсказать, как корректно указать SECURITY_DLL_NAME_LINUX в msspi.cpp для данной библиотеки? При сборке для конкретной платформы можно добавить в msspi.cpp перед строкой "#ifndef SECURITY_DLL_NAME_LINUX" код: Код:#define SECURITY_DLL_NAME_LINUX "/opt/cprocsp/lib/arm/libssp.so"
|
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close