ykxmz 1.5.0:修复手表端 TLS 证书校验 + MTU 修复网络稳定性

被控端
- 修复 MTU 问题:夹 MSS + 路径 MTU 探测(公网可用率 48% -> 100%)
- 复用 HTTP 连接(免掉每次新建 TLS 的 30% 握手失败)
- 每分钟回头找局域网,自动切回快 400 倍的路径
- 画面心跳帧:静止时省流量,客户端仍知道流是活的
- 锁屏时给出可操作的提示

手表端
- 内置 GTS Root R4 / GlobalSign Root CA,修 SSLHandshakeException
- 连接错误翻译成人话(证书/时间/解析/超时分别提示)
- 经中转连上后用服务器报的地址刷新已配对记录
- 新增局域网连接页面、服务器延迟检测

服务器端
- 支持 chunked 请求体(修每 16 秒一次的连接错乱与大面积 502)
- 网络调优脚本 net-tune.sh(开机自动应用)
- 管理页:批量删除、网络体检、下载区
- 隧道改 HTTP/2 + 双连接

文档
- 许可协议 / 安装前必读 / 安装后须知(作者:小麦子)
This commit is contained in:
xmz7891
2026-10-06 19:01:05 +08:00
commit b62ac865ea
3195 changed files with 203292 additions and 0 deletions
+65
View File
@@ -0,0 +1,65 @@
# -*- coding: utf-8 -*-
"""把设备上的两个根证书取回本机,准备打进 APK。
证书链:xxmxxs.top <- GTS WE1 <- GTS Root R4 <- GlobalSign Root CA
廉价手表常缺 GTS Root R4,导致 "Chain validation failed"。
把这两个根内置进 APK,校验时"系统库 + 内置"任一通过即可。
"""
from __future__ import annotations
import re
import sys
from pathlib import Path
ROOT = Path(r"C:\Users\shu\Desktop\deepseekagent\LanRemote")
sys.path.insert(0, str(ROOT / "_build"))
from devssh import run # noqa: E402
TARGETS = {
"gts_root_r4.pem": "/etc/ssl/certs/GTS_Root_R4.pem",
"globalsign_root_ca.pem": "/etc/ssl/certs/GlobalSign_Root_CA.pem",
}
OUT_DIR = ROOT / "android" / "certs"
def main() -> int:
OUT_DIR.mkdir(parents=True, exist_ok=True)
ok = True
for local_name, remote_path in TARGETS.items():
code, out, err = run(f"cat {remote_path}", timeout=60)
text = out or ""
# 去掉可能混进来的 shell 提示
start = text.find("-----BEGIN CERTIFICATE-----")
end = text.find("-----END CERTIFICATE-----")
if start < 0 or end < 0:
print(f" [失败] {local_name}: 没拿到 PEM")
ok = False
continue
end += len("-----END CERTIFICATE-----")
pem = text[start:end].strip() + "\n"
# 校验一下是不是合法证书
b64 = "".join(re.findall(
r"-----BEGIN CERTIFICATE-----(.*?)-----END CERTIFICATE-----",
pem, re.S))
b64 = re.sub(r"\s+", "", b64)
target = OUT_DIR / local_name
target.write_text(pem, encoding="ascii", newline="\n")
print(f" {local_name}: {len(b64)} 字符 base64, "
f"{target.stat().st_size} 字节")
# 通过 openssl 复核主题
code, out2, _err = run(
f'echo "{pem}" | openssl x509 -noout -subject -issuer 2>/dev/null',
timeout=60)
for line in (out2 or "").strip().splitlines()[:2]:
print(f" {line.strip()}")
return 0 if ok else 1
if __name__ == "__main__":
sys.exit(main())