Nginx с TLS 1.3
Пытаясь использовать сертификаты TLS 1.3 в Nginx (1.15.8), я обнаружил, что официальный Nginx был собран с openssl 1.1.0, где, как и для TLS 1.3, нужен openssl 1.1.1.
Чтобы решить эту проблему, я собрал свой собственный openssl 1.1.1 из исходников, а затем nginx из исходников (используя только что созданный openssl). Работает отлично. НО - я не смог найти ни одного официального дистрибутива Nginx со встроенной поддержкой. В Debian или любом другом Linux.
Кто-нибудь когда-нибудь пробовал это и нашел официальное, заранее построенное решение?
2 ответа
На момент написания этой статьи существует три дистрибутива с OpenSSL 1.1.1 и NGINX 1.15: Ubuntu 18.10 (который не является выпуском LTS), FreeBSD 12.0 и Alpine 3.9.
Есть планы переместить 18.04 (который является выпуском LTS) в OpenSSL 1.1.1, но в настоящее время существует открытая ошибка, отслеживающая его включение: https://bugs.launchpad.net/ubuntu/+source/openssl/+bug/1797386 К сожалению, OpenSSL 1.1.1 не появился в Ubuntu 18.04.2, который был выпущен.
Я обнаружил, что Nginx собирает и отправляет их двоичные файлы с тем же openssl, что и в целевом дистрибутиве.
Пакеты в репозитории nginx скомпилированы с OpenSSL, как поставляется по умолчанию в конкретной ОС. Таким образом, nginx в Debian 9 скомпилирован с OpenSSL 1.1.0f.
OpenSSL 1.1.1 в настоящее время доступен в Ubuntu 18.10, и соответствующий пакет nginx, доступный на nginx.org, построен с использованием OpenSSL 1.1.1.
Это взято из ответа форума nginx.