ssl_protocols / ssl_conf_command - nginx bug or nginx documentation bug ?

Maxim Dounin mdounin на mdounin.ru
Вт Окт 25 15:12:36 UTC 2022


Hello!

On Tue, Oct 25, 2022 at 07:47:15AM +0300, Gena Makhomed wrote:

> On 25.10.2022 7:28, Maxim Dounin wrote:
> 
> >> https://github.com/mozilla/ssl-config-generator/issues/124#issuecomment-1288224600
> 
> > Полной конфигурации там не приведено, так что остаётся только
> > гадать, но судя по всему это очередной пользователь, который
> > пытается задавать разные ssl_protocols в name-based виртуальных
> > серверах.  Так работать не будет, потому что OpenSSL фиксирует
> > протокол раньше, чем становится известно имя.  При этом в разных
> > IP-based (или port-based) виртуальных серверах вполне можно
> > использовать различные ssl_protocols.
> 
> Понятно, спасибо.
> 
> Может быть имеет смысл научить nginx, чтобы он выдавал варнинг
> в момент чтения конфигурации, если пользователь будет пытаться
> задавать разные ssl_protocols в name-based виртуальных серверах?

В общем случае неизвестно, является ли виртуальный сервер 
name-based или IP/port-based.  Не говоря уже о случаях, когда 
сервер и такой, и такой одновременно.  И не говоря уже о том, что 
всё это вообще говоря особенность реализации OpenSSL, а как оно 
работает в той SSL-библиотеке, что у пользователя - мы не знаем.

> Или вообще, просто если встречается директива "ssl_protocols"
> и "ssl_conf_command" in non-default server{} blocks,
> even if SNI is used.

А ssl_conf_command вообще тут ни коим боком: мы не знаем, что 
именно с помощью неё пытаются сделать, и не знаем, как оно будет 
(или не будет) работать в каких случаях.  В документации явно 
сделано предупреждение о возможных непредсказуемых последствиях, 
остальное - зона ответственности того, кто писал конфигурацию.

-- 
Maxim Dounin
http://mdounin.ru/



Подробная информация о списке рассылки nginx-ru