Мне нужно проверить часть трафика HTTPS, проходящего через мой маршрутизатор Linux (CentOS 6.5). В частности, мне нужно знать, какой целевой веб-сайт запрашивается пользователем. Пользователь может быть гостевым браузером / устройством, которым я не могу управлять (т.е. не могу развертывать сертификаты). Меня не волнует содержимое / полезная нагрузка, мне просто нужно записать целевой URL в файл журнала :-)
Он открыт с точки зрения технологии, я не ограничен и поэтому могу использовать iptables, squid или любой другой фильтр, работающий в Linux (желательно не коммерческий - некоторые из них лицензируются устройством). Или даже сочетание вышеперечисленного.
Я почти уверен, что это можно сделать, потому что, если я могу установить Fiddler на свой компьютер с Windows и просматривать веб-сайты HTTPS с помощью Chrome без предупреждений о сертификатах и видеть «хост» в Fiddler.
Я потратил некоторое время на поиски того, как это можно сделать, но до сих пор сталкивался с ограничениями, связанными с сертификатами, которые необходимо установить в клиентских браузерах. Это, и я мог найти только совпадение строк для iptables, но насколько я понимаю, это не будет работать с пакетами HTTPS, поскольку они зашифрованы (я ошибочно думал, что пункт назначения не будет зашифрован?)
Любая помощь в этом будет принята с благодарностью, надеюсь, я рассмотрел требования достаточно подробно.
Благодаря SNI, вы можете легко получить имя сервера, с которого запрашиваются данные, но вся остальная часть разговора (включая остальную часть URL-адреса) (как задумано) зашифрована и недоступна для вас, если вы не контролируете закрытый ключ TLS.
Пожалуйста, напишите, если у вас что-то работает, меня тоже интересует такая вещь