1-Fiddler - HTTPS证书配置
before
win10 + chrome 80.0.3987.116(正式版本) (64 位) + firefox73.0.1 (64 位)
默认的,Fiddler只能代理HTTP请求,那如何让Fiddle代理HTTPS请求呢?这就需要一些证书和其他配置了。
另外,Chrome和IE都是读取系统管理的证书的,而Firefox则是自己管理证书。所以,接下来我们需要分开配置证书。
配置Chrome和IE证书
fiddler端设置
- fiddler的菜单栏选择
Tools的Options选项,在弹出框选择HTTPS选项,勾选Decrypt HTTPS traffic,然后弹出框选择Yes。弹出框的大致意思是配置Windows去信任fiddler的证书。

- 安全警告选择
是即可。提示是将从下面的证书机构安装证书。

- 将fiddler的证书(DO_NOT_TRUST_FiddlerRoot)安装到本地的证书根目录,选择
是。

- (可选)当你在上一步中点击了
是之后,如果有用户账户控制提示的话,就点击是就OK了。 - 添加证书成功,点击
确定即可。

此时,fiddler端暂时设置完毕。
Chrome设置代理
此时,默认你的Chrome是没有其他的代理工具的,如果有,可以添加一个代理规则或者暂时停止使用。
然后,我们来配置使用fiddler的代理,首先,我们在前面部分知道,fiddler默认代理的是本地127.0.0.1:8888端口。
现在,开始配置。
- Chrome打开
设置

- 下拉点击
高级的系统选项,选择打开您计算机的代理设置。如果你之前有使用别的代理插件,先停用掉。

- 此时,会打开你Windows系统的代理设置,填写相关配置并保存。

- 现在,就可以使用fiddler抓到你的Chrome浏览器的https请求了。

如果不好使,请重启浏览器和fiddler,再不行的话,我们选择重置fiddler证书尝试一下。
另外,IE和Chrome浏览器配置差不多,都是使用的是系统的代理设置,所以IE的就不演示了,并且,IE和Chrome都是读取的是系统的https证书,所以,无需其他配置。
我们往下看火狐浏览器的代理设置。
配置Firefox证书
正常来说,如果你的Firefox浏览器配置了手动代理,也就是fiddler监听的127.0.0.1:8888,则可以正常的抓到HTTP的包的,但是无法抓取https的包。

那如何配置才能抓取https的包呢?相对于IE和Chrome浏览器读取系统的证书来说,Firefox因为是自己管理https证书,所以我们需要将fiddler的证书导入到Firefox的证书管理器中,那哪来的fiddler的证书呢?以及如何导入呢?我们一步步来做。
fiddler中导出证书
- fiddler的菜单栏
Tools▶Options▶HTTPS▶保证Decrypt HTTPS traffic选项处于勾选状态▶Actions▶Export Root Certificate to Desktop,将fiddler证书导出到桌面。

- 提示证书已经导出到桌面了。

- 桌面上你可以看到导出的证书
FiddlerRoot.cer,你可以双击打开。

OK,现在,fiddler的证书有了,我们就可以将该证书安装到Firefox中了。
Firefox导入fiddler证书
- Firefox浏览器的
设置▶选项▶隐私与安全▶证书▶查看证书。

- 在打开的证书管理器中,选择
导入。

- 本地选择桌面的fiddler证书,然后会有一个
下载证书的提示,选择是即可。

- 现在fiddler的证书已经导入了。点击证书管理器右下角的
确定就行了。

- 重启浏览器,现在Firefox浏览器就能成功的抓到了https的包了。

PS:本地的fiddler证书导入之后,就可以删掉了。
如何查看证书是否安装成功
我们可以在本地查看fiddler的证书,怎么查看呢?
-
有两种方式打开系统的证书管理器。
- 从fiddler直接打开。
Tools▶Options▶HTTPS▶Actions▶Open Windows Certificate Manager

- 第二种方式是系统的搜索框搜索
cert,选择管理计算机证书即可。

- 从fiddler直接打开。
-
(可选)如果有用户账户控制提示,点击是即可。
-
在证书管理器中,选择
操作▶查找证书。

- 输入
fiddler点击立即查找就会在下面看到fiddler的证书了。

如果你没有查到该证书,你是抓不到https包的。
重置fiddler证书
如果证书过期或者你发现无法抓取HTTPS包了,我们可以尝试重置fiddler证书,然后重新生成一个fiddler证书就可以了。
- fiddler的菜单栏
Tools▶Options▶HTTPS▶保证Decrypt HTTPS traffic选项处于勾选状态▶Actions▶Rest ALL Certificates,重置fiddler的证书。

- 是否重置证书,选择
确定。

- 是否从本地的证书列表中删除证书,选择
是。

- (可选),如果遇到用户账户控制,选择
是。 - fiddler证书从本地证书列表中删除成功,点击
确定,此时你会发现Decrypt HTTPS traffic选项已经取消勾选了。

- 根证书存储这里,选择
是。

- fiddler的根证书从本地删除成功,选择
确定。

- 此时,又进入了配置fiddler证书的环节了,你一路下一步即可。

至于Firefox的证书,你有要重新从fiddler中导出到桌面,然后在导入到Firefox的证书管理器中了,这我就不啰嗦了。当然,其中在浏览器导入fiddler证书之前,你可以把原来的证书删除掉,然后再导入新的证书。记着操作完别忘了重启浏览器,不然不生效!

欢迎斧正,that's all

浙公网安备 33010602011771号