From 1ce798ecb3ef1325f3ee71aea1f1ddd29e1406f9 Mon Sep 17 00:00:00 2001 From: ruimingchen Date: Mon, 23 Mar 2026 22:28:05 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20WARP=20=E9=9A=A7?= =?UTF-8?q?=E9=81=93=E6=97=A0=E6=B3=95=E6=AD=A3=E5=B8=B8=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 升级 wgcf 至 v2.2.30 - 移除错误的 sed 规则(仅删 DNS,保留 AllowedIPs 和 IPv6 Address) - 移除多余的 EXPOSE 1080 - IP 检测改为后台执行避免阻塞启动 --- Dockerfile | 5 +---- entrypoint.sh | 20 +++++++++----------- 2 files changed, 10 insertions(+), 15 deletions(-) diff --git a/Dockerfile b/Dockerfile index 373d5cf..d53f855 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,15 +16,12 @@ FROM alpine:latest # 仅安装必要的内核级 WireGuard 和网络控制工具 RUN apk add --no-cache wireguard-tools iptables iproute2 wget curl -# 把刚才编译好的二进制可执行文件“偷”过来 +# 打包microsocks COPY --from=builder /src/microsocks /usr/local/bin/microsocks WORKDIR /app COPY entrypoint.sh . RUN chmod +x entrypoint.sh -# 暴露标准 SOCKS5 端口 -EXPOSE 1080 - # 启动引擎 CMD ["./entrypoint.sh"] diff --git a/entrypoint.sh b/entrypoint.sh index 2c2546e..3550548 100644 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -9,25 +9,25 @@ mkdir -p /etc/wireguard # ========================================== if [ ! -f "$WG_CONF" ]; then echo "==> [MicroWARP] 未检测到配置,正在全自动初始化 Cloudflare WARP..." - + ARCH=$(uname -m) case "$ARCH" in x86_64) WGCF_ARCH="amd64" ;; aarch64) WGCF_ARCH="arm64" ;; *) echo "==> [ERROR] 不支持的架构: $ARCH"; exit 1 ;; esac - - wget -qO wgcf "https://github.com/ViRb3/wgcf/releases/download/v2.2.22/wgcf_2.2.22_linux_${WGCF_ARCH}" + + wget -qO wgcf "https://github.com/ViRb3/wgcf/releases/download/v2.2.30/wgcf_2.2.30_linux_${WGCF_ARCH}" chmod +x wgcf - + echo "==> [MicroWARP] 正在向 CF 注册设备..." ./wgcf register --accept-tos > /dev/null - + echo "==> [MicroWARP] 正在生成 WireGuard 配置文件..." ./wgcf generate > /dev/null - + mv wgcf-profile.conf "$WG_CONF" - + # 【核心安全】阅后即焚:删除注册工具和生成的账号明文文件 rm -f wgcf wgcf-account.toml echo "==> [MicroWARP] 节点配置生成成功!" @@ -38,9 +38,7 @@ fi # ========================================== # 2. 强力洗白与内核兼容性处理 (魔改 wg0.conf) # ========================================== -# 删除多余的内网 IP 路由和 DNS,让全局流量通过 wg0 -sed -i 's/^AllowedIPs.*/AllowedIPs = 0.0.0.0\/0/g' "$WG_CONF" -sed -i '/Address.*:/d' "$WG_CONF" +# 删 DNS 就足够了,删多了跑不了了 sed -i '/^DNS.*/d' "$WG_CONF" # 删除 Alpine 系统自带 wg-quick 中不兼容的路由标记 @@ -67,7 +65,7 @@ wg-quick up wg0 > /dev/null 2>&1 echo "==> [MicroWARP] 当前出口 IP 已成功变更为:" # 获取最新的 CF 溯源 IP (加入 || true 防止网络波动导致脚本退出) -curl -s https://1.1.1.1/cdn-cgi/trace | grep ip= || true +(curl -s https://1.1.1.1/cdn-cgi/trace | grep ip= || true) & # ========================================== # 4. 启动 C 语言 SOCKS5 代理服务 (带高级参数绑定)