ZOOT-Plus / ZOOT-Plus/ZootPlusBackend

关于MAA Copliot后端接口prts.maa.plus的SSL/TLS问题

Open
#175 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Kotlin
Stars
94
Forks
71
PR merge metrics
No merged PRs in 30d

Description

问题描述

使用代理访问 https://prts.plus/ 时会出现如下错误
图片

问题排查
  1. 发现问题出现在prts.maa.plus后端接口似乎没有返回结果,并且提示CORS Failed
    图片

怀疑浏览器CORS策略问题?
服务器屏蔽国外请求?
DNS国内外解析错误?
TLS版本不匹配?
本机网络环境问题?

  1. http测试发现,并无国内外请求的限制,并且所有ip都解析到8.218.106.121,同时也排除了DNS的问题
    图片

  2. 不使用代理,tcping 443端口正常访问

> tcping 8.218.106.121 443

图片

  1. 使用代理,tcping 443端口同样正常访问,说明并不是在http请求上出现问题,判断大概率是SSL相关问题

> tcping 8.218.106.121 443 -proxy-server 127.0.0.1 -proxy-port 7891

图片

  1. 不使用代理,使用curl测试,正常访问,本机当前curl的加密套件并无问题

> curl -v https://prts.maa.plus/

图片

  1. 使用代理,使用curl测试,出现错误
    schannel: failed to receive handshake, SSL/TLS connection failed
    服务器并未返回握手信息,是此台服务器对我的代理服务器的请求被阻止了吗?

> curl -v https://prts.maa.plus/ -x http://127.0.0.1:7891

图片

  1. 在服务器上,使用curl测试,访问正常,并不是代理服务器与maa服务器之间的问题。
    也就是说,问题出现在本机与代理服务器之间的通信问题,通信使用的是hysteria2协议,尝试更换协议能否解决问题?

> curl https://prts.maa.plus

图片

  1. 更换为机场的vless + xtls-rprx-vision + reality配置(懒得再搭)再次测试。发现此时能够正常访问。

> curl -v https://prts.maa.plus/ -x http://127.0.0.1:7891

图片

问题总结

个人技术能力有限,知识范围也不足,目前貌似看来问题出在hysteria2协议或者我clash核心实现的问题?但是我使用此hysteria2代理访问其他网站,使用prts.maa.plus正在使用的TLS1.3时并未出现相关问题。但是此例仍可看出prts.maa.plus仍然可能存在SSL/TLS兼容问题。
图片

补充一下测试的环境,以便复现

  • 客户端:FlClash 0.8.63 项目地址
  • 内核:mihomo(Clash.Meta)项目地址
  • proxy配置
    { name: 'name', server: ip, port: 443, sni: domain, up: 5000, down: 5000, skip-cert-verify: false, type: hysteria2, password: password }

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure against https://prts.maa.plus/ with the reported FlClash 0.8.63 and mihomo configuration, comparing direct access, hysteria2, and the working vless configuration. Use the reported curl TLS handshake failure and proxy tests to determine whether the issue is server compatibility or the proxy path. Done means identifying a reproducible cause and documenting or implementing a verified fix.

Written by the indexing model from the issue text.

Assessment

Domain
backend, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.