124 lines
3.2 KiB
Bash
Executable File
124 lines
3.2 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
echo "=== 甲骨文服务器代理中转设置 ==="
|
|
|
|
# 1. 安装 gost
|
|
echo "安装 gost..."
|
|
if ! command -v gost &> /dev/null; then
|
|
wget -O gost.gz https://github.com/ginuerzh/gost/releases/download/v2.11.5/gost-linux-amd64-2.11.5.gz
|
|
gunzip gost.gz
|
|
chmod +x gost-linux-amd64-2.11.5
|
|
sudo mv gost-linux-amd64-2.11.5 /usr/local/bin/gost
|
|
echo "gost 安装完成"
|
|
else
|
|
echo "gost 已安装"
|
|
fi
|
|
|
|
# 2. 确保 Tailscale 已安装并运行
|
|
if ! command -v tailscale &> /dev/null; then
|
|
echo "请先安装 Tailscale:"
|
|
echo "curl -fsSL https://tailscale.com/install.sh | sh"
|
|
echo "sudo tailscale up"
|
|
exit 1
|
|
fi
|
|
|
|
# 3. 获取 Tailscale IP
|
|
TAILSCALE_IP=$(tailscale ip -4)
|
|
echo "甲骨文服务器 Tailscale IP: $TAILSCALE_IP"
|
|
|
|
# 4. 创建代理配置目录
|
|
mkdir -p ~/proxy-config
|
|
cd ~/proxy-config
|
|
|
|
# 5. 创建 webshare 代理列表
|
|
cat > webshare-proxies.txt << 'EOF'
|
|
fbkjstyt:lvo4zphp2wwj@45.196.40.191:6269
|
|
fbkjstyt:lvo4zphp2wwj@130.180.228.168:6452
|
|
fbkjstyt:lvo4zphp2wwj@72.1.154.35:7926
|
|
fbkjstyt:lvo4zphp2wwj@63.141.62.186:6479
|
|
fbkjstyt:lvo4zphp2wwj@216.170.122.181:6219
|
|
fbkjstyt:lvo4zphp2wwj@192.53.67.209:5758
|
|
fbkjstyt:lvo4zphp2wwj@130.180.231.18:8160
|
|
fbkjstyt:lvo4zphp2wwj@192.53.142.239:5936
|
|
fbkjstyt:lvo4zphp2wwj@103.130.178.22:5686
|
|
fbkjstyt:lvo4zphp2wwj@216.98.254.253:6563
|
|
fbkjstyt:lvo4zphp2wwj@192.46.188.237:5896
|
|
fbkjstyt:lvo4zphp2wwj@45.56.161.56:8932
|
|
fbkjstyt:lvo4zphp2wwj@192.46.201.252:6766
|
|
fbkjstyt:lvo4zphp2wwj@45.196.50.62:6384
|
|
fbkjstyt:lvo4zphp2wwj@193.160.83.42:6363
|
|
fbkjstyt:lvo4zphp2wwj@103.130.178.234:5898
|
|
fbkjstyt:lvo4zphp2wwj@72.46.139.62:6622
|
|
fbkjstyt:lvo4zphp2wwj@72.46.139.239:6799
|
|
fbkjstyt:lvo4zphp2wwj@103.130.178.62:5726
|
|
fbkjstyt:lvo4zphp2wwj@72.46.138.21:6247
|
|
EOF
|
|
|
|
# 6. 创建启动脚本
|
|
cat > start-proxy-relay.sh << 'EOF'
|
|
#!/bin/bash
|
|
|
|
echo "启动代理中转服务..."
|
|
|
|
# 杀死之前的进程
|
|
pkill -f "gost.*:1000"
|
|
|
|
# 读取代理列表并启动
|
|
i=1
|
|
while IFS= read -r line; do
|
|
if [ $i -gt 20 ]; then break; fi
|
|
|
|
port=$((10000 + i))
|
|
|
|
# 启动 gost 中转
|
|
gost -L "socks5://0.0.0.0:$port" -F "socks5://$line" &
|
|
|
|
echo "端口 $port -> webshare $line"
|
|
|
|
i=$((i + 1))
|
|
sleep 0.1
|
|
done < webshare-proxies.txt
|
|
|
|
echo ""
|
|
echo "代理中转已启动!"
|
|
echo "Tailscale IP: $(tailscale ip -4)"
|
|
echo "监听端口: 10001-10020"
|
|
echo ""
|
|
echo "在本地使用以下命令连接:"
|
|
echo "ssh -L 20001:localhost:10001 -L 20002:localhost:10002 ... user@$(tailscale ip -4)"
|
|
echo ""
|
|
echo "或使用 gost 本地转发"
|
|
|
|
wait
|
|
EOF
|
|
|
|
chmod +x start-proxy-relay.sh
|
|
|
|
# 7. 创建系统服务(可选)
|
|
sudo tee /etc/systemd/system/webshare-proxy.service > /dev/null << EOF
|
|
[Unit]
|
|
Description=Webshare Proxy Relay Service
|
|
After=network.target tailscaled.service
|
|
|
|
[Service]
|
|
Type=simple
|
|
User=$USER
|
|
WorkingDirectory=$HOME/proxy-config
|
|
ExecStart=$HOME/proxy-config/start-proxy-relay.sh
|
|
Restart=always
|
|
RestartSec=5
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|
|
EOF
|
|
|
|
echo ""
|
|
echo "=== 设置完成 ==="
|
|
echo "现在运行: ./start-proxy-relay.sh"
|
|
echo ""
|
|
echo "或者启用系统服务:"
|
|
echo "sudo systemctl enable webshare-proxy"
|
|
echo "sudo systemctl start webshare-proxy"
|
|
echo ""
|
|
echo "Tailscale IP: $TAILSCALE_IP"
|
|
echo "代理端口: 10001-10020" |