f
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
#!/bin/bash
|
||||
# OpenVPN 连通后拉起 SOCKS5;仅服务戎行内网代理。
|
||||
# OpenVPN 连通后拉起 SOCKS5(dante/sockd);仅服务戎行内网代理。
|
||||
set -euo pipefail
|
||||
|
||||
VPN_DIR="${VPN_DIR:-/vpn}"
|
||||
@@ -48,9 +48,15 @@ for i in $(seq 1 90); do
|
||||
sleep 1
|
||||
done
|
||||
|
||||
# 前台跑 microsocks,进程退出则容器退出;同时监控 openvpn
|
||||
microsocks -i "$SOCKS_HOST" -p "$SOCKS_PORT" &
|
||||
SOCKS_PID=$!
|
||||
# 生成 dante 配置并后台启动 sockd
|
||||
sed "s/__SOCKS_PORT__/${SOCKS_PORT}/g" /etc/sockd.conf.template > /etc/sockd.conf
|
||||
sockd -f /etc/sockd.conf -D
|
||||
SOCKS_PID="$(pidof sockd | awk '{print $1}')"
|
||||
if [ -z "${SOCKS_PID}" ]; then
|
||||
echo "[rongxing-vpn] sockd 启动失败"
|
||||
exit 1
|
||||
fi
|
||||
echo "[rongxing-vpn] SOCKS5 已监听 :${SOCKS_PORT} (pid=${SOCKS_PID})"
|
||||
|
||||
cleanup() {
|
||||
kill "$SOCKS_PID" 2>/dev/null || true
|
||||
|
||||
Reference in New Issue
Block a user