Я выполнял рабочий сервер с установленной Ubuntu 18. Недавно, я нашел, что мое веб-приложение не было позволено на некоторых брандмауэрах, установленных в местонахождении заказчика.
Я нашел, что мой сервер связывается в TLSv1.0, TLSv1.1, TLSv1.2
протоколы, я предполагаю, что установка брандмауэра позволяет связь с сервером на TLSv1.3
протокол только.
Поскольку Ubuntu 18 поставляется с OpenSSL version 1.1.0
, и сделать поддержку сервера TLS v1.3
Я должен обновить OpenSSL до version 1.1.1
который является последним.
Поскольку это - выполнение рабочего сервера nginx
сервер, я не хочу непосредственно пробовать что-либо на сервере.
root@energy-prod:~# nginx -v
nginx version: nginx/1.14.0 (Ubuntu)
Что лучший способ состоит в том, чтобы обновить OpenSSL до v1.1.1, не нарушая никакие другие настройки сервера?
Примечание: По состоянию на ~August 2019 openSSL 1.1.1 должен быть доступен для установки через нормальные обновления/установки пакета для 18,04. Или, можно загрузить .deb пакет непосредственно отсюда.
Согласно веб-сайту OpenSSL:
Последняя стабильная версия является 1.1.1 рядами. Это - также наша версия Долговременной поддержки (LTS), поддерживаемая до 11-го сентября 2023.
Так как это не находится в текущих репозиториях Ubuntu, необходимо будет загрузить, скомпилировать и установить последнюю версию OpenSSL вручную.
Ниже инструкции следовать:
wget https://www.openssl.org/source/openssl-1.1.1a.tar.gz
tar -zxf openssl-1.1.1a.tar.gz && cd openssl-1.1.1a
./config
.make
(Вы, возможно, должны работать sudo apt install make gcc
прежде, чем выполнить эту команду успешно).make test
проверять на возможные ошибки.sudo mv /usr/bin/openssl ~/tmp
sudo make install
.sudo ln -s /usr/local/bin/openssl /usr/bin/openssl
sudo ldconfig
обновить символьные ссылки и восстановить кэш библиотеки.Предполагая, что не было никаких ошибок на выполняющихся шагах 4 - 10, необходимо было успешно установить новую версию OpenSSL.
Снова, от терминала дают команду:
openssl version
Ваш вывод должен быть следующие:
OpenSSL 1.1.1a 20 Nov 2018