SSL Configuration Generator https://ssl-config.mozilla.org/
Maxim Dounin
mdounin на mdounin.ru
Пт Янв 10 13:04:05 UTC 2020
Hello!
On Fri, Jan 10, 2020 at 04:07:17AM +0200, Gena Makhomed wrote:
> SSL Configuration Generator https://ssl-config.mozilla.org/
>
> Предлагает для конфигурации Intermediate (General-purpose servers with a
> variety of clients, recommended for almost all systems)
> в конфиге nginx включать ssl_dhparam:
>
> # curl https://ssl-config.mozilla.org/ffdhe2048.txt > /path/to/dhparam.pem
> ssl_dhparam /path/to/dhparam.pem;
>
> Причем, содержимое файла, куда указывает директива ssl_dhparam
> будет одинаковым у всех, кто воспользуется этим советом. (!!!)
>
> И прописывать в директиву ssl_ciphers
> в том числе и DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384.
>
> Не совсем понятен смысл этого действия.
>
> Начиная с версии 1.11.0 (вышла 24 мая 2016 года) для того чтобы включить
> поддержку DHE-шифров - необходимо явно задавать директиву ssl_dhparam.
>
> Но если посмотреть по результатам https://www.ssllabs.com/ssltest/
> включение или выключение ssl_dhparam практически ни на что не влияет.
>
> Более широкой поддержки со стороны клиентов не появляется,
> единственное изменение, которое удалось заметить - это то,
> что IE 11 начинает использовать DHE вместо ECDHE. И на этом всё.
>
> Рекомендация сайта https://ssl-config.mozilla.org/ является разумной?
> ssl_dhparam действительно лучше будет в 2020 включать в конфиге nginx?
>
> Или же создатели сайта https://ssl-config.mozilla.org/ ошибаются,
> и ssl_dhparam лучше не включать и DHE-шифры из директивы ssl_ciphers
> лучше будет убрать?
Моя позиция по DHE-шифрам проста: они слишком ресурсоёмкие, чтобы
о их использовании можно было всерьёз говорить. И это одна из
причин, почему по умолчанию они теперь не используются.
Положительная сторона у их использовании только одна: они
позволяют получить forward secrecy с некоторыми старыми
браузерами, и без DHE-шифров с этими браузерами forward secrecy не
получить никак.
Однако с учётом использования в конкретной обсуждаемой
конфигурации только протоколов TLSv1.2 и выше - это положительная
сторона, как я понимаю, полностью нивелируется отсутствием
возможности общаться с этими старыми браузерами. Так что смысла
разрешать DHЕ-шифры - нет, IMHO, приблизительно никакого, это лишь
открывает дополнительный DoS-вектор через очень дорогие SSL
handshake'и.
> Если создатели сайта https://ssl-config.mozilla.org/ ошибаются,
> то осознать свою ошибку они смогут наверное только после того,
> как им об этом напишет кто-то из разработчиков nginx?
Нет, разработчики nginx тут ни при чём. Тут вопрос исключительно
в том, что именно хотят разрешить авторы конфигурации, а что -
нет. Они явно хотят разрешить DHE-шифры, и явно специально
написали как директиву ssl_dhparam, так и
DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384 в списке
шифров.
Возможно, тут дело в том, что предлагаемый список шифров -
закрытый, и шифров без forward secrecy там вообще нет. И
соответственно DHE-шифры оставлены для того, чтобы какие-то
соверменные, но малораспространённые клиенты без поддержки ECDH
вообще хоть как-то могли коммуницировать с сервером.
В любом случае - вопрос "зачем так" - он не к разработчикам
nginx'а, а к авторам соответствующей конфигурации.
--
Maxim Dounin
http://mdounin.ru/
Подробная информация о списке рассылки nginx-ru