我在 Ubuntu 10.04 上设置了一个 PPTP VPN 服务器 (pptpd),需要能够监控通过 Web 浏览器 (80/443) 访问的 URL。我曾考虑使用 Squid 之类的代理,但想确保没有更轻松/更高效地设置的东西(无论是登录 PPTP 还是其他)。我知道我可以登录 DNS 部分,但我需要更细化到访问的 URL。我认为 Squid 之类的代理可能比需要的更多,因为我实际上不需要读取/缓存页面的实际内容或提交的内容,而只需要读取/缓存访问的 URL。
乔什
答案1
一个简单的方法是分析 VPN 接口上的原始 http 流量并提取所需的标头,如下所示:
tcpdump -nli ppp0 port 80 -w - -s 0 | strings | egrep -i '(GET|Host)'
当然,你应该对每个 ppp 设备运行一次。这不是最准确或最干净的,但我认为它可能对你有用。
但它只适用于普通的 HTTP 连接。
编辑:找到了一个更好的!
apt-get install dsniff
urlsnarf -i ppp0
当然,它仍然无法与 SSL 连接配合使用。据我所知,如果需要,您必须使用代理方式。