北京SEO

Charles Proxy 自定义 CA 证书的例子

2019/10/10/17:46:15  阅读:2375  来源:谷歌SEO算法  标签: 5G标准出炉

下面我们一起来看Charles Proxy 自定义 CA 证书的例子,希望此例子可以帮助到各位朋友,Charles Proxy 跟 Windows 平台下的 Fiddler 一样可以查看 HTTPS 流量,但使用 Charles 官方提供的 CA 证书检查 HTTPS 请求时,Firefox 35 下网页会出现如下错误:

twitter.com uses an invalid security certificate. The certificate is not trusted because the issuer certificate has expired. (Error code: sec_error_expired_issuer_certificate)

据说原因是这样的:

The more recent versions of Firefox only allow certs with start dates after the unix epoch (1st Jan 1970). As the Charles CA cert has a start year of 1899 it’s seen as expired.

最新版本的 Firefox 只允许证书的起始时间在 1970 以后,而 Charles CA 证书的起始时间是 1899,解决办法是自建一个证书。

自建 CA 证书

我的过程基于 openSUSE 13.2 操作系统,逐行执行以下命令,openSUSE 下需要管理员权限.

  1. mkdir-p/usr/local/CharlesCA
  2. cd/usr/local/CharlesCA
  3. mkdircertsprivatenewcerts
  4. echo01>serial
  5. touchindex.txt

生成 CA 证书

  1. opensslreq-new-x509-days3650-extensionsv3_ca
  2. -keyoutprivate/ca_key.pem-outcerts/ca_cert.pem
  3. -config/etc/ssl/openssl.cnf

请注意 -config 后指向的路径,这里是我 openSUSE 下 openssl.cnf 文件路径,请根据自己的操作系统确认其路径,这一步中也会要求填写 passphrase 及其它信息,passphrase 后面在 Charles 中会用到.

转换为 PKCS12 格式

因为 Charles 需要 pkcs12 格式的证书,所以还需要做个转换:

  1. opensslpkcs12-export-outca_cert.pfx-inkeyprivate/ca_key.pem-incerts/ca_cert.pem--phpfensi.com

这样,/usr/local/CharlesCA 目录下会生成 ca_cert.pfx 文件,我们总共得到了 3 个重要的文件:

ca_cert.pfx – charles 添加自定义证书用的

ca_cert.pem – 提供给客户端使用的

ca_key.pem – 钥匙(请保证它的安全)

配置 charles,打开 charles -> Proxy -> Proxy Settings… 菜单,点击 SSL 标签页,勾选 ‘Use a custom CA certificate’,点击 CHOOSE 按键,选择 /usr/local/CharlesCA/ca_cert.pfx 文件,这样就配置好 charles 的证书.

导入证书到 Firefox

打开 Firefox -> Preferences,选择 Advanced -> Certificates 标签页,点击 VIEW CERTIFICATES,点击 IMPORT...,定位到 /usr/local/CharlesCA/certs/ca_cert.pem 文件,勾选 ‘This certificate can identify websites’,确认.

最后重启 Charles,会弹窗口要求填写上面创建证书时设置的 passphrase。之后 https 流量可以正常分析了.

广告内容

Charles Proxy 自定义 CA 证书的例子 Charles Proxy 自定义 CA 证书的例子 Charles Proxy 自定义 CA 证书的例子

相关阅读

热门评论

小浪SEO博客 小浪SEO博客

专注SEO优化思维、SEO技术的实战分享类博客~

总篇数183

精选文章

RMAN中catalog和nocatalog区别介绍 小技巧:为Linux下的文件分配多个权限 zimbra8.5.1安装第三方签名ssl证书的步骤 解决mysql不能远程连接数据库方法 windows服务器mysql增量备份批处理数据库 mysql中slow query log慢日志查询分析 JavaScript跨域问题总结 Linux下负载均衡软件LVS配置(VS/DR)教程 mysql中权限参数说明 MYSQL(错误1053)无法正常启动

SEO最新算法