Files
ykxmz/_build/verify_downloads.sh
T
xmz7891 7f267dd900 ykxmz 1.5.0锛氭墜琛ㄧ TLS 璇佷功鍏煎 + 涓夌鍒嗗紑鎵撳寘 + 涓嬭浇鍖?
鎵嬭〃绔?- 鍐呯疆 GTS Root R4 / GlobalSign Root CA
  淇?SSLHandshakeException: Chain validation failed
  锛堝粔浠锋墜琛ㄧ郴缁熸牴璇佷功搴撳父缂?GTS Root R4锛?- 杩炴帴閿欒缈昏瘧鎴愪汉璇濓細璇佷功 / 鏃堕棿 / 瑙f瀽 / 瓒呮椂鍒嗗埆缁欐彁绀?- 缁忎腑杞繛涓婂悗鐢ㄦ湇鍔″櫒鎶ョ殑鍦板潃鍒锋柊宸查厤瀵硅褰曪紙鍘熸潵涓€鐩存樉绀烘棫 IP锛?- 鐗堟湰鍙?1.3.0 -> 1.5.0锛圓ndroidManifest 涔嬪墠婕忔敼浜嗭級

鏈嶅姟鍣ㄧ
- 鏀寔 chunked 璇锋眰浣擄細淇瘡 16 绉掍竴娆$殑杩炴帴閿欎贡涓庡ぇ闈㈢Н 502
- 缃戠粶璋冧紭 net-tune.sh锛氬す MSS 1400 + 璺緞 MTU 鎺㈡祴
  锛堝叕缃戝彲鐢ㄧ巼 48% -> 100%锛屽疄娴?15 鍒嗛挓 180/180锛?  鍋氭垚寮€鏈烘湇鍔?lanremote-nettune.service锛屽苟浼氳嚜鍔ㄩ噸寤洪毀閬?- 鏂板涓嬭浇鍖猴細GET /v1/downloads 鍒楄〃 + GET /download/<鏂囦欢>
  鍙厑璁哥櫧鍚嶅崟鍚庣紑銆佷弗鏍兼牎楠屾枃浠跺悕锛堟尅鐩綍绌胯秺锛?  绠$悊椤靛姞涓嬭浇鍗$墖
- 闅ч亾鏀?HTTP/2 + 鍙岃繛鎺ワ紙QUIC 鍦ㄨ繖鏉$嚎璺笂鍙敤鐜囧彧鏈?48%锛?- 缃戠粶浣撴銆佹壒閲忓垹闄よ澶?
鎵撳寘鏂瑰紡鍙樻洿
- 鍘熸潵鏄笁涓儴鍒嗗悎鎴愪竴涓?zip锛岀幇鍦?*鍒嗘垚涓変釜鐙珛浜х墿**锛?    ykxmz-agent-1.5.0.zip    琚帶绔?    ykxmz-server-1.5.0.zip   鏈嶅姟鍣ㄧ
    ykxmz-watch-1.5.0.apk    鎺у埗绔紙鐩存帴缁?APK锛屼笉鎵?zip锛?  涓変釜鍖?鏂囦欢閮藉甫涓婅鍙崗璁?/ 瀹夎鍓嶅繀璇?/ 瀹夎鍚庨』鐭?
鏂囨。
- 璁稿彲鍗忚 / 瀹夎鍓嶅繀璇?/ 瀹夎鍚庨』鐭ワ紙浣滆€咃細灏忛害瀛愶級
2026-10-06 19:08:02 +08:00

55 lines
1.9 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# 验证下载区能用(本地 + 公网)。
set -u
BASE=http://127.0.0.1:8080
PUB=https://relay.xxmxxs.top
UA='LanRemote/1.4.0'
echo "===== 1. 本地列出下载文件 ====="
curl -s --max-time 10 "$BASE/v1/downloads" | python3 -m json.tool 2>/dev/null \
| head -30 || echo " 读不到"
echo
echo "===== 2. 本地下载(只看 HTTP 码和大小)====="
for f in ykxmz-watch-1.5.0.apk ykxmz-server-1.5.0.zip ykxmz-agent-1.5.0.zip; do
info=$(curl -s --max-time 20 -o /tmp/dl.bin -w '%{http_code} %{size_download} %{content_type}' \
"$BASE/download/$f" 2>/dev/null)
printf " %-32s %s\n" "$f" "$info"
done
echo
echo "===== 3. 公网列出(走隧道)====="
curl -s --max-time 20 -H "User-Agent: $UA" "$PUB/v1/downloads" \
| head -c 300
echo
echo
echo "===== 4. 公网下载 APK 头几个字节(验证真的能下)====="
code=$(curl -s --max-time 40 -o /tmp/apk_pub.bin -w '%{http_code}' \
-H "User-Agent: $UA" "$PUB/download/ykxmz-watch-1.5.0.apk" 2>/dev/null)
size=$(stat -c %s /tmp/apk_pub.bin 2>/dev/null || echo 0)
echo " HTTP $code,下载 $size 字节"
echo -n " 是不是合法 APK(zip 头 PK): "
head -c 2 /tmp/apk_pub.bin | grep -q 'PK' && echo "是 ✓" || echo "不是 ✗"
echo
echo "===== 5. 安全:目录穿越要被挡住 ====="
for bad in "../relay.py" "..%2Frelay.py" "relay.py" "x.sh"; do
code=$(curl -s --max-time 10 -o /dev/null -w '%{http_code}' \
"$BASE/download/$bad" 2>/dev/null)
printf " %-20s HTTP %s\n" "$bad" "$code"
done
echo
echo "===== 6. 管理页有没有下载卡片 ====="
KEY=$(cat /root/lanremote-relay/data/admin_key.txt 2>/dev/null)
for needle in 'id=dlPanel' '/v1/downloads' '/download/'; do
if curl -s --max-time 10 -H "X-Admin: $KEY" "$BASE/" 2>/dev/null \
| grep -q "$needle"; then
echo " ✓ $needle"
else
echo " ✗ $needle"
fi
done