#!/bin/bash # ks-on.sh — включить/восстановить kill switch UFW # Перед этим подключи Amnezia через её GUI, иначе интернет будет полностью заблокирован. if [ "$(id -u)" != "0" ]; then echo "Запускай от root: sudo bash $0" exit 1 fi echo "Проверяем что Amnezia поднята..." if ! ip link show amn0 &>/dev/null && ! ip link show amnezia0 &>/dev/null; then echo "" echo "ВНИМАНИЕ: интерфейс amn0/amnezia0 не найден!" echo "Похоже Amnezia не подключена." echo "Если включить UFW сейчас — интернет полностью заблокируется." echo "" read -p "Всё равно включить kill switch? [y/N] " CONFIRM if [ "$CONFIRM" != "y" ] && [ "$CONFIRM" != "Y" ]; then echo "Отменено." exit 0 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 "" echo "Готово. Kill switch активен." echo "" ufw status | head -3