Opnsense

Daar waar de switch het hart is van het netwerk op hardware vlak, is Opnsense het hart op software niveau. Als deze (virtuele) server niet draait, wel dan draait er niks. Dit is onze centrale routering, onze firewall, onze DHCP, ons… alles.

De belangrijkste functie van is firewall, maar daarnaast verleent hij ook tal van andere netwerkfuncties. Ik probeer ze hieronder wat voor te stellen. Ik kan hier boeken over schrijven, maar ik ga me trachten te beperken tot het hoofdzakelijke. Kwestie dat je weet waar je kan ‘zoeken’ indien dit nodig lijkt…

Verschillende onderdelen

Enkele zaken die toch nuttig zijn om eventjes te overlopen.

  1. Firewall
    Elk goed netwerk begint met een firewall. Een soort fysieke scheiding tussen je interne en je externe netwerk. Meestal zal de firewall alle trafiek naar buiten wel toelaten, maar slechts beperkte verbindingen naar binnen toelaten.
    [center]

    [/center]

  2. Routering
    De firewall zorgt ook voor de verbindingen tussen de verschillende VLAN’s. Indien de firewall niet (correct) werkt, dan zal je bv niet meer vanop een gewone computer op een server kunnen connecteren. Netwerken die hij kent, laat hij met elkaar praten. Netwerken die hij niet kent, jaagt hij het internet op. In vaktermen zijn default gateway.
    [center]

    [/center]

  3. NAT
    De meeste firewalls zijn ook in staat om NAT te verwezenlijken. NAT staat voor Network Adress Translation. Het probleem is namelijk meestal dat je publieke IP-adres maar bestaat uit 1 adres. En in vele huis-tuin-keuken opstellingen kan deze ook nog es van tijd tot tijd wijzigen. Je kan moeilijk 1 publieke adres doorsturen naar meerdere interne servers. Gelukkige bestaan er vele poorten (van 1 tem 65535). En dankzij deze poorten kunnen we verschillende aanvragen doorsturen naar verschillende server. Als je kan zien, draait deze server extern op poort 17600, maar intern is dit eigenlijk poort 80 (standaard webserver poort). Het is de firewall die deze poorten vertaalt.
    [center]

    [/center]

  4. VPN
    Om op een veilige manier een connectie te maken met het interne netwerk als je bv op reis bent, kan je gebruik maken van VPN. Virtual Private Network. Dankzij deze technologie bouw je als het ware een tunnel doorheen de verschillende netwerken. En als dit succesvol is, dan is het net alsof je remote client (laptop, smartphone…) direct verbonden is met je huisnetwerk.
    [center]

    [/center]

  5. DHCP
    Elke toestel dat iets wil doen op een netwerk, moet beschikken over een IP-adres. Je kan dit manueel instellen, wat natuurlijk het nodige werk met zich meebrengt, of je kan dit laten afhandelen door een DHCP server. DHCP staat voor Dynamic Host Configuration Protocol.
    In onze DHCP server zijn er een paar zaken te weten.
    Zo heb je een (kleine) range IP-adressen voor vrij gebruik. Denk bv aan gsm, laptops… die niet alledaags zijn. Deze IP-adressen zijn niet vast. Wat wil zeggen dat je vandaag bv .102 krijgt, en morgen .132.
    En zo heb je ook een range IP-adressen die gekoppeld worden aan gekende toestellen. Dit is handig, omdat je dan telkens hetzelfde IP-adres toekent aan hetzelfde toestel. Zo weet je hoe dat toestel te bereiken is, en zo weet ook de firewall wie er juist zaken aan het versturen is.
    [center]

    [/center]

  6. Dynamic DNS
    Indien je een standaard abonnement hebt bij een internet provider, dan heb je vaak een dynmisch publiek IP adres. Wat betekent dat het IP-adres waarmee je op internet verbonden bent, kan wijzigen door bv een herstart van de modem. Indien je een vast publiek IP adres wenst, is dit natuurlijk geen probleem. Mits goed bij te betalen.
    OPNsense heeft een klein mechanischme ingebouwd, die om de x-tijd (bv 15 minuten) controleert of het publieke IP adres is gewijzigd. Is dit niet gewijzigd, dan doet hij er verder niks mee. Is het wel gwijzigd, dan zal hij dit communiceren naar de desbetreffende service provider.
    Ik gebruik hier bv de service ‘Free DNS van afraid‘. Deze houdt dus een door mij gekozen subdomein (xxx.mooo.com) bij, en koppelt dit aan het publiek IP adres van het moment. Wel op letten dat mooo.com om de zoveel tijd een soort menselijk antwoord wil. Zij sturen meestal een mailtje, om te vragen of dit nog gebruikt wordt. Indien hier niet op geantwoord wordt, tja, dan gooien ze die xxx.mooo.com in de vuilbak. Daarnaast forward mijn eigen domein (xxx.oniria.be) zijn naam naar dit xxx.mooo.com. Daardoor is het makkelijk te onthouden.
    [center]

    [/center]

  7. DNSmasq DNS of unbound DNS
    IP-adressen zijn leuk. Ze zijn eenvoudig. Het is namelijk gewoon 1, 2, 3… Maar als je zo’n 100 IP-adressen tot je beschikking hebt, begint het al vlug iets moeilijker te worden. Allé, voor mij toch.
    Daarom kan je bij OPNsense gebruik maken van een DNS. DNS staat voor Domain Name System.
    Eerst en vooral moeten al je toestellen tot een domein behoren. In ons geval is dit oniria.be.
    En vervolgens moet elke toestel een unieke naam hebben. Logisch, niet? Want als je 5 Assepoetsers hebt rondlopen, welke gaat er antwoorden als je haar roept?
    De DNS zal vervolgens deze naam vertalen naar een IP-adres. Zo hoef jij niet de nummertjes te onthouden, maar enkel de naam.
    Enkele voorbeelden?

    • Dina = 192.168.111.63
    • Dommel = 192.168.111.44
    • Kapser = 192.168.111.74
      Je ziet, wat ga je vlugger onthouden? De namen, of de IP adressen?

      [center][/center]

  8. Intrusion Detection
    Dit is een heel speciale techniek in de firewall die gaat onderzoeken of er geen louche mensen aan de voordeur staan. Als er bv IP-adressen uit China veelvuldig op de firewall zijn deur bonken, dan gaat het Intrusion Detection systeem hun gewoon bruutweg blokkeren. Bekijk hem als een soort buitenwipper.
    Wel opletten, deze technieken zijn soms nogal es ‘gevoelig’, waardoor er soms wel es iets verkeerd wordt geblokkeerd. Dus als er iets niet direct binnen geraakt die wel zou moeten binnen geraken, schakel dan even deze functie uit. Je weet maar nooit.
    [center]

    [/center]

  9. NTP
    NTP, oftewel Network Time Protocol. Het is altijd leuk dat iedereen op dezelfde golflengte, of tin dezelfde tijdzone zit. Daarom kan iedereen op het interne netwerk zijn klokjes gelijk zetten met OPNsense. Op zijn buurt zet OPNsense de tijd gelijk met de NTP-server van de provider. En de wereldwijde servers op internet.
    [center]

    [/center]

  10. Log
    En een van de laatste handigheden van zo’n firewall is het debuggen. Het controleren van alles wat al dan niet passeert. Als er bv iemand niet kan connecteren, dan kan je hier even in snuisteren, en zien of je zijn of haar connectie ziet. En wat er met gebeurd.
    [center]

    [/center]