Files
ai-setup/home-configs/network/ru-direct-undo.sh
vitaly 17c456ed4f feat: добавить скрипты управления сетью и kill switch
- ks-off.sh — временно отключить UFW kill switch перед сёрфингом без VPN
- ks-on.sh — восстановить kill switch (с проверкой что amn0 поднят)
- ru-direct.sh — роутинг всех российских IP напрямую через провайдера, минуя Amnezia
- ru-direct-undo.sh — откат ru-direct.sh, возврат к "всё через VPN"

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 11:44:40 +03:00

66 lines
2.8 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# ru-direct-undo.sh — Откат ru-direct.sh, возврат к состоянию "всё через Amnezia"
# Run as root: sudo bash ru-direct-undo.sh
set -euo pipefail
IFACE="wlp1s0"
GATEWAY="192.168.1.1"
NFT_TABLE="ru_direct"
CACHE_FILE="/var/cache/ru_ips.txt"
if [ "$(id -u)" != "0" ]; then
echo "Запускай от root: sudo bash $0"
exit 1
fi
# ── 1. Удалить nftables таблицу ────────────────────────────────────────────
echo "==> Удаляем nftables таблицу $NFT_TABLE..."
if nft delete table inet "$NFT_TABLE" 2>/dev/null; then
echo " Удалено"
else
echo " Таблицы не было (или уже удалена)"
fi
# ── 2. Удалить маршруты через wlp1s0 ──────────────────────────────────────
echo "==> Удаляем маршруты через $IFACE..."
if [ -f "$CACHE_FILE" ]; then
REMOVED=0
while IFS= read -r subnet; do
if ip route del "$subnet" via "$GATEWAY" dev "$IFACE" 2>/dev/null; then
(( REMOVED++ ))
fi
done < "$CACHE_FILE"
echo " Удалено маршрутов: $REMOVED"
else
echo " Кеш $CACHE_FILE не найден, маршруты удалим по-другому..."
# Удаляем все маршруты через wlp1s0, кроме локальной подсети
ip route show dev "$IFACE" | awk '$1 !~ /^192\.168\./ && $1 != "default" {print $1}' | \
while read subnet; do
ip route del "$subnet" dev "$IFACE" 2>/dev/null && echo " del $subnet" || true
done
fi
# ── 3. Остановить и удалить systemd-сервис ─────────────────────────────────
echo "==> Отключаем systemd-сервис..."
systemctl stop ru-direct.service 2>/dev/null || true
systemctl disable ru-direct.service 2>/dev/null || true
rm -f /etc/systemd/system/ru-direct.service
systemctl daemon-reload
echo " Сервис удалён"
# ── 4. Удалить файлы ───────────────────────────────────────────────────────
rm -f /usr/local/bin/ru-direct.sh
rm -f "$CACHE_FILE"
echo "==> Файлы удалены"
echo ""
echo "==> Откат завершён. Всё как было — весь трафик через Amnezia."
echo ""
echo "Если что-то в браузере не переключилось — перезапусти его."
echo "Или перезагрузи систему для полной чистоты."