在 Linux 上记录 HTTP 流量

在 Linux 上记录 HTTP 流量

讲个背景故事,我弟弟(十几岁的时候)患有注意力障碍。我经常发现他应该做作业而不是上网。我们最好用证据来证明他根本没有工作,最好是展示他访问过哪些网站的历史记录。我无法在我这边使用 Wireshark(网络设置不允许我监控他的吞吐量)。

我主要关心的是缓存。对我来说,获取的主要有用信息是初始HTTP GET请求,我可以通过执行 来使用 Wireshark 获取初始请求(http.request.method == "GET") && (http.request.uri == "/"),但是,一旦网站被缓存,它就会停止工作(它只获取过期的图像等,并且在第二个参数中更改==contains会导致大量垃圾,并且仍然不能保证它不会被缓存)。

我的路由器是 WRT54GL,上面有 Tomato(有 dnsmasq 等)。我确实想知道如何使用 dnsmasq 进行日志记录,并且已经阅读了一些相关内容,但我不知道它是否会按我想要的方式工作(初始请求后将使用本地 DNS 缓存,对吗?)。

否则,有没有更好的方法来记录他的流量?在他的计算机上安装一个记录器也可以,只要它在他的计算机上是“不可见的”(或者可以配置为不可见)——他对 Linux 不够熟悉,无法确定后台正在运行什么。我目前让他使用 Debian Squeeze。

答案1

您可以在他的 Linux 机器上设置一个代理(Squid?),这样您就可以记录日志。如果您想要一定程度的控制权,您还可以查看类似丹斯加德它与代理协同工作来控制站点访问。

相关内容