All checks were successful
Build, Push and Redeploy Docker Image / build-and-push (push) Successful in 5m43s
44 lines
1.2 KiB
Bash
44 lines
1.2 KiB
Bash
#!/bin/sh
|
|
|
|
SOCKS_HOST=${SOCKS_IP:-192.168.31.240}
|
|
|
|
# Wait for SOCKS proxy to be ready
|
|
echo "Waiting for SOCKS proxy..."
|
|
until nc -z "$SOCKS_HOST" 1080; do
|
|
echo "SOCKS proxy not ready yet, waiting..."
|
|
sleep 5
|
|
done
|
|
echo "SOCKS proxy is ready!"
|
|
|
|
# Start redsocks
|
|
redsocks -c /etc/redsocks.conf &
|
|
sleep 2
|
|
|
|
# создать/очистить цепочку
|
|
iptables -t nat -N REDSOCKS 2>/dev/null || true
|
|
iptables -t nat -F REDSOCKS
|
|
|
|
# гарантированно первой в OUTPUT
|
|
iptables -t nat -D OUTPUT -p tcp -j REDSOCKS 2>/dev/null || true
|
|
iptables -t nat -I OUTPUT 1 -p tcp -j REDSOCKS
|
|
|
|
# исключения
|
|
iptables -t nat -A REDSOCKS -d 127.0.0.0/8 -j RETURN
|
|
iptables -t nat -A REDSOCKS -d 192.168.0.0/16 -j RETURN
|
|
iptables -t nat -A REDSOCKS -d 10.0.0.0/8 -j RETURN
|
|
iptables -t nat -A REDSOCKS -d 172.16.0.0/12 -j RETURN
|
|
# (по желанию) исключить сам socks-хост точечно:
|
|
iptables -t nat -A REDSOCKS -d "$SOCKS_HOST" -p tcp --dport 1080 -j RETURN
|
|
|
|
# редирект всего остального tcp
|
|
iptables -t nat -A REDSOCKS -p tcp -j REDIRECT --to-ports 12345
|
|
|
|
N8N_BIN="/usr/local/bin/n8n"
|
|
|
|
if [ ! -x "$N8N_BIN" ]; then
|
|
echo "n8n binary not found at $N8N_BIN"
|
|
exit 1
|
|
fi
|
|
|
|
# Start n8n
|
|
exec su-exec node "$N8N_BIN" start |