Grasscutters / Grasscutter

A server software reimplementation for a certain anime game.
https://grasscutter.io/
GNU Affero General Public License v3.0
16.18k stars 4.47k forks source link

错误[Bug] #1111

Closed YansHJ closed 2 years ago

YansHJ commented 2 years ago

在百度云的Windows Server 2019上运行代理和服务端,当远程主机运行客户端通过windows代理到Windows server 2019的8080端口时,客户端显示“正在下载资源”,之后显示“错误4206”,无法连接上服务端,而服务端则一直在报错

zhaodice commented 2 years ago

一看就是根证书没安装,原神客户端察觉到服务器的https证书是假的就握手失败了,你仔细看错误:handshake failed

zhaodice commented 2 years ago

自己用IE浏览器打开mihoyo.com 什么时候显示grasscutter而且浏览器不瞎BB危险了显示绿锁什么时候就正确了。

YansHJ commented 2 years ago

对,我发现了,好像这个代理mitmproxy需要证书,但是查了一下还是不知道该怎么解决,不太熟悉这个东西,你有什么解决办法吗,求教一下

zhaodice commented 2 years ago

对,我发现了,好像这个代理mitmproxy需要证书,但是查了一下还是不知道该怎么解决,不太熟悉这个东西,你有什么解决办法吗,求教一下

你电脑有浏览器吗?打开 https://account.mihoyo.com/ 告诉你证书危险 你无视,继续访问,然后点击地址栏,查看证书,然后点安装证书,选择根存储

zhaodice commented 2 years ago

image

zhaodice commented 2 years ago

image image 此处应该有个安装

YansHJ commented 2 years ago

image image 此处应该有个安装

我在客户端的主机上看到有一个导出证书,我导出为xxx.cer,之后应该怎么导入到服务端的主机上呢

zhaodice commented 2 years ago

@YansHJ 我让你打开 https://account.mihoyo.com/ ,不是真让你打开github看它证书

zhaodice commented 2 years ago

正常情况下你现在打开https://account.mihoyo.com/ 应该告诉你证书错误,这时你再装证书

YansHJ commented 2 years ago

正常情况下你现在打开https://account.mihoyo.com/ 应该告诉你证书错误,这时你再装证书

但是他没有告诉我证书错误,无论是本机还是服务器上。。。

zhaodice commented 2 years ago

正常情况下你现在打开https://account.mihoyo.com/ 应该告诉你证书错误,这时你再装证书

但是他没有告诉我证书错误,无论是本机还是服务器上。。。

那么它现在显示什么?正常的网页?如果是这样那么你就失败了

zhaodice commented 2 years ago

只有你游玩的电脑显示如下,才能代表grasscutter正式接管了你电脑的游戏 image

YansHJ commented 2 years ago

正常情况下你现在打开https://account.mihoyo.com/ 应该告诉你证书错误,这时你再装证书

但是他没有告诉我证书错误,无论是本机还是服务器上。。。

那么它现在显示什么?正常的网页?如果是这样那么你就失败了

是正常的网页,我使用的是mitmproxy做的代理

zhaodice commented 2 years ago

正常情况下你现在打开https://account.mihoyo.com/ 应该告诉你证书错误,这时你再装证书

但是他没有告诉我证书错误,无论是本机还是服务器上。。。

那么它现在显示什么?正常的网页?如果是这样那么你就失败了

是正常的网页,我使用的是mitmproxy做的代理

那你肯定失败了,哎呀,其实可以不用mitmproxy的,你是在哪里架设的私服?游玩的电脑,还是远端服务器?

zhaodice commented 2 years ago
127.0.0.1 api-os-takumi.mihoyo.com
127.0.0.1 hk4e-api-os-static.mihoyo.com
127.0.0.1 hk4e-sdk-os.mihoyo.com
127.0.0.1 dispatchosglobal.yuanshen.com
127.0.0.1 osusadispatch.yuanshen.com
127.0.0.1 account.mihoyo.com
127.0.0.1 log-upload-os.mihoyo.com
127.0.0.1 dispatchcntest.yuanshen.com
127.0.0.1 devlog-upload.mihoyo.com
127.0.0.1 webstatic.mihoyo.com
127.0.0.1 log-upload.mihoyo.com
127.0.0.1 hk4e-sdk.mihoyo.com
127.0.0.1 api-beta-sdk.mihoyo.com
127.0.0.1 api-beta-sdk-os.mihoyo.com
127.0.0.1 cnbeta01dispatch.yuanshen.com
127.0.0.1 dispatchcnglobal.yuanshen.com
127.0.0.1 cnbeta02dispatch.yuanshen.com
127.0.0.1 sdk-os-static.mihoyo.com
127.0.0.1 webstatic-sea.mihoyo.com
127.0.0.1 hk4e-sdk-os-static.hoyoverse.com
127.0.0.1 webstatic-sea.hoyoverse.com
127.0.0.1 sdk-os-static.hoyoverse.com
127.0.0.1 api-account-os.hoyoverse.com
127.0.0.1 hk4e-sdk-os.hoyoverse.com
127.0.0.1 uspider.yuanshen.com

如果你是本机游玩,修改C:\Windows\System32\drivers\etc\hosts如上就可以了

zhaodice commented 2 years ago

并保证证书正确(https://account.mihoyo.com/ 显示grasscutter就没问题)

YansHJ commented 2 years ago

正常情况下你现在打开https://account.mihoyo.com/ 应该告诉你证书错误,这时你再装证书

但是他没有告诉我证书错误,无论是本机还是服务器上。。。

那么它现在显示什么?正常的网页?如果是这样那么你就失败了

是正常的网页,我使用的是mitmproxy做的代理

那你肯定失败了,哎呀,其实可以不用mitmproxy的,你是在哪里架设的私服?游玩的电脑,还是远端服务器?

不对不对,刚才远端服务器程序崩掉了,我重新启动了一下显示“访问的不是私密链接,可能会窃取xxxx”,之后点击继续前往,就会显示“Welcome to Grasscutter”

zhaodice commented 2 years ago

@YansHJ 啊对对对,现在你就差最后一步了,你想办法按我上述说的,浏览器显示证书,然后选择根证书,安装它

YansHJ commented 2 years ago

并保证证书正确(https://account.mihoyo.com/ 显示grasscutter就没问题)

是远端,远程的服务器架设的服务端,之后我本地的电脑客户端去连接的

YansHJ commented 2 years ago

并保证证书正确(https://account.mihoyo.com/ 显示grasscutter就没问题)

是远端,远程的服务器架设的服务端,之后我本地的电脑客户端去连接的

zhaodice commented 2 years ago

image image

我这个是正常的,你这个地方应该是告诉你证书不安全

zhaodice commented 2 years ago

点进去,把证书装好,安装的时候选择”受信任的根证书机构“什么的

zhaodice commented 2 years ago

然后刷新浏览器,它应该变成正常的绿锁,显示和我一样,证书有效,这时你应该可以进游戏了

YansHJ commented 2 years ago

点进去,把证书装好,安装的时候选择”受信任的根证书机构“什么的 ~QTG%JR8Z7(BXVD B{{AD7G J0ZSU7UWQAJ0EWX(8P 9`45

我这里好像没有你说的那样,没有看到证书

zhaodice commented 2 years ago

@YansHJ 详细信息呢

zhaodice commented 2 years ago

详细信息有个复制到文件,把cer文件复制出来,然后双击cer文件,安装

YansHJ commented 2 years ago

详细信息有个复制到文件,把cer文件复制出来,然后双击cer文件,安装 4INK55G1WI}1@{VJ)A3L0%M U{{IWK51A81XN9A%6%(G`G7 @@NU(Y_UGX02~75S)2$1PU9

确实导入成功了,是我的步骤不对吗,导入之后访问还是显示刚才的错误,和红色的提示

YansHJ commented 2 years ago

我是应该在本地安装,还是在远程服务端安装这个证书呢

YansHJ commented 2 years ago

我是应该在本地安装,还是在远程服务端安装这个证书呢

zhaodice commented 2 years ago

我是应该在本地安装,还是在远程服务端安装这个证书呢

哪台系统玩游戏,哪台系统就要安装

YansHJ commented 2 years ago

我是应该在本地安装,还是在远程服务端安装这个证书呢

哪台系统玩游戏,哪台系统就要安装

对的,我是在本地客户端的主机上安装了,之后重新访问那个页面还是一样的红色提示

zhaodice commented 2 years ago

安装证书是为了让【游戏的客户端所在的电脑】信任你的私服,毕竟它是假的,不是官方的,所以必须强迫你的游戏电脑信任它

你的服务器不需要安装任何东西,需要的是游戏机的信任!!

zhaodice commented 2 years ago

我是应该在本地安装,还是在远程服务端安装这个证书呢

哪台系统玩游戏,哪台系统就要安装

对的,我是在本地客户端的主机上安装了,之后重新访问那个页面还是一样的红色提示

重启浏览器呢?

YansHJ commented 2 years ago

我是应该在本地安装,还是在远程服务端安装这个证书呢

哪台系统玩游戏,哪台系统就要安装

对的,我是在本地客户端的主机上安装了,之后重新访问那个页面还是一样的红色提示

重启浏览器呢?

还是红色的提示,重启了浏览器,并且尝试用其他浏览器依旧是红色的提示

zhaodice commented 2 years ago

我是应该在本地安装,还是在远程服务端安装这个证书呢

哪台系统玩游戏,哪台系统就要安装

对的,我是在本地客户端的主机上安装了,之后重新访问那个页面还是一样的红色提示

重启浏览器呢?

还是红色的提示,重启了浏览器,并且尝试用其他浏览器依旧是红色的提示

你安装的时候存储区域选的什么?

YansHJ commented 2 years ago

我是应该在本地安装,还是在远程服务端安装这个证书呢

哪台系统玩游戏,哪台系统就要安装

对的,我是在本地客户端的主机上安装了,之后重新访问那个页面还是一样的红色提示

重启浏览器呢?

还是红色的提示,重启了浏览器,并且尝试用其他浏览器依旧是红色的提示

你安装的时候存储区域选的什么?

“受信任的根证书颁发机构”

zhaodice commented 2 years ago

安装选的当前用户还是所有用户

YansHJ commented 2 years ago

安装选的当前用户还是所有用户

本地计算机,应该是所有用户

YansHJ commented 2 years ago

安装选的当前用户还是所有用户 LZN_WRIZ~4%GM7T7O%N2K)G

zhaodice commented 2 years ago

你这个问题吧,我也是第一次见,要不要再试试看重启电脑,虽然可能没什么用……主要是怎么说,你这个证书也有问题,它的结构很奇怪,没有根证书签发机构,光一个域名

YansHJ commented 2 years ago

你这个问题吧,我也是第一次见,要不要再试试看重启电脑,虽然可能没什么用……主要是怎么说,你这个证书也有问题,它的结构很奇怪,没有根证书签发机构,光一个域名 @L2WIU){DLJ@~PNK8(BI@YO

我在正常访问时导出的证书是有这些信息的,而在红色提示下导出的证书是刚才那样只有域名

zhaodice commented 2 years ago

如果有条件的话你自己生成一个自签名的根证书也好……不过挺复杂的,一时半会说不明白……

zhaodice commented 2 years ago

你这个问题吧,我也是第一次见,要不要再试试看重启电脑,虽然可能没什么用……主要是怎么说,你这个证书也有问题,它的结构很奇怪,没有根证书签发机构,光一个域名 @L2WIU){DLJ@~PNK8(BI@YO

我在正常访问时导出的证书是有这些信息的,而在红色提示下导出的证书是刚才那样只有域名

这个你点安装证书试试看

zhaodice commented 2 years ago

安装证书后,安装证书这四个字会消失,点证书路径会告诉你证书没问题

zhaodice commented 2 years ago

哦对了 你这个截图好像是子证书吧……你需要点证书路径,找到最上面那个,你应该应该是GeoTrus ,然后点击它,查看证书

zhaodice commented 2 years ago

确保是根证书你再装

zhaodice commented 2 years ago

子证书我记得装不上

YansHJ commented 2 years ago

确保是根证书你再装

红色提示下只有一个,正常访问的情况下是有三个树枝的,我重新下载正常情况下的证书试试看

YansHJ commented 2 years ago

确保是根证书你再装

红色提示下只有一个,正常访问的情况下是有三个树枝的,我重新下载正常情况下的证书试试看

zhaodice commented 2 years ago

确实那问题可能就出在你自签名根证书有问题了……我的建议是你本地先搭,别搞远程服务器那么骚的操作,本地直接改hosts就行了不需要什么mitmproxy