fix: kill switch не блокировал не-.ru трафик + Amnezia не могла подключиться

- ru-bypass.sh: добавлен ufw default deny outgoing (раньше нигде не выполнялся)
- ru-bypass.sh: добавлен ufw allow out on amn0 (разрешён трафик через VPN)
- ru-bypass.sh: поддержка AMNEZIA_SERVER — IP добавляется в ipset и маршруты
- ks-on.sh: default deny + allow amn0 при восстановлении kill switch
- setup.sh: меню запрашивает/сохраняет/передаёт AMNEZIA_SERVER
- test_network.sh: DEV читается из конфига вместо жёсткого wl[pi]

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Виталий Никитенко
2026-06-08 06:51:48 +03:00
parent 5599194d92
commit 398e57c648
4 changed files with 44 additions and 8 deletions

View File

@@ -26,7 +26,13 @@ check() {
echo "=== 1. Проверка окружения ==="
check "Amnezia интерфейс (amn0) существует" "amn0" "ip link show amn0 2>/dev/null"
check "wlp1s0 wifi интерфейс" "wlp1s0" "ip link show wlp1s0 2>/dev/null"
# Определяем DEV из конфига или из default route
if [ -f "$HOME/.config/ai-setup/network_$(hostname).conf" ]; then
source "$HOME/.config/ai-setup/network_$(hostname).conf"
fi
DEV="${DEV:-$(ip route show default 2>/dev/null | awk '/default/ {print $5; exit}')}"
echo " DEV=$DEV (из конфига)"
IPSET_INFO=$(sudo ipset list ru-direct 2>/dev/null)
if [ -n "$IPSET_INFO" ]; then
@@ -44,7 +50,7 @@ else
fi
echo ""
echo "=== 2. Маршрутизация .ru vs не-.ru ==="
check ".ru IP ($RU_IP) → НЕ через amn0" "wl[pi]" "ip route get $RU_IP 2>/dev/null"
check ".ru IP ($RU_IP) → НЕ через amn0" "$DEV" "ip route get $RU_IP 2>/dev/null"
check "8.8.8.8 → через amn0" "amn0" "ip route get 8.8.8.8 2>/dev/null"
check "1.1.1.1 → через amn0" "amn0" "ip route get 1.1.1.1 2>/dev/null"
@@ -74,7 +80,7 @@ check "NM dispatcher есть" "99-ru-bypass" "ls -la /etc/NetworkManager/dispat
echo ""
echo "=== 6. Краевые случаи ==="
check "api.anthropic.com → amn0" "amn0" "ip route get $(dig +short api.anthropic.com A | head -1) 2>/dev/null"
check "ya.ru → НЕ через amn0 (прямо)" "wl[pi]" "ip route get $(dig +short ya.ru A | head -1) 2>/dev/null"
check "ya.ru → НЕ через amn0 (прямо)" "$DEV" "ip route get $(dig +short ya.ru A | head -1) 2>/dev/null"
echo ""
echo "=== 7. Geo: внешние IP ==="