Linux Systeembeheer/Firewalls

Uit Wikibooks

Ga naar: navigatie, zoek

Om aanvallen op een netwerk te voorkomen of tegen te houden is een firewall op de router onontbeerlijk. De Linux-kernel heeft een ingebouwde firewall die je kan manipuleren met het commando iptables. Nu is het opstellen van een goede firewall niet zo evident en daarom zijn er intussen tientallen applicaties beschikbaar die deze taak vergemakkelijken (o.a. Firestarter, ufw, enz.). Het gebruiken van die tools is echter niet zonder gevaar: de details van de werking blijven verborgen, de kwaliteit van de firewall is niet langer 100% zeker en het is wellicht niet langer mogelijk om alle functionaliteiten van iptables te gebruiken. Voor een goed begrip van de werking van Linux firewalls is het daarom belangrijk met iptables te leren werken.

[bewerken] Leerdoelen

  • De basisstructuur van Linux firewalls begrijpen
    • de begrippen “table” en “chain” kennen en begrijpen
    • de standaard tables (filter, nat, mangle) en hun functie kennen
    • de standaard chains (INPUT, OUTPUT, FORWARD) kennen en hun functie begrijpen
  • Het commando iptables kunnen gebruiken om de Linux firewall te manipuleren
    • de standaard policies (ACCEPT, DROP, REJECT, LOG) kennen en kunnen instellen
    • regels en chains kunnen toevoegen en verwijderen
    • filteropties kunnen gebruiken:
      • filteren op protocol, IP-adres, MAC-adres, netwerkinterface, protocol
      • TCP, UDP uitbreidingen
      • trafiek limiteren
      • connection tracking
      • Network Address Translation
  • De firewall-configuratie kunnen opslaan en automatisch laden bij opstarten

[bewerken] Labo-opdracht

Bedoeling is een op te zetten voor een zgn. “bastion firewall” die een lokaal netwerk, bestaande uit een DMZ (demilitarised zone) met publiek toegankelijke servers en een intranet dat niet toegankelijk is van buitenaf. Onderstaande figuur en adressentabel verduidelijken de opstelling.

Structuur van het netwerk


Host Interface IP-adres Network Mask Opmerkingen
router eth0 172.16.1.253 255.255.255.252 verbonden met router van ISP
eth1 192.0.2.126 255.255.255.248 DMZ, met publieke IP-adressen
eth2 10.0.0.1 255.0.0.0 Itern netwerk, met private IP-adressen
apollo eth0 192.0.2.123 255.255.255.248 Webserver
mars eth0 192.0.2.124 Mailserver
ns1 eth0 192.0.2.121 DNS1
ns2 eth0 192.0.2.122 DNS2

Opm. 192.0.2.0 is het zgn. TEST-NET, een klasse-C netwerk dat is voorbehouden voor het gebruik in voorbeelden, handleidingen, enz. Je mag het beschouwen als een publiek IP netwerk, maar het komt nergens “in het echt” voor.

Zet een firewall op met volgende eigenschappen:

  • pakketten die tegengehouden worden (DROP), moeten ook gelogd worden. Maak daarvoor een nieuwe chain aan
  • pc's op het intranet kunnen de services van de DMZ gebruiken (gebruik zo strikt mogelijke regels)
  • pc's op het intranet kunnen vrij naar “buiten” (via NAT)
  • computers van buiten kunnen de services van de DMZ gebruiken (ook met zo strikt mogelijke regels)
  • computers van buiten kunnen GEEN verbinding aangaan met computers op het intranet
  • blokkeer flooding op de DMZ services
  • configureer “algemene” firewall instellingen die de beveiliging verbeteren zoals log_martians, SYN cookies, enz.
  • op de router draaien geen services, dus alle verkeer van en naar de router zelf moet geblokkeerd worden.
Informatie afkomstig van http://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.
Persoonlijke instellingen