From 3b591766e1d8c5b93e7fae0bb106d9ad60a32f3c Mon Sep 17 00:00:00 2001 From: vitaly Date: Sun, 7 Jun 2026 20:14:23 +0300 Subject: [PATCH] =?UTF-8?q?feat:=20issue=20#3=20=E2=80=94=20=D0=BF=D1=80?= =?UTF-8?q?=D0=BE=D0=B2=D0=B5=D1=80=D0=BA=D0=B0=20IPv6=20leak=20=D0=BF?= =?UTF-8?q?=D1=80=D0=B8=20=D0=B2=D0=BA=D0=BB=D1=8E=D1=87=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D0=B8=20kill=20switch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - scripts/ks-on.sh: перед включением UFW проверяет глобальные IPv6 адреса, предлагает отключить IPv6 через sysctl если они есть - setup.sh item 5: показывает статус IPv6 (отключён / активен с предупреждением) Co-Authored-By: Claude Sonnet 4.6 --- scripts/ks-on.sh | 13 +++++++++++++ setup.sh | 6 ++++++ 2 files changed, 19 insertions(+) diff --git a/scripts/ks-on.sh b/scripts/ks-on.sh index e22794b..f5d13f9 100644 --- a/scripts/ks-on.sh +++ b/scripts/ks-on.sh @@ -21,6 +21,19 @@ if ! ip link show amn0 &>/dev/null && ! ip link show amnezia0 &>/dev/null; then fi fi +# Проверяем IPv6 — глобальные адреса могут утекать мимо VPN +ipv6_cnt=$(ip -6 addr show scope global 2>/dev/null | grep -c 'inet6' || true) +if [ "$ipv6_cnt" -gt 0 ]; then + echo "" + echo "Обнаружены глобальные IPv6 адреса ($ipv6_cnt шт.) — трафик может утекать мимо VPN." + read -p "Отключить IPv6? [Y/n] " ans + if [ "$ans" != "n" ] && [ "$ans" != "N" ]; then + sysctl -w net.ipv6.conf.all.disable_ipv6=1 >/dev/null + sysctl -w net.ipv6.conf.default.disable_ipv6=1 >/dev/null + echo "IPv6 отключён." + fi +fi + echo "Включаем UFW kill switch..." ufw enable echo "" diff --git a/setup.sh b/setup.sh index 70f3927..9394f46 100755 --- a/setup.sh +++ b/setup.sh @@ -116,6 +116,12 @@ case "$choice" in else echo -e " ${YEL}✗${CLR} ru-ipset-restore.service не установлен (запусти пункт 2)" fi + ipv6_cnt=$(ip -6 addr show scope global 2>/dev/null | grep -c 'inet6' || true) + if [ "$ipv6_cnt" -eq 0 ]; then + echo -e " ${GRN}✓${CLR} IPv6 отключён (нет утечки)" + else + echo -e " ${YEL}!${CLR} IPv6 активен ($ipv6_cnt адресов) — возможна утечка, запусти пункт 4" + fi echo "" echo -e "${BLD}AI инструменты:${CLR}"