Linux HTTPS标题检查

我需要检查通过我的Linux(CentOS 6.5)路由器的部分HTTPSstream量。 特别是我需要知道用户请求哪个目标网站主机。 用户可以是客人浏览器/设备,我无法控制(即不能部署证书)。 我不关心内容/有效载荷,我只需要将目标URLlogging到日志文件中:-)

它的技术开放,我没有限制,因此可以使用iptables,鱿鱼,或任何其他在Linux上运行的filter(最好不是商业的 – 其中一些是由设备许可的)。 甚至是上述的组合。

我很确定这可以做到这一点,因为如果我可以在我的Windows机器上安装Fiddler和浏览HTTPS网站使用Chrome浏览器没有证书警告,并看到“提琴手”主机。

我花了一些时间来查看如何做到这一点,但到目前为止,已经遇到了需要安装在客户端浏览器上的证书的限制。 那么,我只能findstring匹配的iptables,但据我所知,这将无法与HTTPS数据包,因为他们是encryption(我错误地认为,目的地不会被encryption?)

任何帮助,这将不胜感激,希望我已经覆盖了足够的细节的要求。

  1. 捕获和caching用户提出的DNS查询。 然后,您可以将其与输出端口443连接的IP相匹配
  2. tshark的。 你应该能够以某种方式获得SNI
  3. Google“p0f ssl”。 你可以用这个获得用户代理。

如果你得到了一些事情,请发帖,我也对这样的事情感兴趣

感谢SNI ,您可以轻松获取请求数据的服务器名称,但除非您控制TLS,否则对话的其余部分(包括URL的其余部分)将(按devise)encryption并且无法使用私钥。