Szukam firewalla


(Troll z jaskini) #1

Szukam firewalla, najlepiej z GUI, który pozwoli mi w banalny, szybki sposób zablokować dostęp do internetu wybranej aplikacji np. WINE. A jeśli nikt nie zna takich, to może spróbujecie mi chociaż napisać jak krok po kroku do iptables dodać regułę blokowania dla konkretnej aplikacji np. na przykładzie firefoxa? Byłbym wdzięczny.


(bachus) #2

Hmmm, ten firewall działa na portach/adresach IP a nie na jakiejś głębokiej inspekcji pakietów… Jest to do ogarnięcia, ale dziwaczne podejście do firewalla. Jak by mi zależało w ten sposób jak Ty chcesz:

  1. utworzył bym grupę “blokowanie_internetu”

    groupadd blokowanie_internetu

  2. utworzenie pod to użytkownika “brak_internetu”, dodanego do grupy “brak_internetu”:

    useradd -g brak_internetu brak_internetu

Utworzenie skryptu “brak_internetu”:

touch /home/brak_internetu/.local/bin/brak_internetu

W skrypcie wpis:

#!/bin/bash
sg brak_internetu "$1"

Danie uprawnień do uruchamiania:

chmod 755 /home/brak_internetu/.local/bin/brak_internetu

No i teraz iptables - wszystko co wychodzi spod “brak_internetu” jest blokowane:

iptables -A OUTPUT -m owner --gid-owner brak_internetu -j DROP

Uruchoemienie firefoxa z opcją blokowania internetu:

brak_internetu "firefox"

Nie wiem, czy o to Ci chodziło, ale ja trochę inaczej rozumiem firewall.


(jajecpl) #3

Właśnie, dziwne podejście do firewalla :slight_smile: Z GUI to GUFW , a potem odblokowujesz co potrzebne (dużo wbudowanych reguł).


(Troll z jaskini) #4

tzn. w tym GUFW można zrobić białą listę programów, które będą miały pozwolenie na net, czy mówisz o czymś innym, o zabawie w IP i porty? Bo byłoby wygodnie mieć domyślnie blokowanie netu wszystkiemu i dodawać sobie tylko wybrane programy do białej listy.


(jajecpl) #5

domyślnie możesz zablokować wszystko, dopuszczasz tylko to co potrzebujesz…niech to się nazywa Biała lista :slight_smile: Samba, Cups, poczta są wbudowane reguły…


(Troll z jaskini) #6

i jak wygląda dodanie programu do białej listy? Np. pobiorę program o nazwie “Wykrywacz Gumisiów”, reguły gotowej dla tego programu nie będzie (w sensie, że z listy wybiorę sobie), a to jest linux, tam chyba nie można wskazać pliku (odpowiednik pliku *.exe) by mu na neta pozwalał? Dlatego pytam jak to wygląda w praktyce wszystko.


(saitoh) #7

Widać, że masz jakieś dziwne nawyki z Windowsa. Iptables, tak jak normalne firewalle, służy do filtrowania pakietów, a nie do powielania wynalazków służących do przykrywania nieistniejącej polityki bezpieczeństwa Windowsów.

Pisząc krótko: zapora nie służy do tego.

Użyj dla danej aplikacji profilu AppArmora ( -network-rules), SELinuksa, lub  grsecurity/RBAC.

https://en.wikibooks.org/wiki/Grsecurity/The_RBAC_System

Masz jeszcze wszelkie jaile, chrooty, sandobksy, kontenery, wirtualizacje i pewnie jeszcze kilkadziesiąt innych narzędzi.

 


(Troll z jaskini) #8

A która z tych wszystkich rzeczy będzie najprostsza? W windowsie gdy uruchamiamy programy, to firewalle dowolne wyświetlają alert (podczas którego blokują net aplikacji) i pytają użytkownika co zrobić i czy zapamiętać regułę. Dodatkowo windowsowe firewalle pozwalają ręcznie dodawać reguły dla plików exe i innych i tam można bawić się w zakres ip, zakres portów, protokół, strefa sieciowa, mac i w inne rzeczy. Wszystko jest bardzo proste, wręcz banalne. Na windowsy też istnieje sandboxie i inne piaskownice, można je ustawić banalnie by neta blokowały, a każdy program można odpalić klikając na jego ikonie prawym przyciskiem myszy i wybierając Uruchom w Sandboxie (lub w innej piaskownicy). Banalne. (Można nawet stworzyć skrót w sekundę i odpalenie z niego programu, odpali go w piaskownicy).

Szukam na linuxa również tak nieskomplikowanych sposobów na odpalanie programów w takie sposoby, tak bym nie musiał google używać by wyszukać 200 poleceń by zrobić jedną, banalną (z windy) rzecz na linuxie. Jeśli jest jakaś prosta rzecz to proszę napisz o niej i byłbym wdzięczny gdybyś napisał krótką instrukcję (przypuszczam, że linux jest bardziej dla masochistów i odpalenie programu w piaskownicy nie ograniczy się do kliknięcia prawym przyciskiem myszy, a będzie trzeba ustawiać 200 rzeczy, robić 200 grup i 200 użytkowników, a później pisać skrypt by odpalać nim coś).

Nie odczytuj mojego postu źle, bo nie jestem przeciwnikiem linuxa i kibicuję mu by rozwijał się bardziej, ale jednocześnie wiem, że wiele banalnych rzeczy z windy, na linuxie jest bardziej skomplikowanych i to potrafi zniechęcać zwykłych ludzi. Mam nadzieję, że chociaż jeden ze sposobów twoich okaże się dość prosty.

Dzięki za poświęcony mi czas.

 

btw. na androida jest banalny w obsłudze firewall https://play.google.com/store/apps/details?id=dev.ukanth.ufirewall


(saitoh) #9

Linux to zupełnie inny system i rzeczy banalne na Windowsie nigdy nie będą banalne na Linuksie. W drugą stronę jest identycznie. Nie ma co rozdzierać szat. Każdy używa najwygodniejszych dla siebie rzeczy.

200 rzeczy, 200 grup i użytkowników się robi wtedy, gdy bezmyślnie się kopiuje praktyki z innego systemu. Przykładowo wcześniejsza porada użytkownika bachus. Poczytaj do czego służy linuksowa zapora iptables/Netfilter. Na pewno nie do monitorowania aplikacji.

https://pl.wikipedia.org/wiki/Netfilter

https://en.wikipedia.org/wiki/Iptables

Najbardziej banalna opcja:

firejail --net=none nazwa_programu

Dorobisz sobie aktywator i masz dostęp z poziomu myszki. Nie sprawdzałem tego narzędzia, ale dokumentacja jest dosyć prosta. Polecam lekturę manuala by nie błądzić z przyzwyczajeniami z Windowsa. Profile AppArmora też nie są zbyt skomplikowane.

Bardziej wypasione narzędzia to SELinux lub RBAC, ale to już ciężki kaliber i bardzo zaawansowana konfiguracja. 

W Androidzie działa to zupełnie inaczej i imho bez sensu. Każdy program ma uprawnienia innej grupy/użytkownika. Każde uprawnienie to inna grupa i gdy jakiś program wymaga jakichś wygórowanych uprawnień (a takich są setki lub tysiące) to ma dostęp do całego systemu i nie bardzo jest co z tym zrobić.