我正在使用出色的Charles代理来简化 Web 调试。我正在使用它的 SSL 代理功能,并安装了它附带的通用 CA 证书。虽然这可行,但它是不安全的,因为只要我的浏览器信任此证书,我就容易受到 MIM 攻击。
我正在尝试使用 OpenSSL 创建“自定义 CA 证书”,因为 Charles 允许解决此问题。这些是我正在遵循的步骤:
NAME=daaku-ca
openssl genrsa -out $NAME.key 1024
openssl req -new -key $NAME.key -out $NAME.csr
openssl x509 -days 3650 -signkey $NAME.key -in $NAME.csr -req -out $NAME.crt
openssl pkcs12 -export -out $NAME.pfx -inkey $NAME.key -in $NAME.crt
按照这些步骤,我最终得到了一个自签名根证书 $NAME.crt
,我成功地将它导入到我的 Mac OS X 钥匙串中。如果我输入密码,查尔斯的$NAME.pfx
in Charles 可以正常工作并且被正确使用,但如果没有密码,它就不起作用。
我的问题是如何生成在 Charles 中有效且不需要密码的证书。