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

Исходное сообщение
"настройка openssl"

Отправлено kostaval , 24-Янв-16 15:11 
Всем привет
Установил вручную методом make install в систему openssl.
как правильно указать системе месторасположение новоустановленной openssl в каталоге /usr/local/ssl?
В системе по умолчанию была установлена штатная openssl и базируется она в /usr/lib/ssl
в результате система использует штатную, а новую нет.
спасибо.


Содержание

Сообщения в этом обсуждении
"настройка openssl"
Отправлено Led , 24-Янв-16 20:09 
> Установил вручную методом make install в систему openssl.

В какую "систему"? Нахрена?


"настройка openssl"
Отправлено PavelR , 24-Янв-16 20:25 
> Всем привет
> Установил вручную методом make install в систему openssl.
> как правильно указать системе

Правильно + системе = не использовать "метод make install"


"настройка openssl"
Отправлено eRIC , 24-Янв-16 20:58 
> Всем привет
> Установил вручную методом make install в систему openssl.
> как правильно указать системе месторасположение новоустановленной openssl в каталоге
> /usr/local/ssl?
> В системе по умолчанию была установлена штатная openssl и базируется она в
> /usr/lib/ssl
> в результате система использует штатную, а новую нет.
> спасибо.

для того чтобы заставить систему использовать новые библиотеки(не факт что системные собранные пакеты будут правильно работать с новой библиотекой), вам нужно просто сделать ссылку /usr/lib/ssl на /usr/local/ssl или же при компиляции openssl и установки указывать --prefix (не желательно чтобы не переписывать системную openssl)


"настройка openssl"
Отправлено kostaval , 25-Янв-16 10:00 
Здравствуйте Эрик.
спасибо за адекватную реакцию. отвечаю сразу на все вопросы в ветке:
1. система debian 8
2. Да согласен, можно конечно собрать deb пакет, в продакшине я так и поступлю, но на суть проблемы это не повлияет.
3. openssl ставлю патченую т.к. потребовалась поддержка шифрования dstu4145
4. --prefix прописывать при установке думаю не нужно, т.к. оно при ручной установке и так ставится в каталог /usr/local/ssl, а штатная живет в /usr/lib/ssl
5. По поводу ссылки, Вы предлагаете переименовать каталог /usr/lib/ssl в что-то другое а вместо него разместить ссылку на /usr/local/ssl?
6. Скажите, а в таком случае выходит что обновлять штатную уже не получится? ведь думаю при обновления из репозитория затрется та что в */local.... мне интересно, можно ли иметь в системе несколько версий openssl и использовать любую по необходимости? чтоб в штатном режиме работала системная, а в случае необходимости использовать с нужным мне алгоритмом шифрования?
Заранее спасибо за ответ.

"настройка openssl"
Отправлено eRIC , 25-Янв-16 11:40 
> 5. По поводу ссылки, Вы предлагаете переименовать каталог /usr/lib/ssl в что-то другое
> а вместо него разместить ссылку на /usr/local/ssl?

можно и так, с плеча рубить, но как говорил ранее некоторые системные пакеты собранные старой версией возможно не смогут работать с новой

> 6. Скажите, а в таком случае выходит что обновлять штатную уже не
> получится? ведь думаю при обновления из репозитория затрется та что в
> */local.... мне интересно, можно ли иметь в системе несколько версий openssl
> и использовать любую по необходимости? чтоб в штатном режиме работала системная,
> а в случае необходимости использовать с нужным мне алгоритмом шифрования?

можно иметь несколько версией OpenSSL в системе, в вашем случае будет идеальным оставить штатную системную в покое в /usr/lib/ssl и для работы новой OpenSSL указывать /usr/local/ssl. к примеру если вы собираетесь компилировать некое приложение с OpenSSL библиотеками, указывайте на новый путь или собираетесь вызывать openssl утилиты, то вызывайте из новой папки



"настройка openssl"
Отправлено Andrey Mitrofanov , 25-Янв-16 12:07 
>> 6. Скажите, а в таком случае выходит что обновлять штатную уже не
>> получится? ведь думаю при обновления из репозитория затрется та что в

//Если не смог -- значит, не получилось!

> можно иметь несколько версией OpenSSL в системе, в вашем случае будет идеальным

https://duckduckgo.com/?q=%D1%80%D0%B0&#...

> оставить штатную системную в покое в /usr/lib/ssl и для работы новой
> утилиты, то вызывайте из новой папки


"настройка openssl"
Отправлено kostaval , 25-Янв-16 17:24 
Всем спасибо за ответы, все изучить не успел, но информация полезная по ссылкам.

1. Мой проект - это cgi приложение, поэтому его компилировать не нужно, и соответственно нет возможности прописать путь к нужной версии openssl (либо я просто не знаю как), тем более что обращения к шифрованию будут инициироваться каким-то модулем perl(как раз подыскиваю подходящий).
2. посмотрел кратко об альтернативах, но насколько понял эта технология позволяет лишь назначить приложение по умолчанию из некоторого числа имеющихся, и чтоб использовать альтернативное - его следует назначить основным.  Думаю если я правильно понял суть, то для меня это будет затруднительно каждый раз при запуске приложения менять основное на альтернативу и потом обратно.
Получается что если это будет выделенный сервер специально под одно приложение то целесообразнее удалить штатную openssl и заменить на нужную. Жаль, я планировал использовать сервер под иные приложения тоже. Да и как вы правильно заметили некоторые приложения возможно не смогут работать.
3. Работа будет организована так:
на сервере будет вращаться apache и обслуживать приложение использующее openssl для шифрования документов, неплохо было бы не вмешиваться в работу остальных системных задач заменяя библиотеки на свои во избежании сбоев, а использовать нужное по требованию приложения. Поэтому и вопрос, можно ли сделать чтоб система использовала штатную версию, а программа патченую?


"настройка openssl"
Отправлено eRIC , 25-Янв-16 18:12 
значит идет речь больше о самих динамических библиотек libssl и libcrypto, кратко (libssl*), нежели бинарных интерфейсов (openssl)

какую именно версию хотите поставить?

выполняя apt-get install libssl1.0.0 (ставится для  1.0.1k версии, если libssl0.9.8 то 0.9.8k кажись)

в вашем случае для Ukrainian ECC DSTU-4145(не включен в mainline OpenSSL) из исходников собирать через ./config shared

Java и C# реализации есть, а вот в perl может ли с Ukrainian ECC DSTU-4145 работать, уже другая головоломка :)


"настройка openssl"
Отправлено kostaval , 25-Янв-16 19:13 
Совершенно согласен насчет перл, но это отдельный вопрос. :)
В данный момент мучаю https://github.com/crypto-org-ua/openssl-ua
ставится ормально, именно ее я и описывал в постах выше.
устанавливал как рекомендуется в centos (там все учтено, в самом пакете про shared скромно умолчали, либо забыли)
$ ./config  --prefix=/usr --openssldir=/usr/ssl
$    make
$   make test
#    make install
$   ./config shared  --prefix=/usr --openssldir=/usr/ssl
$   make clean
$   make
#    make install

есть правдо загвоздка, там устанавливали используя --prefix, но меня устроил путь по умолчанию поэтому конфигурировал без этого параметра, и вот такое окончание:
Если вы установили в другую директорию, добавьте например свой путь
/usr/local/ssl/lib в /etc/ld.so.conf и введите
# ldconfig

На этом все, проверим какая версия установлена в системе:

# openssl version
OpenSSL 1.0.0d 8 Feb 2011
здесь они вроде заменяют штатную версию новой, мне же нужно параллельно.

файла /etc/ld.so.conf я не нашел...


"настройка openssl"
Отправлено eRIC , 25-Янв-16 20:23 
> файла /etc/ld.so.conf я не нашел...

но нашли папку /etc/ld.so.conf.d с файлами где прописаны пути до библиотек куда можете добавить свой путь

так же переменную LD_LIBRARY_PATH никто не отменял :)


"настройка openssl"
Отправлено kostaval , 25-Янв-16 20:50 
:)
Да, есть такое, но опять же, прописав путь к новой ssl я заставлю систему пользоваться новыми библиотеками всегда, а нужно лишь по требованию.

"настройка openssl"
Отправлено eRIC , 26-Янв-16 06:38 
> :)
> Да, есть такое, но опять же, прописав путь к новой ssl я
> заставлю систему пользоваться новыми библиотеками всегда, а нужно лишь по требованию.

если в /etc/ld.so.conf.d то возможно да, так как это типа PATH для динамических библиотек, где программы должны сперва искать им нужное

тогда только присваивать свой PATH и LD_LIBRARY_PATH для пользователя, от имени которого будет работать ваш perl (в .profile, .bash_profile, .bashrc и т.д. и т.п.), где будет фигурировать библиотеки вашей OpenSSL


"настройка openssl"
Отправлено DeerFriend , 25-Янв-16 13:20 
Попробуйте man alternatives
В дебиане оно должно быть. Примеры использования - жава одновременно опен и оракль.

"настройка openssl"
Отправлено kostaval , 25-Янв-16 17:39 
> Попробуйте man alternatives
> В дебиане оно должно быть. Примеры использования - жава одновременно опен и
> оракль.

ответил в ветке выше... :) буду рад если прочтете.