pfSense: ip-adressen uitdelen en firewall instellen

Met pfSense beveiligen we ons thuisnetwerk met een ijzersterke firewall door middel van een oude computer. In een vorige workshop keken we naar het installatieproces van de software, nu bekijken we wat er zoal te configureren valt.

Tip: Lees eerst hoe je pfSense kunt downloaden en installeren.

Na de herstart beland je in het hoofdmenu van pfSense waarin je zeventien keuzemogelijkheden ziet. Bovenaan verschijnt een overzicht van je netwerkinterfaces, waar we gelijk mee aan de slag gaan via de optie 1) Assign interfaces. Op de vraag of je al VLAN’s wilt creëren, antwoord je (voor nu) met nee.

Onze eigen test-pc heeft meerdere netwerkadapters: drie ethernetadapters van 1 Gbit (waarvan één op het moederbord en twee PCI-E-adapters) en één draadloze adapter. We zijn namelijk nogal ambitieus: naast een WAN- en LAN-verbinding willen we ook nog een DMZ (demilitarized zone) en een accesspoint opzetten.

© PXimport

Netwerkadapters onderscheiden

Wanneer je een aantal (identieke) netwerkadapters in je systeem hebt zitten, kan het lastig zijn om die uit elkaar te houden. De makkelijkste manier is wellicht nog de volgende: haal alle kabels uit de netwerkadapters, behalve de kabel die je systeem met je modem verbindt. 

Zodra de melding verschijnt Enter the WAN-interface name […], druk je op de A-toets om automatische detectie van je netwerkadapter te activeren. Je merkt dan vanzelf welke interface beschikbaar komt en je kunt de connectie de gewenste naam meegeven (WAN, in dit geval). Herhaal dit voor de overige netwerkadapters, die wij in ons voorbeeld respectievelijk LAN, DMZ en WLAN hebben genoemd. 

© PXimport

Met de Enter-toets sluit je de configuratie af en krijg je weer het overzicht van de toegekende interfaces te zien. Je LAN-interface krijgt het adres 192.168.1.1 mee. Na je bevestiging wordt de configuratie opgeslagen en kom je terug in het hoofdmenu.

DHCP configureren in pfSense

De verdere configuratie van pfSense kun je via de gebruiksvriendelijke webinterface afhandelen. Het enige dat je nodig hebt is het LAN-IP-adres van het systeem waarop je pfSense hebt geïnstalleerd. We gaan ervan uit dat je de netwerkkabel van de LAN-interface op een switch hebt aangesloten en dat je andere systemen ook met die switch verbonden hebt. De ingebouwde DHCP-server van pfSense wijst de andere systemen automatisch een IP-adres toe (standaard begint de DHCP-pool met 192.168.1.100).

Mocht een aangesloten pc toch geen IP-adres krijgen toebedeeld, dan moet je wellicht de DHCP-service op de pfSense-machine herstarten. Dat gaat het snelst als volgt: kies in het hoofdmenu van pfSense voor optie 12) PHP shell en voer het commando playback restartdhcp uit.

Inloggen

Op je client-systeem ga je vervolgens met een browser naar het adres https://192.168.1.1. Het aanmeldvenster verschijnt waar je (aanvankelijk) admin als inlognaam en pfsense als wachtwoord invult. Het pfSense-dashboard verschijnt en via de Next-knop start je een configuratiewizard op (je bereikt die ook via System / Setup wizard). Druk een paar keer op Next tot je het scherm ziet waar je een geschikte hostname en domain kunt invullen, samen wordt dat de FQDN (de ‘Fully Qualified Domain Name’) van je pfSense-firewall.

We gaan ervan uit dat de DNS-servers (via DHCP) automatisch door je internetprovider worden doorgegeven, zorg dan wel dat er een vinkje staat bij Allow DNS servers to be overridden by DHCP/PPP on WAN. Desnoods gebruik je publieke DNS-servers als die van OpenDNS of (desnoods die) van Google. In het volgende scherm is de NTP-server (Network Time Protocol) al ingevuld: je moet alleen nog even de juiste tijdzone aanduiden (bijvoorbeeld Europe/Amsterdam).

© PXimport

Nog een stap verder krijg je nog de gelegenheid de WAN- en LAN-interfaces te wijzigen, maar we gaan er hier van uit dat die al naar wens staan ingesteld. In het volgende venster wijzig je het wachtwoord voor je admin-login. Maak er een sterk wachtwoord van, want langs deze weg bereik je onder meer de webinterface en de SSH-services. Ten slotte kom je uit bij de knop Reload en verschijnt de tekst Click here to continue to pfSense web Configurator (zoals pfSense het dashboard noemt).

Alvast goed om weten: je kunt op elk moment de pfSense-configuratie back-uppen (en terugzetten). Dat loopt over het menu Diagnostics, waar je Backup & Restore kiest. Stel Backup area bij voorkeur in op All en druk op de knop Download configuration as XML.

Geen IP-adres in pfSense

Heb je net als wij meerdere netwerkinterfaces ingeschakeld op je pfSense-machine (in ons geval dus WLAN en DMZ), dan loop je meteen tegen enkele problemen aan. Wanneer je een toestel op één van die interfaces aansluit, krijgen die geen IP-adres toebedeeld (en wordt er dus ook geen data naar doorgestuurd.

Het eerste probleem – geen IP-adres – is snel opgelost: pfSense activeert de DHCP-server standaard alleen voor de LAN-interface, maar niet voor de extra netwerkadapters. Dat moet je zelf regelen. We nemen onze DMZ als voorbeeld. Open het menu Services / DHCP-server. Open het tabblad DMZ (of het tabblad met de naam van jouw eigen optionele interface). Plaats een vinkje bij Enable DHCP server on […] interface, waarna je bij Range het gewenste distributiebereik invult (bij een subnet van bijvoorbeeld 192.168.2.0/24 kun je iets instellen als From: 192.168.2.100 To: 192.168.2.200). Bevestig je instellingen met de knop Save, onderaan de pagina.

© PXimport

Firewall instellen

Rest nog het andere probleem: het doorsturen van data door de interface. Je hebt wellicht al door dat de ingebouwde firewall hier een stokje voor steekt. Open hiervoor het menu Firewall en kies Rules. Op het tabblad LAN zie je dat pfSense zelf al wat regels heeft gecreëerd voor de LAN-interface, maar op de tabbladen van de extra interfaces is dat niet het geval en moet je dat dus zelf doen. Voor onze DMZ-interface, op het tabblad DMZ, creëren we een regel die in eerste instantie alle verkeer toelaat, maar beperken we die vervolgens met een regel die alle verkeer vanaf de DMZ naar het LAN blokkeert of negeert. Dat geeft een aardig idee hoe je met de firewall van pfSense moet omspringen.

Klik op groene Add-knop en vul (iets als) het volgende op de configuratiepagina in: Action – Pass, Interface – DMZ, Address Family – IPv4+IPv6, Protocol – Any, Source – Any, Destination - Any. Vul een geschikte beschrijving bij Description in en bewaar met Save: je eerste regel is toegevoegd. De tweede regel wordt een beperkingsregel: klik opnieuw op de groene Add-knop.

© PXimport

Let erop dat je de eerste Add-knop (links) aanklikt, met de naam Add rule to the top of the list en het pijltje omhoog: de beperkingsregel komt dan bovenaan de lijst te staan. Dat is belangrijk omdat pfSense de firewallregels in volgorde van boven naar beneden afwerkt. Desnoods kun je de regelvolgorde ook naderhand aanpassen door zo’n regel naar de gewenste locatie te verslepen.

Onze tweede regel komt er net als de eerste uit te zien, met twee belangrijke verschillen: Action stel je in op Reject en Destination (alleen) op LAN net. Je DMZ-interface werkt nu zo dat alleen verkeer naar je LAN verbonden blijft. Je kunt nu in principe veilig één of andere (publiek toegankelijke) server aan je DMZ-interface hangen.

Lees in het volgende artikel over het instellen van Accespoints, portforwarding en VPN's in pfSense

Tekst: Toon van Daele

Deel dit artikel
Voeg toe aan favorieten