SSL-публикаций .
Есть DNS запись some_name.domain.local, резолвящаяся в наш Nginx, но на нём нет такой публикации.
Если в браузере, или с помощью openssl прийти на Nginx:443, сначала будет ругань на некорректный сертификат, так как Nginx взял первый попавшийся серт и представился им.
И только после того как я проигнорю ошибку серта, я увижу ошибку 404.
Можно ли как-то уйти от этого поведения Nginx ?
Понимаю, что это решается актуализацией DNS-записей, но возможно есть какая-то альтернатива\костыль? А то у меня иногда мониторинг с ума сходит))
А что именно вам не нравится?
1. не "первый попавшийся", а из default_server-а 2. можно закрывать соединение, если нет конфигурации 3. можно поставить wildcard
п.2 будьте добры чуть подробнее
не нравится моё непонимание как уйти от такого поведения)) допускаю, что с технической точки зрения Nginx ведёт себя верно. проблема то в моём DNS, но я не властен над ним в данном случае
Сначала должен построиться ssl, только потом nginx сможет отдать http коды.
а под "default_server" вы имеете ввиду конфиг default.conf, который из коробки? Если я его просто удалю, проблема должна уйти?
Поправьте меня, плиз, если какое-то утверждение ошибочное: 1. Модуль ngx_stream_ssl_preread_module работает только для Stream. Если же у меня простая публикация с proxy_pass, то данным модулем воспользоваться не получится. 2. В случае с простой публикацией я никак не могу сделать фильтрацию по SNI из TLS ClientHello. Nginx в любом случае выполнит последовательность: а. Поиск сертификата из SNI из TLS ClientHello, если его нет: б. Поиск публикации с параметром default_server, если её нет: в. Выберет первую по списку публикацию и использует её сертификат. 3. Выходом будет являться только использование публикации-заглушки с параметром default-server и wildcard-сертом *.domain.local (если мои обращения вида some_url.domain.local). но возникает проблема, если придут запросы для домена domain1.local
Обсуждают сегодня