root手机,把代理证书放到系统证书根目录下
用户CA证书目录
/data/misc/user/0/cacerts-added
系统CA证书目录
/system/etc/security/cacerts
问题:
有的手机root /system 分区是只能读 仍然不能把证书放到系统根目录, 比如魅族pro5
报错:mount -o rw,remount /system /system’ not in /proc/mounts
方案. mount -o rw,remount /
或者mount -o rw,remount /system
然后再chmod 777 /system
此方法如果还是不行,可以参考这篇文章的方法https://blog.zhangkunzhi.com/2020/02/10/%E5%AE%89%E5%8D%93%E5%AF%BC%E5%85%A5%E8%AF%81%E4%B9%A6%E5%88%B0%E7%B3%BB%E7%BB%9F%E7%9B%AE%E5%BD%95%E4%B8%AD/index.html
操作:
把 charles或者fiddler证书下载到桌面,比如证书名字叫charles-ssl-proxying-certificate.pem
执行命令 openssl x509 -subject_hash_old -in charles-ssl-proxying-certificate.pem 拿到证书到md5值(8位)(.cer证书得转化为pem才能拿到md5值,我是用mac的钥匙串转化的,其他方式自己网上查)
此证书的md5值为6b7b3927
再执行cat charles-proxy-ssl-proxying-certificate.pem >6b7b3927.0(后缀必须是0)
得到一个名为6b7b3927.0的证书,在使用adb命令推进手机的跟证书目录即可
sudo adb push 6b7b3927.0 /system/etc/security/cacerts
查看手机根目录是否安装,打开手机
说明安装成功,
httpcannary证书也可以使用同样的方法,把手机用户里面的httpcannary证书导出来,再倒进根目录下即可, ps:按照道理来说,直接再手机里面移动岂不是更好,但是之前做过尝试,手机里面直接移动证书,手机重启后会消失,也不知道为啥,===