Назад | Перейти на главную страницу

CNAME, который указывает домен A на домен B, вызывает предупреждение системы безопасности

Я пользуюсь сервисом (banana.com), что позволяет мне использовать мой домен (orange.com) чтобы залогиниться.

Они упоминают, что нужно добавить запись CNAME следующим образом:

an.orange.com. 3600 IN CNAME service.banana.com.

Я сделал это, но когда я обращаюсь к URL-адресу, я получаю (в Chrome) ошибку Ваше соединение не является частным "" :

Мой сервер работает на Apache.

Зачем серверу доказывать, что это an.orange.com? Почему он вообще попадает на мой сервер? Разве адрес не должен разрешаться service.banana.com?

В CNAME запись заявляет, что an.orange.com это псевдоним канонического имени service.banana.com.
Это означает, что когда клиент ищет какой-либо тип записи (например, A) в an.orange.com ответ будет иметь A запись для service.banana.com вместо.

В обычном приложении, таком как веб-браузер в вашем примере, приложение не знает и не заботится о том, что имело место косвенное обращение в виде CNAME record как часть процесса разрешения имен (который в значительной степени скрыт от внутреннего устройства), он просто использует полученный IP-адрес.

Имея это в виду, когда пользователь переходит на https://an.orange.com/ в их веб-браузере браузер настроен на подключение к хост-части URL-адреса (an.orange.com), он разрешает это имя, получает IP-адрес, подключается, затем полностью ожидает действительный сертификат для хоста от текущего URL-адреса в случае HTTPS, а затем отправляет заголовок Host с частью текущего URL-адреса (an.orange.com) как часть их запроса.

Это сильно отличается от того, как веб-браузер реагирует на перенаправление HTTP, где ему предлагается перейти к другому URL-адресу, перезапустив весь процесс навигации со всеми новыми ожиданиями (например, теперь пытается подключиться к https://service.banana.com/).

Для HTTPS это означает, что если вы хотите разрешить пользователям переходить на https://an.orange.com/ у вас должен быть действующий сертификат на это имя.