SSLKEYLOGFILE环境变量不填充任何文本文件 [英] SSLKEYLOGFILE environment variable doesn't populate any text file

查看:46
本文介绍了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键日志文件的步骤

  1. 将目录更改为您或您的程序可以访问的目录。我正在使用桌面文件夹。

    C:> cd $HOMEDesktop
    
  2. 设置SSLKEYLOGFILE变量。这将为用户(HKCU)设置它。若要为计算机(HKLM)设置它,请在命令末尾添加/m标志。

    PS C:Users
    jDesktop> SetX SSLKEYLOGFILE "$(get-location)ssl.log"
    
  3. 验证变量是否已在单独的PowerShell窗口中设置(SETX不适用于当前窗口)。

    PS C:Users
    jDesktop> Get-ChildItem ENV: | findstr SSLKEYLOGFILE
    SSLKEYLOGFILE                  C:Users
    jDesktopssl.log
    
    您还可以通过转到控制面板>系统和安全>系统>高级系统设置>高级选项卡>环境变量>用户变量来验证SSLKEYLOGFILE是否为用户变量。您应该看到类似PowerShell示例的清单,其中的值是一个目录。

  4. 打开Chrome/Firefox并转到类似https://stackoverflow.com的HTTPS网站。

  5. 您应该会在桌面上看到ssl.log

Image of end result

进一步阅读

您提到您正在使用Wireshark。如果您使用它从捕获中的TLS加密流导出文件,this article可能会对您有所帮助。

这篇关于SSLKEYLOGFILE环境变量不填充任何文本文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆