SSLKEYLOGFILE环境变量不填充任何文本文件 [英] SSLKEYLOGFILE environment variable doesn't populate any text file
本文介绍了SSLKEYLOGFILE环境变量不填充任何文本文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的操作系统是Windows 10 64位。我使用的是最新版本的Firefox和Chrome。
我要保存预主密钥以便与Wireshark一起使用。
为此,我找到了许多教程,都推荐使用SSLKEYLOGFILE环境变量。
然而,无论我在这个变量中输入了什么路径,Firefox(普通版和开发者版)或Chrome都没有创建任何文件。即使当我重新启动这些浏览器或操作系统时也是如此。当我清除浏览器上的缓存时也是如此。我找到了使用Chrome设置SSLKEYLOGFILE变量的替代方法,方法是使用以下参数启动浏览器:
--ssl-key-log-file=PATH
虽然此参数确实创建了一个日志文件,但它永远不会被填充。它仍然完全为空。
使此问题更加恼人的是,我不知道是否有任何调试日志至少可以让我知道发生了什么。
有谁有办法解决这个问题吗?
推荐答案
在Chrome和Firefox中验证
Windows 10 64位[10.0.17763.379版]
我不会对Chrome使用--ssl-key-log-file
标志。在我的测试中,它没有效果。
获取SSL键日志文件的步骤
将目录更改为您或您的程序可以访问的目录。我正在使用桌面文件夹。
C:> cd $HOMEDesktop
设置
SSLKEYLOGFILE
变量。这将为用户(HKCU)设置它。若要为计算机(HKLM)设置它,请在命令末尾添加/m
标志。PS C:Users jDesktop> SetX SSLKEYLOGFILE "$(get-location)ssl.log"
验证变量是否已在单独的PowerShell窗口中设置(SETX不适用于当前窗口)。
您还可以通过转到控制面板>系统和安全>系统>高级系统设置>高级选项卡>环境变量>用户变量来验证SSLKEYLOGFILE是否为用户变量。您应该看到类似PowerShell示例的清单,其中的值是一个目录。PS C:Users jDesktop> Get-ChildItem ENV: | findstr SSLKEYLOGFILE SSLKEYLOGFILE C:Users jDesktopssl.log
打开Chrome/Firefox并转到类似https://stackoverflow.com的HTTPS网站。
- 您应该会在桌面上看到
ssl.log
。
进一步阅读
- 2018-12-07,F5,Decrypting SSL traffic:介绍上述操作的好文章,但跨平台
- 2019-03-18,mozilla,nss密钥日志格式 :SSLKEYLOGFILE格式
- 2018-08-17,Wireshark Bugzilla,Add TLS 1.3 support:TLS1.3的测试pCAP/SSLKEYLOGFILE内容良好(见备注83)
您提到您正在使用Wireshark。如果您使用它从捕获中的TLS加密流导出文件,this article可能会对您有所帮助。
这篇关于SSLKEYLOGFILE环境变量不填充任何文本文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文