Поиск по сайту:

Как установить последнюю версию OpenSSL из исходного кода в Linux


OpenSSL — это широко используемая криптографическая библиотека, реализующая протоколы SSL и TLS для безопасной связи через компьютерные сети. Многие программы, такие как веб-сервер Apache, PHP, Postfix и многие другие, используют OpenSSL. OpenSSL обеспечивает поддержку различных криптографических алгоритмов, таких как шифры (AES, Blowfish, DES, IDEA и т. д.), криптографические хеш-функции (MD5, MD4, SHA-1, SHA-2 и т. д.) и криптография с открытым ключом (RSA, DSA). , обмен ключами Диффи-Хеллмана).

В этом уроке я шаг за шагом покажу вам, как установить последнюю стабильную версию OpenSSL из исходного кода на серверах Ubuntu 22.04 и CentOS 7.6.

Что мы будем делать?

  1. Установить зависимости
  2. Скачать исходный код OpenSSL
  3. Установить OpenSSL

    1. Скомпилируйте и установите OpenSSL
    2. Настройка библиотек ссылок
    3. Настройка двоичного файла OpenSSL
  4. Тестирование

Шаг 1 — Установите зависимости

Прежде чем мы сможем скомпилировать библиотеку OpenSSL из исходного кода, первым шагом является установка некоторых зависимостей пакета, включая пакет «build-essential» в Ubuntu или пакет «Инструменты разработки» в CentOS.

В Ubuntu

Обновите репозиторий Ubuntu и установите зависимости пакетов для компиляции программного обеспечения, используя приведенную ниже команду apt.

sudo apt update
sudo apt install build-essential checkinstall zlib1g-dev -y

На CentOS

Установите «Инструменты разработки» и некоторые библиотеки пакетов с помощью команды yum.

yum group install 'Development Tools'
yum install perl-core zlib-devel -y

После завершения установки перейдите к следующему шагу.

Шаг 2 — Загрузите OpenSSL

В этом уроке мы установим последнюю стабильную версию OpenSSL — OpenSSL 3.0.7. Вы можете скачать исходный код с сайта OpenSSL.

Перейдите в каталог /usr/local/src и загрузите исходный код OpenSSL с помощью wget.

cd /usr/local/src/
wget https://www.openssl.org/source/openssl-3.0.7.tar.gz

Теперь извлеките файл openssl.tar.gz и перейдите в каталог openssl.

tar -xf openssl-3.0.7.tar.gz
cd openssl-3.0.7

Исходный код OpenSSL загружен.

Шаг 3 — Установите OpenSSL

Прежде чем устанавливать пользовательскую версию OpenSSL в систему, давайте проверим установленную версию с помощью команды ниже.

openssl version -a

Ниже приведены мои результаты в Ubuntu:

Мы заменим версию 3.0.2 последней стабильной версией OpenSSL 3.0.7.

Мы установим новую версию OpenSSL в определенный каталог /usr/local/ssl, а затем включим библиотеки ссылок OpenSSL и настроим новый двоичный PATH для OpenSSL.

Установите и скомпилируйте OpenSSL

Перейдите в загруженный каталог openssl «/usr/local/src/openssl».

cd /usr/local/src/openssl-3.0.7

Настройте и скомпилируйте OpenSSL с помощью команд ниже.

./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib
make
make test

Дождитесь процесса компиляции OpenSSL.

Примечание:

  • --prefix и --openssldir=Установите выходной путь OpenSSL.
  • общий=принудительно создать общую библиотеку.
  • zlib=включить сжатие с помощью библиотеки zlib.

Когда процесс компиляции завершится, установите OpenSSL, используя команду ниже.

make install

OpenSSL устанавливается в каталог «/usr/local/ssl».

Настройка библиотек ссылок

Далее мы настроим общие библиотеки для OpenSSL. Новый двоичный файл OpenSSL будет загружать файлы библиотеки из каталога «/usr/local/ssl/lib».

Перейдите в каталог /etc/ld.so.conf.d и создайте новый файл конфигурации openssl-3.0.7.conf.

cd /etc/ld.so.conf.d/
nano openssl-3.0.7.conf

Вставьте путь к библиотеке openssl.

/usr/local/ssl/lib64

Сохранить и выйти.

Теперь перезагрузите динамическую ссылку, используя команду ниже.

sudo ldconfig -v

И вы увидите, что библиотеки OpenSSL в каталоге «/usr/local/ssl/lib64» загружены.

Убунту:

Настройка двоичного файла OpenSSL

Мы заменим двоичный файл openssl по умолчанию «/usr/bin/openssl или /bin/openssl» на новую версию «/usr/local/ssl/bin/openssl».

В Ubuntu 22.04 LTS

Сделайте резервную копию двоичных файлов.

mv /usr/bin/c_rehash /usr/bin/c_rehash.bak
mv /usr/bin/openssl /usr/bin/openssl.bak

Отредактируйте файл «/etc/environment» с помощью nano.

nano /etc/environment

Теперь добавьте новый двоичный каталог OpenSSL, как показано ниже.

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/ssl/bin"

Сохранить и выйти.

Перезагрузите файл среды и протестируйте новый обновленный двоичный PATH.

source /etc/environment
echo $PATH

Теперь снова проверьте двоичный файл OpenSSL.

which openssl

Вы получите результат, как показано ниже.

Двоичный путь OpenSSL для Ubuntu был обновлен.

В CentOS 7.6

Создайте резервную копию двоичных файлов CentOS OpenSSL.

mv /bin/openssl /bin/openssl.bak

Создайте новые файлы среды для OpenSSL.

vim /etc/profile.d/openssl.sh

Вставьте конфигурацию ниже.

#Set OPENSSL_PATH
OPENSSL_PATH="/usr/local/ssl/bin"
export OPENSSL_PATH
PATH=$PATH:$OPENSSL_PATH
export PATH

Сохранить и выйти.

Сделайте файл openssl.sh исполняемым.

chmod +x /etc/profile.d/openssl.sh

Загрузите среду OpenSSL и проверьте каталог bin PATH, используя приведенные ниже команды.

source /etc/profile.d/openssl.sh
echo $PATH

Теперь проверьте файл OpenSSL.

which openssl

Двоичный путь для OpenSSL в CentOS был обновлен.

Шаг 4 — Тестирование

Проверьте новую версию OpenSSL, используя следующую команду.

openssl version -a

Результат на Ubuntu.

Последняя стабильная версия OpenSSL была установлена из исходного кода в Linux Ubuntu 22.04 и CentOS 7.6.

Ссылка

  • https://wiki.openssl.org/

Статьи по данной тематике: