URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 94869
[ Назад ]

Исходное сообщение
"Обновление OpenSSL"

Отправлено Alexadm , 25-Июл-13 17:48 
Добрый день, не могли бы вы мне помоч с обновлением Openssl на centos 6.3. Мне необходима версия 1.0.1.c с поддержкой  libGOST.so. По умолчанию на centos 6 ставится OpenSSL 1.0.0-fips 29 Mar 2010. Как правильно обновить Openssl ?? спасибо за помощь...

Содержание

Сообщения в этом обсуждении
"Обновление OpenSSL"
Отправлено ALex_hha , 25-Июл-13 18:06 
> Добрый день, не могли бы вы мне помоч с обновлением Openssl на
> centos 6.3. Мне необходима версия 1.0.1.c с поддержкой  libGOST.so. По
> умолчанию на centos 6 ставится OpenSSL 1.0.0-fips 29 Mar 2010. Как
> правильно обновить Openssl ?? спасибо за помощь...

На openssl завязано полсистемы, так что обновлять стоит очень осторожно, как минимум с перва на виртуалке и понаблюдать за работой системы и только потом на боевом сервере.

А обновлять как всегда через rpm/yum

# openssl version
OpenSSL 1.0.1e 11 Feb 2013


# yum info openssl10
Loaded plugins: fastestmirror, presto
Loading mirror speeds from cached hostfile
* base: centos.schlundtech.de
* epel: mirrors.n-ix.net
* extras: centos.schlundtech.de
* ius: mirror.rackspace.co.uk
* rpmforge: mirror.jgotteswinter.com
* updates: centos.psw.net
Available Packages
Name        : openssl10
Arch        : x86_64
Version     : 1.0.1e
Release     : 1.ius.centos6
Size        : 664 k
Repo        : ius
Summary     : Utilities from the general purpose cryptography library with TLS implementation
URL         : http://www.openssl.org/
License     : OpenSSL
Description : The OpenSSL toolkit provides support for secure communications between
            : machines. OpenSSL includes a certificate management tool and shared
            : libraries which provide various cryptographic algorithms and
            : protocols.

http://iuscommunity.org/


"Обновление OpenSSL"
Отправлено Alexadm , 25-Июл-13 18:44 
>[оверквотинг удален]
> License     : OpenSSL
> Description : The OpenSSL toolkit provides support for secure communications between
>            
> : machines. OpenSSL includes a certificate management tool and shared
>            
> : libraries which provide various cryptographic algorithms and
>            
> : protocols.
>

> http://iuscommunity.org/

Устанавливаю Openssl таким образм:
tar xzf openssl-1.0.1с.tar.gz
cd openssl-1.0.1с
./config shared zlib enable-rfc3779 --prefix=/gost-ssl
make depend
make
make test
make install

Но openssl version говорит:
OpenSSL 1.0.0-fips 29 Mar 2010

Почему не меняется версия??


"Обновление OpenSSL"
Отправлено Alexadm , 25-Июл-13 18:45 
>[оверквотинг удален]
> tar xzf openssl-1.0.1с.tar.gz
> cd openssl-1.0.1с
> ./config shared zlib enable-rfc3779 --prefix=/gost-ssl
> make depend
> make
> make test
> make install
> Но openssl version говорит:
> OpenSSL 1.0.0-fips 29 Mar 2010
> Почему не меняется версия??

Что пол системы завязано на openssl это точно...


"Обновление OpenSSL"
Отправлено михалыч , 25-Июл-13 19:16 
>[оверквотинг удален]
>> cd openssl-1.0.1с
>> ./config shared zlib enable-rfc3779 --prefix=/gost-ssl
>> make depend
>> make
>> make test
>> make install
>> Но openssl version говорит:
>> OpenSSL 1.0.0-fips 29 Mar 2010
>> Почему не меняется версия??
> Что пол системы завязано на openssl это точно...

Так если вы в директорию /gost-ssl устанавливаете, то и спрашивать нужно версию в этой же директории.
/gost-ssl/bin/openssl version
А родной openssl обновлять с поддержкой гост рискованное и неблагодарное занятие.
Были случаи, люди доступ к серверу теряли после таких обновлений.


"Обновление OpenSSL"
Отправлено Alexadm , 25-Июл-13 19:36 
>[оверквотинг удален]
>>> make install
>>> Но openssl version говорит:
>>> OpenSSL 1.0.0-fips 29 Mar 2010
>>> Почему не меняется версия??
>> Что пол системы завязано на openssl это точно...
> Так если вы в директорию /gost-ssl устанавливаете, то и спрашивать нужно версию
> в этой же директории.
> /gost-ssl/bin/openssl version
> А родной openssl обновлять с поддержкой гост рискованное и неблагодарное занятие.
> Были случаи, люди доступ к серверу теряли после таких обновлений.

Спасибо, а ещё вопрос: после мохинаций с openssl после запуска скрипта вот такая ошибка на centos

unable to load signing key file
140223818622792:error:0609E09C:digital envelope routines:PKEY_SET_TYPE:unsupported algorithm:p_lib.c:239:
140223818622792:error:0606F076:digital envelope routines:EVP_PKCS82PKEY:unsupported private key algorithm:evp_pkey.c:84:TYPE=GOST R 34.10-2001
140223818622792:error:0907B00D:PEM routines:PEM_READ_BIO_PRIVATEKEY:ASN1 lib:pem_pkey.c:132:
Wide character in syswrite at /usr/lib64/perl5/Sys/Syslog.pm line 482.

На убунте 12.04 всё нормально запускается, в чем может быть причина???


"Обновление OpenSSL"
Отправлено михалыч , 25-Июл-13 19:58 
>[оверквотинг удален]
> Спасибо, а ещё вопрос: после мохинаций с openssl после запуска скрипта вот
> такая ошибка на centos
> unable to load signing key file
> 140223818622792:error:0609E09C:digital envelope routines:PKEY_SET_TYPE:unsupported
> algorithm:p_lib.c:239:
> 140223818622792:error:0606F076:digital envelope routines:EVP_PKCS82PKEY:unsupported
> private key algorithm:evp_pkey.c:84:TYPE=GOST R 34.10-2001
> 140223818622792:error:0907B00D:PEM routines:PEM_READ_BIO_PRIVATEKEY:ASN1 lib:pem_pkey.c:132:
> Wide character in syswrite at /usr/lib64/perl5/Sys/Syslog.pm line 482.
> На убунте 12.04 всё нормально запускается, в чем может быть причина???

Какого скрипта? По скачиванию реестра?
Это ваш топик http://www.opennet.me/openforum/vsluhforumID9/9707.html
И в конце вы пишите что всё ОК, процесс пошёл.
То есть сейчас вы решили в рабочей системе обновить и прокачать родной openssl до 1.0.1c с поддержкой гост?


"Обновление OpenSSL"
Отправлено alex , 25-Июл-13 21:21 
>[оверквотинг удален]
>> 140223818622792:error:0606F076:digital envelope routines:EVP_PKCS82PKEY:unsupported
>> private key algorithm:evp_pkey.c:84:TYPE=GOST R 34.10-2001
>> 140223818622792:error:0907B00D:PEM routines:PEM_READ_BIO_PRIVATEKEY:ASN1 lib:pem_pkey.c:132:
>> Wide character in syswrite at /usr/lib64/perl5/Sys/Syslog.pm line 482.
>> На убунте 12.04 всё нормально запускается, в чем может быть причина???
> Какого скрипта? По скачиванию реестра?
> Это ваш топик http://www.opennet.me/openforum/vsluhforumID9/9707.html
> И в конце вы пишите что всё ОК, процесс пошёл.
> То есть сейчас вы решили в рабочей системе обновить и прокачать родной
> openssl до 1.0.1c с поддержкой гост?

да топик мой... но у меня все запускалось на ubuntu  и работало.. а на centos возникли проблемы такого характера...


"Обновление OpenSSL"
Отправлено михалыч , 26-Июл-13 07:15 
> да топик мой... но у меня все запускалось на ubuntu  и
> работало.. а на centos возникли проблемы такого характера...

Если меняли штатный openssl то восстановить до первородного состояния.
Переустановить 1.0.1с заново.
Именно "с", ибо "d" или "е" не факт, что заведётся.
А вы пытались "e" (Version : 1.0.1e) запустить.


"Обновление OpenSSL"
Отправлено Alexadm , 26-Июл-13 09:28 
>> да топик мой... но у меня все запускалось на ubuntu  и
>> работало.. а на centos возникли проблемы такого характера...
> Если меняли штатный openssl то восстановить до первородного состояния.
> Переустановить 1.0.1с заново.
> Именно "с", ибо "d" или "е" не факт, что заведётся.
> А вы пытались "e" (Version : 1.0.1e) запустить.

у меня так и есть...

/gost-ssl/bin/openssl version
OpenSSL 1.0.1c 10 May 2012

Родная openssl: openssl version
OpenSSL 1.0.0-fips 29 Mar 2010

В чем ещё может быть причина??


"Обновление OpenSSL"
Отправлено Alexadm , 26-Июл-13 10:13 
>[оверквотинг удален]
>> Если меняли штатный openssl то восстановить до первородного состояния.
>> Переустановить 1.0.1с заново.
>> Именно "с", ибо "d" или "е" не факт, что заведётся.
>> А вы пытались "e" (Version : 1.0.1e) запустить.
> у меня так и есть...
> /gost-ssl/bin/openssl version
> OpenSSL 1.0.1c 10 May 2012
> Родная openssl: openssl version
> OpenSSL 1.0.0-fips 29 Mar 2010
> В чем ещё может быть причина??

Извините, а где вы видите, что я с 1.0.1 е пытаюсь запустить???


"Обновление OpenSSL"
Отправлено Alexadm , 26-Июл-13 10:41 
>[оверквотинг удален]
>>> Переустановить 1.0.1с заново.
>>> Именно "с", ибо "d" или "е" не факт, что заведётся.
>>> А вы пытались "e" (Version : 1.0.1e) запустить.
>> у меня так и есть...
>> /gost-ssl/bin/openssl version
>> OpenSSL 1.0.1c 10 May 2012
>> Родная openssl: openssl version
>> OpenSSL 1.0.0-fips 29 Mar 2010
>> В чем ещё может быть причина??
> Извините, а где вы видите, что я с 1.0.1 е пытаюсь запустить???

Неужели никто не сталкивался с такой проблемой??


"Обновление OpenSSL"
Отправлено lavr , 26-Июл-13 12:00 
>[оверквотинг удален]
>>>> Именно "с", ибо "d" или "е" не факт, что заведётся.
>>>> А вы пытались "e" (Version : 1.0.1e) запустить.
>>> у меня так и есть...
>>> /gost-ssl/bin/openssl version
>>> OpenSSL 1.0.1c 10 May 2012
>>> Родная openssl: openssl version
>>> OpenSSL 1.0.0-fips 29 Mar 2010
>>> В чем ещё может быть причина??
>> Извините, а где вы видите, что я с 1.0.1 е пытаюсь запустить???
> Неужели никто не сталкивался с такой проблемой??

с проблемой какой?

перед тем как приступить, напоминание:
- есть динамические библиотеки
- есть статические библиотеки

что мы имеем:
- систему заточенную на openssl-a

хотим:
- получить openssl-b в системе

решение:
- боюсь мы не можем заменить системную openssl-a на openssl-b, потому что
придется пересобрать ВСЕ что завязано на openssl-a
Значит - нужно установить openssl-b сбоку и затем пересобрать ВСЕ что нам нужно
с учетом новых библиотек в /path/openssl-b/lib и headers /path/openssl-b/include
- это нужно задавать в configure, makefiles

Далее, зависит от пересобранного софта с openssl-b и загрузчика динамических библиотек - откуда будут цепляться НУЖНЫЕ libs, в нашем случае из /path/openssl-b/libs.
В случае динамических библиотек линкер ld.so ld-linux.so для нашего софта сначала
должен цеплять библиотеки из /path/openssl-b/libs:

манипуляции с ld.so.conf и ldconfig - после добавления новых библиотек, кеш
должен обновляться via ldconfig

настроить:
# ls -la /etc/ld.so.conf.d
# vi /etc/ld.so.conf.d/myapp.conf
# ldconfig

другой вариант - обертка с LD_PRELOAD

более простой вариант - собирать openssl-b статикой и весь софт который ее будет
использовать со статическими библиотеками openssl-b, если ВОЗМОЖНО.


"Обновление OpenSSL"
Отправлено Alexadm , 26-Июл-13 12:26 
>[оверквотинг удален]
> манипуляции с ld.so.conf и ldconfig - после добавления новых библиотек, кеш
> должен обновляться via ldconfig
> настроить:
> # ls -la /etc/ld.so.conf.d
> # vi /etc/ld.so.conf.d/myapp.conf
> # ldconfig
> другой вариант - обертка с LD_PRELOAD
> более простой вариант - собирать openssl-b статикой и весь софт который ее
> будет
> использовать со статическими библиотеками openssl-b, если ВОЗМОЖНО.

Так у меня две openssl как раз: родная  OpenSSL 1.0.0-fips 29 Mar 2010,
и OpenSSL 1.0.1c 10 May 2012 которая утановлена в дирректорию /gost/ssl.
Всё устанавливал по мануалу https://www.evernote.com/shard/s185/sh/ceb0b021-47e7-4c61-ab...

На ubuntu всё нормально работает, а на centos при запуске /gost/rzs/download 0
ошибка такого вида:

unable to load signing key file
140223818622792:error:0609E09C:digital envelope routines:PKEY_SET_TYPE:unsupported algorithm:p_lib.c:239:
140223818622792:error:0606F076:digital envelope routines:EVP_PKCS82PKEY:unsupported private key algorithm:evp_pkey.c:84:TYPE=GOST R 34.10-2001
140223818622792:error:0907B00D:PEM routines:PEM_READ_BIO_PRIVATEKEY:ASN1 lib:pem_pkey.c:132:
Wide character in syswrite at /usr/lib64/perl5/Sys/Syslog.pm line 482.

С чем может быть проблема? Почему не поддерживаются алгоритмы...Спасибо


"Обновление OpenSSL"
Отправлено lavr , 26-Июл-13 13:40 
>[оверквотинг удален]
> На ubuntu всё нормально работает, а на centos при запуске /gost/rzs/download 0
> ошибка такого вида:
> unable to load signing key file
> 140223818622792:error:0609E09C:digital envelope routines:PKEY_SET_TYPE:unsupported
> algorithm:p_lib.c:239:
> 140223818622792:error:0606F076:digital envelope routines:EVP_PKCS82PKEY:unsupported
> private key algorithm:evp_pkey.c:84:TYPE=GOST R 34.10-2001
> 140223818622792:error:0907B00D:PEM routines:PEM_READ_BIO_PRIVATEKEY:ASN1 lib:pem_pkey.c:132:
> Wide character in syswrite at /usr/lib64/perl5/Sys/Syslog.pm line 482.
> С чем может быть проблема? Почему не поддерживаются алгоритмы...Спасибо

могу лишь предположить что проблемы с provider.pem или download.pl, возможно
недоступен удаленный сайт, смотреть выполнение download.pl с отладкой, возможно
модулей perl не хватает?


"Обновление OpenSSL"
Отправлено михалыч , 26-Июл-13 13:03 
> Извините, а где вы видите, что я с 1.0.1 е пытаюсь запустить???

А! Это я, в свою очередь извиняюсь, криво посмотрел на второй пост.


"Обновление OpenSSL"
Отправлено Alexadm , 26-Июл-13 13:12 
>> Извините, а где вы видите, что я с 1.0.1 е пытаюсь запустить???
> А! Это я, в свою очередь извиняюсь, криво посмотрел на второй пост.

Ну так что , какие варианты есть??


"Обновление OpenSSL"
Отправлено ALex_hha , 26-Июл-13 13:28 
>>> Извините, а где вы видите, что я с 1.0.1 е пытаюсь запустить???
>> А! Это я, в свою очередь извиняюсь, криво посмотрел на второй пост.
> Ну так что , какие варианты есть??

чем не устраивает 1.0.1e из ius?


"Обновление OpenSSL"
Отправлено Alexadm , 26-Июл-13 13:45 
>>>> Извините, а где вы видите, что я с 1.0.1 е пытаюсь запустить???
>>> А! Это я, в свою очередь извиняюсь, криво посмотрел на второй пост.
>> Ну так что , какие варианты есть??
> чем не устраивает 1.0.1e из ius?

Мне для работы скрипта нужна openssl 1.0.1c  c поддержкой gost


"Обновление OpenSSL"
Отправлено михалыч , 26-Июл-13 13:53 
>>>>> Извините, а где вы видите, что я с 1.0.1 е пытаюсь запустить???
>>>> А! Это я, в свою очередь извиняюсь, криво посмотрел на второй пост.
>>> Ну так что , какие варианты есть??
>> чем не устраивает 1.0.1e из ius?
> Мне для работы скрипта нужна openssl 1.0.1c  c поддержкой gost

А тогда от "противного". ))
Попробовать 1.0.1d ? Вдруг и внезапно?


"Обновление OpenSSL"
Отправлено Alexadm , 26-Июл-13 14:03 
>>>>>> Извините, а где вы видите, что я с 1.0.1 е пытаюсь запустить???
>>>>> А! Это я, в свою очередь извиняюсь, криво посмотрел на второй пост.
>>>> Ну так что , какие варианты есть??
>>> чем не устраивает 1.0.1e из ius?
>> Мне для работы скрипта нужна openssl 1.0.1c  c поддержкой gost
> А тогда от "противного". ))
> Попробовать 1.0.1d ? Вдруг и внезапно?

Щас попробую))


"Обновление OpenSSL"
Отправлено Alexadm , 26-Июл-13 14:52 
>>>>>>> Извините, а где вы видите, что я с 1.0.1 е пытаюсь запустить???
>>>>>> А! Это я, в свою очередь извиняюсь, криво посмотрел на второй пост.
>>>>> Ну так что , какие варианты есть??
>>>> чем не устраивает 1.0.1e из ius?
>>> Мне для работы скрипта нужна openssl 1.0.1c  c поддержкой gost
>> А тогда от "противного". ))
>> Попробовать 1.0.1d ? Вдруг и внезапно?
> Щас попробую))

Не работает хоть ты тресни))) на двух машинах centos делаю и не на одной не работает, нашёл некий вариант решения проблемы http://www.techques.com/question/1-10959771/OpenSSL-and-GOST...)

но куда прописать it openSSL library and gost engine:

OPENSSL_config(NULL);
SSL_library_init();
SSL_load_error_strings();



"Обновление OpenSSL"
Отправлено lavr , 26-Июл-13 15:20 
>[оверквотинг удален]
>>>> Мне для работы скрипта нужна openssl 1.0.1c  c поддержкой gost
>>> А тогда от "противного". ))
>>> Попробовать 1.0.1d ? Вдруг и внезапно?
>> Щас попробую))
> Не работает хоть ты тресни))) на двух машинах centos делаю и не
> на одной не работает, нашёл некий вариант решения проблемы http://www.techques.com/question/1-10959771/OpenSSL-and-GOST...)
> но куда прописать it openSSL library and gost engine:
> OPENSSL_config(NULL);
> SSL_library_init();
> SSL_load_error_strings();

человек неправильно выполнил инициализацию задав путь к openssl.cnf в OPENSSL_config
в итоге у него не подгружался или подгружался openssl.cnf не из-того места, в котором
отсутствовали секции engine и gost:

[openssl_def]
engines=engine_section

[engine_section]
gost=gost_section

[gost_section]
engine_id=gost
default_algorithms=ALL
CRYPT_PARAMS=id-Gost28147-89-CryptoPro-A-ParamSet

из-за чего и возник весь сыр-бор


"Обновление OpenSSL"
Отправлено lavr , 26-Июл-13 16:05 
>[оверквотинг удален]
> отсутствовали секции engine и gost:
> [openssl_def]
> engines=engine_section
> [engine_section]
> gost=gost_section
> [gost_section]
> engine_id=gost
> default_algorithms=ALL
> CRYPT_PARAMS=id-Gost28147-89-CryptoPro-A-ParamSet
> из-за чего и возник весь сыр-бор

sorry, забыл про то куда патч с OPENSSL_config(NULL) вставлять :)
это патч для сборки PHP с SSL extension -> ext/ssl/openssl.c


"Обновление OpenSSL"
Отправлено lavr , 26-Июл-13 16:21 

/gost-ssl/bin/openssl version -d что говорит?

# ls -laR /gost-ssl

где openssl.cnf и что в нем?


"Обновление OpenSSL"
Отправлено Alexadm , 29-Июл-13 10:28 
> /gost-ssl/bin/openssl version -d что говорит?
> # ls -laR /gost-ssl
> где openssl.cnf и что в нем?

Спасибо, со всем разобрался... Это были у меня проблемы в скрипте, исправил всё заработало... Всем огромное спасибо за помощь...


"Обновление OpenSSL"
Отправлено lavr , 29-Июл-13 15:52 
>> /gost-ssl/bin/openssl version -d что говорит?
>> # ls -laR /gost-ssl
>> где openssl.cnf и что в нем?
> Спасибо, со всем разобрался... Это были у меня проблемы в скрипте, исправил
> всё заработало... Всем огромное спасибо за помощь...

да не на чем, проблема явно была либо с ключами и форматом, либо
брался не тот openssl или не с тем конфигом - без engines