Firehol: iptables dla ludzi (Łuk)

Przede wszystkim wszystkie kredyty trafiają do @Yukiteruamano., ponieważ ten post jest oparty na Tutorial opublikowałeś na forum. Różnica polega na tym, że zamierzam się na tym skupić łuk, chociaż prawdopodobnie będzie działać w innych dystrybucjach opartych na systemd.

Co to jest Firehol?

Ognisko, to mała aplikacja, która pomaga nam zarządzać firewallem zintegrowanym z jądrem i jego narzędziem iptables. Firehol nie ma interfejsu graficznego, całą konfigurację należy przeprowadzić za pomocą plików tekstowych, ale mimo to konfiguracja jest nadal prosta dla początkujących użytkowników lub potężna dla tych, którzy szukają zaawansowanych opcji. Wszystko, co robi Firehol, to maksymalne uproszczenie tworzenia reguł iptables i włączenie dobrego firewalla dla naszego systemu.

Instalacja i konfiguracja

Firehol nie znajduje się w oficjalnych repozytoriach Arch, więc będziemy się odwoływać AUR.

yaourt -S firehol
Następnie przechodzimy do pliku konfiguracyjnego.

sudo nano /etc/firehol/firehol.conf

I dodajemy tam zasady, których możesz użyć jesteś.

Aktywuj Firehol przy każdym uruchomieniu. Całkiem proste dzięki systemd.

sudo systemctl enable firehol

Zaczęliśmy Firehol.

sudo systemctl start firehol

Na koniec sprawdzamy, czy reguły iptables zostały poprawnie utworzone i załadowane.

sudo iptables -L

Wyłącz IPv6

Ponieważ firehol nie radzi sobie ip6tables a ponieważ większość naszych połączeń nie obsługuje IPv6, zalecam wyłączenie go.

En łuk dodajemy ipv6.disable = 1 do wiersza jądra w pliku / etc / default / grub


...
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT="rw ipv6.disable=1"
GRUB_CMDLINE_LINUX=""
...

Teraz regenerujemy plik grub.cfg:

sudo grub-mkconfig -o /boot/grub/grub.cfg

En Debian wystarczy z:

sudo echo net.ipv6.conf.all.disable_ipv6=1 > /etc/sysctl.d/disableipv6.conf


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.

  1.   Felipe powiedział

    Nie rozumiem. Czy postępujesz zgodnie z samouczkiem i masz już uruchomioną zaporę ogniową i zablokowałeś wszystkie połączenia? Inna sprawa Samouczek Arch jest skomplikowany, na przykład nigdy nie korzystałem z firewalla sudo ani yaourt. Jednak jest to zrozumiałe. A może ktoś nowy napisze do Ciebie i wyskoczy błąd. W przypadku Manjaro jest to bardziej poprawne.

    1.    jukiteru powiedział

      Jak mówisz @felipe, postępując zgodnie z samouczkiem i umieszczając w pliku /etc/firehol/firehol.conf zasady podane przez @cookie w wklejeniu, będziesz miał już prostą zaporę ogniową do ochrony systemu na podstawowym poziomie. Ta konfiguracja działa dla każdej dystrybucji, w której możesz umieścić Firehol, z osobliwością każdej dystrybucji obsługuje ona swoje usługi na różne sposoby (Debian przez sysvinit, Arch z systemd), a jeśli chodzi o instalację, wszyscy wiedzą, co mają, w Arch musisz użyj repozytoriów AUR i yaourt, w Debianie wystarczą te oficjalne, więc w wielu innych wystarczy przeszukać repozytoria i dostosować polecenie instalacji.

  2.   ci powiedział

    dzięki, rozumiem.

  3.   Config powiedział

    Wszystko to jest bardzo dobre ... ale brakuje najważniejszej rzeczy; Musisz wyjaśnić, jak powstają reguły !!, co one oznaczają, jak tworzyć nowe ... Jeśli nie jest to wyjaśnione, to, co włożysz, jest mało przydatne: - /

    1.    jukiteru powiedział

      Tworzenie nowych reguł jest proste, dokumentacja firehol jest przejrzysta i bardzo precyzyjna pod względem tworzenia reguł niestandardowych, więc trochę przeczytanie ułatwi Ci dostosowanie i dostosowanie do własnych potrzeb.

      Myślę, że pierwszym powodem umieszczenia na forum postu @cookie, takiego jak mój, było zapewnienie użytkownikom i czytelnikom narzędzia, które pozwala im zapewnić trochę większe bezpieczeństwo komputerom, a wszystko to na podstawowym poziomie. Reszta pozostaje bez zmian, aby dostosować się do swoich potrzeb.

    2.    ciastko powiedział

      Jeśli przeczytasz link do samouczka Yukiteru, zdasz sobie sprawę, że celem jest upublicznienie aplikacji i konfiguracja podstawowego firewalla. Wyjaśniłem, że mój post był tylko kopią skoncentrowaną na Arch.

  4.   Maakub powiedział

    A to jest „dla ludzi”? o_O
    Wypróbuj Gufw na Arch: https://aur.archlinux.org/packages/gufw/ >> Kliknij Status. Lub ufw, jeśli wolisz terminal: sudo ufw włącz

    Jesteś już chroniony, jeśli jesteś zwykłym użytkownikiem. To jest „dla ludzi” 🙂

    1.    pełen życia powiedział

      Firehol to naprawdę front-end dla IPTables i jeśli porównamy go z tym drugim, jest całkiem ludzki 😀

    2.    jukiteru powiedział

      Uważam ufw (Gufw to tylko jego interfejs) za złą opcję pod względem bezpieczeństwa. Powód: dla większej liczby reguł bezpieczeństwa, które napisałem w ufw, nie mogłem uniknąć tego, że w testach mojego firewalla zarówno przez sieć, jak i tych przeprowadzonych przez nmap, usługi takie jak avahi-daemon i exim4 wyglądałyby na otwarte i tylko Atak „stealth” wystarczył, aby poznać najmniejsze cechy mojego systemu, jądra i usług, które uruchamiał, coś, co nie zdarzyło mi się przy użyciu fireholu lub zapory ogniowej arno.

      1.    giskard powiedział

        Cóż, nie wiem jak wy, ale jak napisałem powyżej, używam Xubuntu i mój firewall działa z GUFW i przeszedłem WSZYSTKIE testy linku, które autor umieścił bez problemów. Wszystko w ukryciu. Nic nie jest otwarte. Z mojego doświadczenia wynika, że ​​ufw (a zatem gufw) są dla mnie świetne. Nie jestem krytyczny wobec używania innych trybów kontroli zapory, ale gufw działa bezbłędnie i daje świetne wyniki w zakresie bezpieczeństwa.

        Jeśli masz jakieś testy, które Twoim zdaniem mogą wyrzucić luki w moim systemie, powiedz mi, jakie one są, a ja z przyjemnością je tutaj przeprowadzę i podam wyniki.

        1.    jukiteru powiedział

          Poniżej komentuję coś na temat ufw, gdzie powiem, że błąd zobaczyłem w 2008 roku na Ubuntu 8.04 Hardy Heron. Co oni już poprawili? Najprawdopodobniej tak jest, więc nie ma powodu do zmartwień, ale mimo to nie oznacza to, że błąd tam był i mogłem to udowodnić, chociaż śmierć nie była złą rzeczą, zatrzymałem tylko demony avahi-daemon i exim4, i problem już rozwiązany. Najdziwniejsze jest to, że tylko te dwa procesy miały problem.

          Wspomniałem o tym jako osobistą anegdotę i taką samą opinię wyraziłem, mówiąc: «Rozważam ...»

          Pozdrowienia 🙂

    3.    giskard powiedział

      +1

  5.   worki powiedział

    @Yukiteru: Czy próbowałeś tego na swoim komputerze? Jeśli patrzysz na swój komputer, to normalne jest, że możesz uzyskać dostęp do portu usługi X, ponieważ blokowany ruch pochodzi z sieci, a nie lokalnego hosta:
    http://www.ubuntu-es.org/node/140650#.UgJZ3cUyYZg
    https://answers.launchpad.net/gui-ufw/+question/194272

    Jeśli nie, zgłoś błąd 🙂
    Pozdrowienia 🙂

    1.    jukiteru powiedział

      Z innego komputera korzystającego z sieci Lan w przypadku nmap oraz przez Internet przy użyciu tej strony https://www.grc.com/x/ne.dll?bh0bkyd2Korzystając z opcji niestandardowych portów, obaj zgodzili się, że avahi i exim4 nasłuchują z sieci, mimo że ufw ma skonfigurowane blokowanie.

      Rozwiązałem ten mały szczegół avahi-daemon i exim4, po prostu wyłączając usługi i to wszystko ... Nie zgłosiłem wtedy błędu i nie sądzę, aby teraz to miało sens, ponieważ tak było w 2008 roku, używając Hardy.

      1.    giskard powiedział

        2008 był 5 lat temu; od Hardy Heron do Raring Ringtail jest 10 * buntusów. Ten sam test na moim Xubuntu, zrobiony wczoraj i powtórzony dzisiaj (sierpień 2013), daje doskonały we wszystkim. Używam tylko UFW.

        Powtarzam: czy macie jakieś dodatkowe testy do wykonania? Robię to z przyjemnością i relacjonuję, co wychodzi z tej strony.

        1.    jukiteru powiedział

          Wykonaj skanowanie SYN i IDLE swojego komputera przy użyciu nmap, co da ci wyobrażenie o tym, jak bezpieczny jest twój system.

          1.    giskard powiedział

            Człowiek nmap ma ponad 3000 linii. Jeśli z przyjemnością dasz mi polecenia do wykonania, zrobię to i zdam raport.

          2.    jukiteru powiedział

            Hmm, nie wiedziałem o 3000 stron podręcznika man dla nmap. ale zenmap jest pomocny w zrobieniu tego, co mówię, jest graficznym front-endem dla nmap, ale nadal opcją skanowania SYN za pomocą nmap jest -sS, podczas gdy opcja skanowania bezczynności to -sI, ale dokładne polecenie Będę.

            Wykonaj skanowanie z innego komputera wskazującego na IP twojego komputera za pomocą ubuntu, nie rób tego z własnego komputera, ponieważ tak nie działa.

          3.    jukiteru powiedział

            LOL!! Mój błąd około 3000 stron, kiedy to były linie 😛

  6.   Jezus Israel Perales Martinez powiedział

    Nie wiem, ale myślę, że GUI do tego w GNU / Linuksie do zarządzania zaporą ogniową byłoby nieco ostrożne i nie pozostawiłoby wszystkiego odkrytego, jak w ubuntu lub wszystkiego, co jest objęte, jak w fedorze, powinieneś być dobry xD lub coś do skonfigurowania cholernych zabójczych alternatyw xD hjahjahjaja Niewiele ma to, że z nimi walczę i otwarty jdk, ale w końcu trzeba też zachować zasadę pocałunku

  7.   Mauritius powiedział

    Dzięki wszystkim potknięciom, które miały miejsce w przeszłości z iptables, dziś rozumiem niverl raw, to znaczy rozmawiam z nim bezpośrednio, ponieważ pochodzi z fabryki.

    I nie jest to coś skomplikowanego, bardzo łatwo się tego nauczyć.

    Jeśli autor postu na to pozwoli, zamieszczę fragment skryptu firewalla, którego obecnie używam.

    ## Zasady czyszczenia
    iptables -F
    iptables-X
    iptables-Z
    iptables -t nat -F

    ## Ustaw domyślne zasady: DROP
    iptables -P INPUT DROP
    iptables -P SPADEK WYJŚCIA
    iptables -P DROP DO PRZODU

    # Działaj na hoście lokalnym bez ograniczeń
    iptables -A WEJŚCIE -i lo -j AKCEPTUJĘ
    iptables -A WYJŚCIE -o lo -j AKCEPTUJ

    # Pozwól maszynie przejść do sieci
    iptables -A INPUT -p tcp -m tcp –sport 80 -m conntrack –ctstate POWIĄZANE, USTANOWIONE -j AKCEPTUJ
    iptables -A WYJŚCIE -p tcp -m tcp –dport 80 -j AKCEPTUJ

    # Już również do zabezpieczania sieci
    iptables -A INPUT -p tcp -m tcp –sport 443 -m conntrack –ctstate POWIĄZANE, USTANOWIONE -j AKCEPTUJ
    iptables -A WYJŚCIE -p tcp -m tcp –dport 443 -j AKCEPTUJ

    # Zezwalaj na ping od wewnątrz na zewnątrz
    iptables -A WYJŚCIE -p icmp –typ-icmp echo-request -j AKCEPTUJ
    iptables -A INPUT -p icmp –icmp-type echo-response -j AKCEPTUJ

    # Ochrona dla SSH

    #iptables -I INPUT -p tcp –dport 22 -m conntrack –ctstate NOWOŚĆ -m limit –limit 30 / min –limit-burst 5 -m komentarz –komentuj "SSH-kick" -j AKCEPTUJ
    #iptables -A WEJŚCIE -p tcp -m tcp –dport 22 -j LOG – prefix-log "PRÓBA DOSTĘPU SSH:" –log-level 4
    #iptables -A WEJŚCIE -p tcp -m tcp –dport 22 -j DROP

    # Reguły dla amule zezwalające na połączenia wychodzące i przychodzące na porcie
    iptables -A INPUT -p tcp -m tcp –dport 16420 -m conntrack –ctstate NEW -m komentarz –komentuj „aMule” -j AKCEPTUJ
    iptables -A WYJŚCIE -p tcp -m tcp –sport 16420 -m conntrack –ctstate ZWIĄZANE, USTANOWIONO -m komentarz –komentuj "aMule" -j AKCEPTUJ
    iptables -A INPUT -p udp –dport 9995 -m komentarz –komentuj „aMule” -j AKCEPTUJ
    iptables -A WYJŚCIE -p udp –sport 9995 -j AKCEPTUJ
    iptables -A INPUT -p udp –dport 16423 -j AKCEPTUJ
    iptables -A WYJŚCIE -p udp –sport 16423 -j AKCEPTUJ

    Teraz małe wyjaśnienie. Jak widzisz, domyślnie obowiązują reguły z polisą DROP, nic nie opuszcza i nie wchodzi do zespołu bez Twojej wiedzy.

    Następnie przekazywane są podstawy, localhost i nawigacja do sieci sieci.

    Możesz zobaczyć, że istnieją również zasady dotyczące ssh i amule. Jeśli dobrze wyglądają, jak są zrobione, mogą tworzyć inne zasady, które chcą.

    Sztuczka polega na zobaczeniu struktury reguł i zastosowaniu ich do określonego typu portu lub protokołu, czy to udp czy tcp.

    Mam nadzieję, że rozumiesz to, co właśnie tutaj opublikowałem.

    1.    ciastko powiedział

      Powinieneś napisać post wyjaśniający to 😉 byłoby świetnie.

  8.   @JlcMux. powiedział

    Mam pytanie. W przypadku, gdy chcesz odrzucić połączenia http i https, umieściłem:

    serwer „http https” upuścić?

    I tak dalej z każdą usługą?

    dzięki