Firehol: iptables for mennesker (Arch)

Først og fremmest går alle kreditter til @YukiteruAmano, fordi dette indlæg er baseret på tutorial du skrev på forummet. Forskellen er, at jeg vil fokusere på Arch, selvom det sandsynligvis fungerer for andre distroer baseret på systemd.

Hvad er Firehol?

brandhul, er et lille program, der hjælper os med at administrere den firewall, der er integreret i kernen og dens værktøj iptables. Firehol mangler en grafisk grænseflade, al konfiguration skal udføres gennem tekstfiler, men på trods af dette er konfigurationen stadig enkel for uerfarne brugere eller kraftig for dem, der leder efter avancerede muligheder. Alt, hvad Firehol gør, er at forenkle oprettelsen af ​​iptables-regler så meget som muligt og muliggøre en god firewall til vores system.

Installation og konfiguration

Firehol er ikke i de officielle Arch repositories, så vi vil henvise til AUR.

yaourt -S firehol
Derefter går vi til konfigurationsfilen.

sudo nano /etc/firehol/firehol.conf

Og vi tilføjer reglerne der, du kan bruge disse.

Fortsæt med at aktivere Firehol for hver opstart. Ret simpelt med systemd.

sudo systemctl enable firehol

Vi startede Firehol.

sudo systemctl start firehol

Endelig kontrollerer vi, at iptables-reglerne er oprettet og indlæst korrekt.

sudo iptables -L

Deaktiver IPv6

Som firehol ikke håndterer ip6 -tabeller og da de fleste af vores forbindelser ikke understøtter IPv6, min anbefaling er at deaktivere den.

En Arch tilføjer vi ipv6.disable = 1 til kernelinjen i / etc / default / grub-filen


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

Nu regenererer vi grub.cfg:

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

En Debian nok med:

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


26 kommentarer, lad dine

Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.

  1.   Felipe sagde han

    Jeg forstår ikke. Følger du vejledningen, og du har allerede Firewall kørt, og alle forbindelser er blokeret? En anden ting En tutorial til Arch er kompleks, for eksempel har jeg aldrig brugt sudo eller yaourt Firewall. Men det er forstået. Eller måske skriver en ny yaourt og får en fejl. For Manjaro er det mere korrekt.

    1.    yukiteru sagde han

      Som du siger @felipe, efter vejledningen og lægger i /etc/firehol/firehol.conf filen de regler, der er givet af @cookie i pastaen, har du allerede en simpel firewall til at beskytte systemet på et grundlæggende niveau. Denne konfiguration fungerer for hver distro, hvor du kan placere Firehol, med hver distros egenart, den håndterer sine tjenester på forskellige måder (Debian gennem sysvinit, Arch med systemd) og hvad angår installationen, ved alle, hvad de har, i Arch skal du brug AUR- og yaourt-repos, i Debian er de officielle nok, og så i mange andre er du bare nødt til at søge lidt i repositories og tilpasse installationskommandoen.

  2.   ci sagde han

    tak, jeg noterer mig.

  3.   Config sagde han

    Alt det der er meget godt ... men det vigtigste mangler; Du er nødt til at forklare, hvordan reglerne oprettes !!, hvad de betyder, hvordan man opretter nye ... Hvis det ikke er forklaret, er det, du lægger, ikke til nogen nytte: - /

    1.    yukiteru sagde han

      Oprettelse af nye regler er enkel, firehol-dokumentationen er klar og meget præcis med hensyn til oprettelse af brugerdefinerede regler, så læsning lidt gør det nemt for dig at tilpasse det og tilpasse det til dine behov.

      Jeg tror, ​​at den oprindelige årsag til @cookie-indlægget som min i forummet var at give brugere og læsere et værktøj, der giver dem mulighed for at give deres computere lidt mere sikkerhed, alt sammen på et grundlæggende niveau. Resten efterlades, så du kan tilpasse dig dine behov.

    2.    cookie sagde han

      Hvis du læser linket til Yukiteru-tutorialen, vil du indse, at hensigten er at offentliggøre applikationen og konfigurationen af ​​en grundlæggende firewall. Jeg præciserede, at mit indlæg kun var en kopi med fokus på Arch.

  4.   maacub sagde han

    Og dette er 'for mennesker'? o_O
    Prøv Gufw på Arch: https://aur.archlinux.org/packages/gufw/ >> Klik på Status. Eller ufw hvis du foretrækker terminal: sudo ufw aktiv

    Du er allerede beskyttet, hvis du er en normal bruger. Det er 'for mennesker' 🙂

    1.    Elav sagde han

      Firehol er virkelig en front-end for IPTables, og hvis vi sammenligner det med sidstnævnte, er det ret menneskeligt 😀

    2.    yukiteru sagde han

      Jeg betragter ufw (Gufw er bare en grænseflade til det) som en dårlig mulighed med hensyn til sikkerhed. Årsag: for flere sikkerhedsregler, som jeg skrev i ufw, kunne jeg ikke forhindre, at i testene af min firewall både via internettet og dem, jeg udførte ved hjælp af nmap, tjenester som avahi-daemon og exim4 ville være åbne, og kun et "stealth" -angreb var nok at kende de mindste egenskaber ved mit system, kerne og tjenester, som det kørte, noget der ikke er sket for mig ved hjælp af firehol eller Arnos firewall.

      1.    giskard sagde han

        Nå, jeg ved ikke om dig, men som jeg skrev ovenfor bruger jeg Xubuntu, og min firewall går med GUFW, og jeg bestod ALLE testene af det link, som forfatteren satte uden problemer. Alt snig. Intet åbent. Så efter min erfaring ufw (og derfor gufw) er de gode for mig. Jeg er ikke kritisk over for at bruge andre firewallkontroltilstande, men gufw fungerer fejlfrit og giver gode sikkerhedsresultater.

        Hvis du har nogen tests, som du tror kan kaste sårbarheder i mit system, så fortæl mig, hvad de er, og jeg kører dem gerne her og fortæller dig resultaterne.

        1.    yukiteru sagde han

          Nedenfor kommenterer jeg noget om emnet ufw, hvor jeg siger, at den fejl, jeg så i 2008, ved hjælp af Ubuntu 8.04 Hardy Heron. Hvad har de allerede rettet? Det mest sandsynlige er, at dette er tilfældet, så der er ingen grund til at bekymre sig, men alligevel betyder det ikke, at bugten var der, og jeg var i stand til at vise det, selvom det ikke var en dårlig ting at dø, stoppede jeg kun dæmonerne avahi-daemon og exim4, og problemet allerede løst. Det mærkeligste af alt er, at kun de to processer havde problemet.

          Jeg nævnte det som en personlig anekdote, og jeg gav den samme mening, da jeg sagde: «Jeg overvejer ...»

          Hilsen 🙂

    3.    giskard sagde han

      +1

  5.   sække sagde han

    @Yukiteru: Forsøgte du fra din egen computer? Hvis du kigger fra din pc, er det normalt, at du har adgang til serviceporten X, da den trafik, der er blokeret, er netværket, ikke localhost:
    http://www.ubuntu-es.org/node/140650#.UgJZ3cUyYZg
    https://answers.launchpad.net/gui-ufw/+question/194272

    Hvis ikke, bedes du rapportere en fejl 🙂
    Hilsen 🙂

    1.    yukiteru sagde han

      Fra en anden computer, der bruger et Lan-netværk i tilfælde af nmap, og via Internettet ved hjælp af denne side https://www.grc.com/x/ne.dll?bh0bkyd2Ved hjælp af indstillingen tilpassede porte var de begge enige om, at avahi og exim4 lyttede fra nettet, selvom ufw havde konfigureret deres blokering.

      Jeg løste den lille detalje af avahi-daemon og exim4 ved blot at deaktivere tjenesterne, og det er det ... Jeg rapporterede ikke en fejl på det tidspunkt, og jeg synes ikke det giver mening at gøre det nu, for det var tilbage i 2008 ved hjælp af Hardy.

      1.    giskard sagde han

        2008 var 5 år siden; fra Hardy Heron til Raring Ringtail er der 10 * buntus. Den samme test på min Xubuntu, lavet i går og gentaget i dag (august 2013) giver perfekt i alt. Og jeg bruger kun UFW.

        Jeg gentager: Har du yderligere tests at udføre? Med glæde gør jeg det, og jeg rapporterer, hvad der kommer ud af denne side.

        1.    yukiteru sagde han

          Lav en SYN- og IDLE-scanning af din pc ved hjælp af nmap, der giver dig en idé om, hvor sikkert dit system er.

          1.    giskard sagde han

            Nmap-manden har mere end 3000 linjer. Hvis du giver mig kommandoerne til at udføre med glæde, vil jeg gøre det, og jeg vil rapportere resultatet.

          2.    yukiteru sagde han

            Hmm jeg vidste ikke om de 3000 mandesider til nmap. men zenmap er en hjælp til at gøre, hvad jeg fortæller dig, det er en grafisk front-end for nmap, men stadig er muligheden for SYN-scanning med nmap -sS, mens muligheden for inaktiv scanning er -sI, men den nøjagtige kommando Jeg vil være.

            Foretag scanningen fra en anden maskine, der peger på ip på din maskine med ubuntu, gør det ikke fra din egen pc, for det er ikke sådan, det fungerer.

          3.    yukiteru sagde han

            LOL !! Min fejl omkring 3000 sider, da de var linjer 😛

  6.   Jeus Israel Perales Martinez sagde han

    Jeg ved det ikke, men jeg tror, ​​at en GUI til det i GNU / Linux til at styre firewallen ville være noget klogt og ikke lade alt være afdækket som i ubuntu eller alt dækket som i fedora, du skal være god xD, eller noget for at konfigurere de forbandede dræberalternativer xD hjahjahjaja Det har lidt, at jeg kæmper med dem og den åbne jdk, men i sidste ende skal du også holde princippet om kys

  7.   Mauritius sagde han

    Takket være alle de snublesten, der skete tidligere med iptables, kan jeg i dag forstå niverl raw, det vil sige tale til ham direkte, som det kommer fra fabrikken.

    Og det er ikke noget så kompliceret, det er meget let at lære.

    Hvis forfatteren af ​​indlægget tillader mig, vil jeg sende et uddrag af det firewall-script, jeg bruger i øjeblikket.

    ## Regler rengøring
    iptables-F
    iptables-X
    iptables -Z
    iptables -t nat -F

    ## Indstil standardpolitik: DROP
    iptables -P INPUT DROP
    iptables -P OUTPUT DROP
    iptables -P FREM DROP

    # Kør på localhost uden begrænsninger
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A OUTPUT -o lo -j ACCEPT

    # Lad maskinen gå på nettet
    iptables -A INPUT -p tcp -m tcp –sport 80 -m conntrack –ctstate RELATED, ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -p tcp -m tcp –port 80 -j ACCEPT

    # Allerede også for at sikre webs
    iptables -A INPUT -p tcp -m tcp –sport 443 -m conntrack –ctstate RELATED, ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -p tcp -m tcp –port 443 -j ACCEPT

    # Tillad ping indefra og ud
    iptables -A OUTPUT -p icmp –icmp-type ekko-anmodning -j ACCEPT
    iptables -A INPUT -p icmp –icmp-type ekko-svar -j ACCEPT

    # Beskyttelse af SSH

    #iptables -I INPUT -p tcp –dport 22 -m forbindelsespunkt –ctstate NY -m grænse –begrænset 30 / minut –begrænset burst 5 -m kommentar – kommentar "SSH-kick" -j ACCEPT
    #iptables -A INPUT -p tcp -m tcp –dport 22 -j LOG –log-præfiks "SSH ACCESS ATTEMPT:" –log-niveau 4
    #iptables -A INPUT -p tcp -m tcp –port 22 -j DROP

    # Regler for amule, der tillader udgående og indgående forbindelser i havnen
    iptables -A INPUT -p tcp -m tcp –port 16420 -m conntrack –ctstate NY -m kommentar –kommentar “aMule” -j ACCEPT
    iptables -A OUTPUT -p tcp -m tcp –sport 16420 -m conntrack –ctstate RELATERET, ESTABLERET -m kommentar –kommentar “aMule” -j ACCEPT
    iptables -A INPUT -p udp –dport 9995 -m kommentar –kommentar “aMule” -j ACCEPT
    iptables -A OUTPUT -p udp –sport 9995 -j ACCEPT
    iptables -A INPUT -p udp –port 16423 -j ACCEPT
    iptables -A OUTPUT -p udp –sport 16423 -j ACCEPT

    Nu en lille forklaring. Som du kan se, er der reglerne med DROP-politikken som standard, intet forlader og kommer ind i teamet uden at du fortæller dem.

    Derefter overføres det grundlæggende, localhost og navigationen til netværket af netværk.

    Du kan se, at der også er regler for ssh og amule. Hvis de ser godt ud, hvordan de gøres, kan de lave de andre regler, de ønsker.

    Tricket er at se strukturen af ​​reglerne og gælde for en bestemt type port eller protokol, det være sig udp eller tcp.

    Jeg håber, du kan forstå dette, som jeg lige har sendt her.

    1.    cookie sagde han

      Du skal lave et indlæg, der forklarer det 😉 ville være dejligt.

  8.   @Jlcmux sagde han

    Jeg har et spørgsmål. Hvis du vil afvise http- og https-forbindelser, sætter jeg:

    server "http https" drop?

    Og så videre med enhver service?

    Tak