Думаю, подобные вопросы уже задавали над и над, но мой вопрос немного другой. Я понимаю, что не могу перенаправить HTTPS-трафик на целевую страницу Captive Portal, не вызывая ошибок SSL в браузере. Я понимаю почему. Я согласен, потому что это так, и я счастлив, что SSL с нами.
Однако я могу сказать, что существует немного лучшее решение, чем отказ от этого, потому что я использовал его несколько дней назад в школе. Сначала я не осознавал, что мой ноутбук (Debian 8) автоматически подключился к их открытой сети Wi-Fi, и набрал несколько поисковых запросов в адресной строке Chrome. Моя поисковая система по умолчанию - Google, которая обслуживает только страницы HTTPS. Страница, на которой я ожидал получить результаты Google, вместо этого показала ошибку подключения (неизбежную), но Chrome автоматически открыл новую вкладку, показывающую целевую страницу Captive Portal с формой входа.
Это то, что я хотел бы реализовать с использованием любого дистрибутива Linux и любого оборудования, но не говоря уже о дистрибутиве и оборудовании, и давайте придерживаться принципа: как работает этот трюк с новой вкладкой? На каком уровне протокола это реализовано? Как?
https://www.chromium.org/chromium-os/chromiumos-design-docs/network-portal-detection
Chrome пытается получить http://clients3.google.com/generate_204
и определяет, что попадает на перехватывающий портал, если этот URL возвращает что-то, кроме 204.
Операционные системы Apple также делают это через http://www.apple.com/library/test/success.html.