monkeyWie / proxyee

HTTP proxy server,support HTTPS&websocket.MITM impl,intercept and tamper HTTPS traffic.
MIT License
1.54k stars 574 forks source link

https请求,系统中也替换了crt,但是请求还是显示不安全 #40

Closed CembZy closed 5 years ago

CembZy commented 5 years ago

系统中应该怎么配置啊?我选择的是 public static void main(String[] args) throws Exception { HttpProxyServerConfig config = new HttpProxyServerConfig(); config.setHandleSsl(true); new HttpProxyServer() .serverConfig(config) .start(9999); } 这个启动的,其他的都没改动

monkeyWie commented 5 years ago

证书一定要安装在受信任的根证书颁发机构才行

CembZy commented 5 years ago

我把项目里面ca.crt替换成了真实服务器上的crt证书,并且把这个证书在谷歌浏览器里面的证书管理的受信任的根证书颁发机构中导入进去了,然后访问的时候还是现实不安全啊。具体操作步骤是什么啊。。

CembZy commented 5 years ago

@monkeyWie 我把项目里面ca.crt替换成了真实服务器上的crt证书,并且把这个证书在谷歌浏览器里面的证书管理的受信任的根证书颁发机构中导入进去了,然后访问的时候还是现实不安全啊。具体操作步骤是什么啊。。

monkeyWie commented 5 years ago

真实服务器的证书是哪里的啊?如果是你自己生成的,那私钥也得一起替换

CembZy commented 5 years ago

@monkeyWie 就是真实服务器上应用的证书,我现在把这个证书拷贝出来了然后替换了代理程序里面的crt证书,私钥没有替换,意思是需要将私钥也一起替换了吗?

monkeyWie commented 5 years ago

服务器上的证书不能做CA根证书啊,你可以本地生成一个ca证书

CembZy commented 5 years ago

@monkeyWie 是不是这样的,需要自己去生成一个证书,然后替换了代理程序里面的ca证书,私钥也需要替换了,对于真实服务器上的证书不需要去管,对吗?

monkeyWie commented 5 years ago

是的,代理服务器的证书和别的没关系

CembZy commented 5 years ago

@monkeyWie 好的,谢谢

weirenren commented 5 years ago

是的,代理服务器的证书和别的没关系

如果使用自己HTTPS服务器上的证书和私钥,直接替换测试中的根证书和私钥就行了,也就不需要导入根证书到操作系统中吧。因为我考虑的是所有的client与proxy之间使用同一个证书公钥,不希望ca自动生成一个临时证书,这种操作可以吧?

monkeyWie commented 5 years ago

@weirenren 应该不行哦,代理服务器是需要安装根证书的,你的服务器证书不是根证书