Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam wszystkich
Szukam pomocy w poprawnej konfiguracji która zapobiegnie wyciekowi ip
Wbudowany w aplikacje nordvpn kilswitch zapobiega przpadkowemu rozłączeniu , ale już nie działa gdy użytkownik rozłączy się z vpn'em lub podczas łączenia się z inną lokalizacją.
Dodatkowo aplikacja nordvpn wyłącza automatycznie ufw i uaktywnia swój firewall wbudowany w apke podczas połączenia.
Chciałbym mieć tak skonfigurowany system żeby można było połączyć sie z internetem tylko i wyłącznie poprzez vpn
A przy próbie połączenia jak jesteśmy rozłączeni z vpn'em żeby ruch internetowy był zablokowany
Czy jest to możliwe i jak to osiągnąć
DEBIAN 10 x64
Ostatnio edytowany przez kobcio (2019-10-30 14:51:35)
Offline
Po pierwsze:
Zaprzyjaźnij się z iptables lub nftables zamiast ufw, to bardzo ułatwi zrozumienie istoty problemu.
Po drugie ta appka nordvpon jest chyba spartolona, skro ingeruje w firewall, chociaż powinna zmienić routing default a firewalla nie ruszać.
Rzuć okiem tutaj - opis konfiguracji OpenVPN w Debianie:
https://wiki.debian.org/OpenVPN
Offline
Obecnie trza myśleć za ludzi, dlatego też nie dziwi mnie fakt, że ta appka od vpn manipuluje FW.
Problem w tym, by zadziałał VPN to potrzebne jest zwykłe połączenie sieciowe -- inaczej się nie połączysz z providerem VPN. Można natomiast sobie zrobić taki poniższy filtr reguł:
#!/usr/sbin/nft -f flush ruleset create table inet filter create chain inet filter INPUT { type filter hook input priority 0; policy drop; } create chain inet filter OUTPUT { type filter hook output priority 0; policy drop; } create chain inet filter state-check add rule inet filter state-check ct state { established, related } counter accept add rule inet filter state-check ct state invalid counter drop add rule inet filter INPUT counter jump state-check add rule inet filter INPUT iifname "lo" counter accept add rule inet filter INPUT counter drop add rule inet filter OUTPUT counter jump state-check add rule inet filter OUTPUT oifname "lo" counter accept add rule inet filter OUTPUT meta l4proto icmp counter counter accept add rule inet filter OUTPUT ip6 nexthdr icmpv6 counter counter accept add rule inet filter OUTPUT oifname "tun*" counter accept add rule inet filter OUTPUT tcp dport { 1194 } ip daddr 198.252.153.226 counter accept comment "riseup" add rule inet filter OUTPUT counter drop
W INPUT w zasadzie cała komunikacja jest zablokowana poza przepuszczaniem pakietów z nawiązanych połączeń + przepuszczony ruch na pętli zwrotnej. W OUTPUT jest dokładnie to samo, z tym że widnieją tam jeszcze regułki od protokołu ICMP (dla łatwiejszego debugowania). Kolejna reguła (ta oifname "tun*") ma za zadanie przepuścić nowe połączenia ale jedynie na interfejs VPN, w tym przypadku tun0. Przedostatnia reguła zaś ma na celu umożliwić nawiązanie połączenia z serwerem VPN -- to połączenie jest nawiązywane przed zestawieniem tunelu VPN i puszczeniem całego ruchu przez niego. Dlatego też określony jest port, protokół i adres ip.
Po załadowaniu tych reguł dobrze jest jeszcze wyczyścić tablicę conntrack'a:
# conntrack -F
Przy położonym VPN, komunikacja ze światem nie jest możliwa (działa jedynie ping, jak komuś przeszkadza, może usunąć stosowne reguły). Net pojawia się w momencie podpięcia VPN. Osobno trzeba podejść jeszcze do kwestii adresacji kompa od ISP -- chodzi o protokół DHCP, najlepiej jest skonfigurować sobie adresację statycznie.
Ostatnio edytowany przez morfik (2019-10-30 20:18:21)
Offline
Dziękuje za wyczerpującą odpowiedź morfik i Jacek
1 @morfik kod działa do chwili restartu, po restarcie sytemu mam comunikat z aplikacji "Nie udało się pobrać danych Twojego konta. Sprawdż połączenie internetowe" rozwiazaniem jest #nft flush ruleset i wprowadzenie od nowa regół. Ale tak by trzeba by na okrągło.
Pytanie jak sprawdzić pod jaki adres i port próbuje zalogować się apka by sprawdzić dane konta?
# netstat -tn 2>/dev/null pokazuje tylko aktywne połącznia , ale jak sprawdzić historie?
2
Załóżmy że chcialibyśmy zablokować ruch sieciowy dla Firefoxa i LibreOffice
Rozumiem że w tym przypadku to komplikuje sprawę?
3
Czymóglbyś wyjaśnić a wlaściwie napisać jak usunąć ping, prosze ?
4
Znalazłem coś takiego, nie wiem na ile to się różni od twoich regół https://mcol.xyz/2019/05/nftables-as-a-tor-and-vpn-killswitch.html
5 Jak byś mógł pokierować gdzie mam szukać jakiegoś prostego poradnika najlepiej po polsku co oznaczają poszczególne komendy?
6 Czy GUFW czyli iptable moze współistnieć z nftables?
Pozdrawiam
Ostatnio edytowany przez kobcio (2019-11-06 20:19:32)
Offline