Я устанавливаю сервер PPTP VPN (pptpd) в Ubuntu 10.04, и мне нужна возможность отслеживать URL-адреса, к которым осуществляется доступ через веб-браузер (80/443). Я думал об использовании прокси, такого как Squid, но хотел убедиться, что нет чего-то, что я мог бы более легко / эффективно настроить (будь то вход в PPTP или что-то еще). Я знаю, что могу войти в систему DNS, но мне нужно быть более детализированным до URL-адреса, к которому осуществляется доступ. Я думал, что прокси, такой как Squid, может быть немного больше, чем нужно, потому что мне действительно не нужно читать / кешировать фактическое содержимое страницы или то, что отправляется, а только URL-адрес, к которому осуществляется доступ.
Джош
Легко сделать это - проанализировать необработанный HTTP-трафик в интерфейсе VPN и извлечь необходимые заголовки, например:
tcpdump -nli ppp0 port 80 -w - -s 0 | strings | egrep -i '(GET|Host)'
Конечно, вы должны запускать это один раз для каждого устройства ppp. Это не так точно и чисто, как кажется, но я подумал, что это может быть полезно для вас.
Однако он работает только для простых HTTP-соединений.
РЕДАКТИРОВАТЬ: Нашел лучший!
apt-get install dsniff
urlsnarf -i ppp0
Конечно, он по-прежнему не работает с SSL-соединениями. Вы должны пойти путем прокси, если вам это нужно, насколько я могу судить.