Обновление OpenSSL до версии 1.1.0 в Ubuntu Server 16.04.

openssl ssl https ubuntu linux

Доброго времени суток читатели и гости моего блога. На днях мне понадобилось обновить версию OpenSSL в Ubuntu Server 16.04, для поддержки шифра CHACHA20-POLY1305, я хотел использовать этот шифр в HTTPS шифровании трафика. По умолчанию Ubuntu Server поставляется вместе с OpenSSL версии 1.0.2, не поддерживающей нужного мне шифра, а в системных репозиториях Ubuntu свежая версия отсутствует. Поэтому чтобы получить последнюю версию OpenSSL, ее приходится собирать из исходников.

Существует еще один способ достижения нужного результата, это пересборка Nginx вместе с версией OpenSSL 1.1.0, отдельно подключаемой при конфигурации. Но поскольку все делалось с нуля, на чистой системе, то я решил просто обновить версию OpenSSL, а потом поставить сверху нее все что нужно.

Нужно установить пакет build-essential, чтобы скомпилировать OpenSSL из исходников. Заодно я ставлю libssl-dev, для поддержки HTTPS, пригодится в дальнейшем при сборке Nginx.

Перейдем в рабочий каталог /usr/local/src.
Скачиваем архив с последней версией OpenSSL.
Распакуем архив.
Переходим в каталог с распакованным архивом.
Задаем конфигурацию.
Компилируем и проверяем.
Устанавливаем.

Заменяем старый openssl файл из каталога /bin на новый. Старый файл убираем, потом делаем ссылку на новый.

Проверяем установленную версию.
А вот то, ради чего все затевалось. Поддержка нужных шифров CHACHA20.
Спасибо за внимание. Удачи.