You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Squid的tls_key_log无法替代SSLKEYLOGFILE实现TLS流量解密的问题求助

Squid的tls_key_log无法替代SSLKEYLOGFILE实现TLS流量解密的问题求助

我目前已经实现了一套TLS流量解密方案:通过设置SSLKEYLOGFILE环境变量,配合Firefox浏览器、Squid中间代理,能在Wireshark 4.2.2中成功解密TLS流量。具体环境和操作如下:

  • 操作系统:macOS 12.6
  • Squid版本:6.6
  • 操作命令:
    export SSLKEYLOGFILE=$HOME/path/to/keylogfile.txt
    firefox
    

不过我原本以为Squid自带的tls_key_log配置应该能替代SSLKEYLOGFILE环境变量,达到同样的解密效果,但实际测试后发现完全不行——Wireshark里根本无法解密任何流量。

我的Squid配置如下:

http_port 3128 ssl-bump generate-host-certificates=on cert=/my/CA.pem

sslcrtd_program /path/to/squid/6.6/libexec/security_file_certgen  -s /path/to/ssl_db -M 4MB

tls_key_log stdio:/path/to/tls_key.log

我查看了生成的tls_key.log,里面的内容格式大致是这样的:

0

CLIENT_RANDOM ..... -

1

RSA Session-ID:..... Master-Key:.....
CLIENT_RANDOM ..... .....

2 master56

CLIENT_RANDOM ..... -

3 master69

RSA Session-ID:..... Master-Key:...........
CLIENT_RANDOM ..... ....

虽然其中的CLIENT_RANDOM条目也会出现在SSLKEYLOGFILE对应的日志文件里,但后者包含的密钥信息明显更完整,比如这些额外的条目:

CLIENT_RANDOM ... ...
CLIENT_HANDSHAKE_TRAFFIC_SECRET ... ...
SERVER_HANDSHAKE_TRAFFIC_SECRET ... ...
CLIENT_TRAFFIC_SECRET_0 ... ...
SERVER_TRAFFIC_SECRET_0 ... ...
EXPORTER_SECRET ... ...

所以我想请教一下,有没有办法让Squid的tls_key_log生成足够的密钥信息,从而让Wireshark能够正常解密TLS流量呢?

备注:内容来源于stack exchange,提问作者rnd_nr_gen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 09:29:50