请按以下步骤获取证书📝:
- 前往 https://mmw.ggemo.com/visit/index.html
- 联系瓜瓜 要一个token
- 输入token, 和自己随便输六位数字密码(比如 114514), 点击生成证书
- 浏览器会自动下载一个
.p12
格式的文件
安装证书
macos
- 直接打开
.p12
文件, 默认是用钥匙串访问应用打开的 - 输入获取证书时输入的六位数字密码, 验证系统的指纹/密码等
- 在钥匙串访问 → 系统 → 证书中, 找到
Client-2025-02-31-11-22-33
类似的证书, 双击打开 - 在信任中, 将
安全套接字层(SSL)
设为始终信任 - 钥匙串访问 → 系统 → 证书中, 将证书前面的小箭头展开, 能看到一个
Imported Private Key
, 双击打开, 在访问控制中 添加你常用的浏览器(否则 每次用到证书访问链接的时候 都要输入系统密码)
android
- 打开.p12文件, 选择使用凭证安装应用打开
- 输入获取证书时输入的六位数字密码, 验证系统的指纹/密码等
- 选择作为VPN和应用用户证书
- 为证书命名环节请随意
windows
双击打开下载的证书, 选择当前用户
(默认), 然后下一步下一步 输入获取证书时输入的六位数字密码 下一步下一步下一步
ipad
如果是非safari浏览器下载的证书, 需要先把证书在文件管理中从浏览器的文件夹 移动到下载
中, 然后点击证书
下载证书后 浏览器弹框 点击确定, 然后去设置
, 左边最上面应该有一个已下载描述文件
, 如果没有的话 去通用 → VPN与设备管理. 点击已下载的描述文件中的一条 → 输入ipad的密码 → 输入获取证书时输入的六位数字密码
扩展: 自动选取证书
只按上面安装证书的话, 每次访问都要点一下选择证书, 按下面操作可以让chrome自动选用证书(需要更改ISSUER CN字段)
windows (powershell管理员模式)
1 | $regPath = "HKLM:\SOFTWARE\Policies\Google\Chrome\AutoSelectCertificateForUrls" |
windows (reg文件)
新建一个xxx.reg
文件, 编辑copy进去下面的文本, 保存之后 双击打开 进行注册表注册
1 | Windows Registry Editor Version 5.00 |
macos
1 | defaults write com.google.Chrome AutoSelectCertificateForUrls -array |
🛡️安全性声明🛡️
生成证书的项目开源在https://github.com/mmmaru/mmw
私钥纯在本地浏览器运算, 没有经过网络传输: 访客端网页在前端生成RSA私钥和csr后, 仅将csr传给后端, 后端用对应ca的私钥进行签名, 返回签名后的crt, 前端将crt和私钥打包成p12进行下载
安装这个p12仅安装客户端认证证书, 不涉及信任CA. 就算真的成为用户的网络中间人 也无法解密用户的https