ID.nl logo
Sesam, open u! Kom alles te weten over netwerkpoorten
© xiaoliangge - stock.adobe.com
Huis

Sesam, open u! Kom alles te weten over netwerkpoorten

Een woning betreed je via een deur. Datzelfde gebeurt bij data die tussen apparaten wordt verstuurd. Alleen gaat het dan niet om deuren, maar om netwerkpoorten. Hoe werkt dat precies? Op welke manier heb jij daar als gebruiker mee te maken?

Dit artikel is voor de wat gevorderde gebruiker die álles wil weten over netwerkpoorten:

  • Poortnummers
  • Poorttypes
  • Poortcommunicatie en -verkeer
  • Poortregels
  • Portforwarding

Ook interessant: Netwerkproblemen? Analyseer ze met Wireshark

Stel je voor dat je in een gebouw met duizend deuren bent. Achter een van die deuren bevindt zich een persoon. Om snel te communiceren, open je het liefst direct de juiste deur. Bij een computer is dat vergelijkbaar, alleen heb je hierbij te maken met 65536 netwerkpoorten (2^16). Het is natuurlijk niet efficiënt als het apparaat voor elke vorm van communicatie alle poorten een voor een moet openen om de juiste ‘gesprekspartner’ te vinden. Hoe dit dan wel werkt, leggen we in dit artikel uit voor de wat gevorderde gebruiker.

Poortnummers

Als je de systeemkast van je pc opent, zie je geen 65536 netwerkpoorten. Logisch, want we hebben het niet over fysieke poorten voor bijvoorbeeld usb en ethernet. De netwerkpoorten zijn virtuele, logische constructies binnen de software en het besturingssysteem. Zo’n netwerkpoort is een punt waar de data binnenkomt of vertrekt.

Een groot aantal communicatievormen, zoals bepaalde diensten en protocollen, gebruiken zogeheten ‘well-known ports’, dit zijn vaste poortnummers. De worden beheerd door de Internet Assigned Numbers Authority (IANA) en zijn genummerd van 0 tot 1023. Bekende poortnummers zijn 20 en 21 (FTP), 25 (SMTP), 53 (DNS), 80 (http) en 443 (https).

Laten we dit eens testen. Ga naar www.id.nl en vervolgens naar https://id.nl:80. Via :80 geef je aan dat je browser verbinding met poort 80 op de webserver moet maken. Dit lukt helaas niet, want het gaat om https en niet om http. Wat wel lukt, is https://id.nl:443, omdat dit de standaardpoort voor zo’n versleutelde verbinding is.

Een https-verbinding loopt bijna altijd via poort 443.

Poorttypes

Naast de 1024 well-known ports zijn er de geregistreerde poorten (van 1024 tot 49151). Deze zijn niet vast gereserveerd, maar kunnen door softwareontwikkelaars voor hun eigen applicaties worden geregistreerd, zoals 3306 (MySQL-database) en 8080 (alternatieve http).

Tot slot zijn er ook nog de dynamische en private poorten (49152 tot 65535). Zoals je verderop kunt lezen, worden deze poortnummers dynamisch toegewezen door het besturingssysteem. Dit gebeurt wanneer een applicatie daarom verzoekt. Deze poorten worden vaak gebruikt voor tijdelijke communicatie, bijvoorbeeld bij het opzetten van een verbinding voor een e-mailapp.

Een overzicht van de poortnummers vind je via deze pagina. In deze lijst kun je navigeren en gericht zoeken naar poortnummers, servicenamen en protocollen.

Tussen de laagste, gereserveerde poortnummers bevinden zich enkele bekende protocollen.

Poortcommunicatie

Wanneer je met je pc in je thuisnetwerk naar een website surft, stuurt je webbrowser een https-verzoek naar het ip-adres van de webserver, gericht aan poort 443. Op zich is dit eenvoudig, maar in de praktijk blijkt het helaas iets ingewikkelder. Enig inzicht hierin is nuttig om bijvoorbeeld een router of firewall beter en veiliger te configureren.

Wanneer je webbrowser een verzoek stuurt naar de webserver gericht aan poort 443, wijst je pc hiervoor tijdelijk een dynamische poort toe, bijvoorbeeld 62292. Dit verzoek gaat vervolgens eerst naar je router. Deze houdt normaliter een tabel bij, de Network Address Translation-tabel (NAT). Hierin staat welke interne ip-adressen en poorten zijn gekoppeld aan de externe ip-adressen en poorten. De router wijst nu op zijn beurt een externe dynamische poort toe voor deze communicatie, bijvoorbeeld 49800. Ook vervangt de router het interne ip-adres en poort (bijvoorbeeld 192.168.0.181:62292) door zijn eigen externe ip-adres en poort (bijvoorbeeld 84.192.232.207:49800). De webserver ontvangt nu het verzoek (bijvoorbeeld 54.195.223.106:443) en stuurt dit terug naar het ip-adres en poort van je router. Deze raadpleegt vervolgens de NAT-tabel en stuurt het antwoord van de server terug naar je pc met de originele bronpoort. De communicatie is geslaagd.

De communicatie van de pc via de router naar de webserver, en weer terug.

Poortverkeer

Van het hele protocol- en poortengedoe merk je als eindgebruiker gelukkig weinig. Het is vooralwebadres intikken en gaan. Wil je graag achter de schermen van het netwerkverkeer kijken, dan is Wireshark een krachtige en gratis tool die je daarvoor kunt gebruiken. We beperken ons tot een eenvoudig voorbeeld.

Installeer de tool met alle standaardinstellingen (inclusief Npcap) en start deze op. Dubbelklik op de actieve netwerkadapter, zoals Ethernet. Je zult zien dat er meteen veel netwerkverkeer wordt afgevangen. Beëindig dit met de rode stopknop.

Klik nu met rechts op een willekeurige kolomtitel, zoals Source, kies Column Preferences en druk op het plusknopje. Dubbelklik op New Column, vul de naam Bronpoort in en dubbelklik op Number. Klik op het pijlknopje en kies Source port. Herhaal dit voor Doelpoort (Destination Port). Haal eventueel de vinkjes weg bij alle overige items, behalve bij No., Source en Destination. Bevestig met OK.

Druk op de blauwe haaienvin en surf met je browser naar https://id.nl, waar je snel op een paar interne sitelinks klikt. Ga terug naar Wireshark en vul bovenaan in het filterveld ip.addr == 54.195.223.106 in. Dit zorgt ervoor dat je alleen de communicatie met de webserver van id.nl te zien krijgt. Je kunt het ip-adres van zo’n server achterhalen door op de opdrachtregel nslookup id.nl uit te voeren.

Je zult zien dat de bronpoort van je eigen pc 443 is en de bronpoort van de webserver een tijdelijk toegekend dynamisch poortnummer is. De rol van de tussenliggende NAT-router valt hier niet uit af te leiden.

De poortnummers zijn duidelijk zichtbaar, maar de router blijft buiten het gezichtsveld.

Poortregels

Wanneer je een kamer wilt binnengaan, mag de deur niet op slot zijn. In de netwerkwereld is dit vergelijkbaar. Om via een bepaalde poort te communiceren, moet deze openstaan of minstens opengaan zodra er wordt aangeklopt.

Het openen en sluiten van poorten, eventueel alleen voor specifieke ip-adressen en netwerkprotocollen, is de taak van een firewall die daarmee je netwerk beter beveiligt.

We illustreren dit met een eenvoudig experiment. Stel, we willen op onze Windows-pc het uitgaande verkeer naar alle https-webservers blokkeren.

Druk hiervoor op Windows-toets+R en voer wf.msc uit. Het venster van de Windows Firewall verschijnt. Klik links op Regels voor uitgaande verbindingen en rechts op Nieuwe regel. Selecteer Poort, druk op Volgende, kies TCP en vul bij Specifieke poorten 443 in. Druk op Volgende en selecteer De verbinding blokkeren. Druk op Volgende, laat de drie netwerktypes geselecteerd, druk nogmaals op Volgende en vul een naam voor je regel in, bijvoorbeeld Blokkeer 443. Zodra je bevestigt met Voltooien wordt je regel bovenaan toegevoegd en is deze actief, zoals je merkt na een herstart van je browser. Vanuit het rechterdeelvenster kun je de regel altijd weer Uitschakelen of Verwijderen.

In de praktijk gebeurt ook het omgekeerde. Standaard blokkeert je firewall alle binnenkomende verkeer. Als een webserver een specifieke poort in je pc wil bereiken, kan het nodig zijn dat je in de firewall die poort voor binnenkomend verkeer (van dat protocol en die webserver) openzet. In dit geval kies je Regels voor binnenkomende verbindingen en De verbinding toestaan.

Met deze firewall-regel blokkeer je de communicatie met alle https-webservers.

Van buiten naar binnen

Je weet nu al hoe je via Windows Firewall ongewenst verkeer kunt blokkeren en gewenst verkeer kunt toelaten. We hebben dit op poortniveau gedaan, maar bij het opstellen van zo’n regel kun je ook op applicatie-, adres- en/of protocolniveau werken. Vergelijkbare mogelijkheden zitten vast ook in je eigen firewall als je liever niet de ingebouwde Windows Firewall gebruikt.

Helaas zijn we er nog niet helemaal, want zoals gezegd fungeert je router altijd als verbinding voor het verkeer tussen je netwerkapparaten en het internet. Stel dat je in je netwerk een eigen server draait, zoals een bestandsserver, webserver of netwerkcamera, die je ook van buitenaf wilt bereiken. Dit kan problematisch zijn, want het apparaat waarop je service draait, heeft een intern ip-adres (bijvoorbeeld 192.168.0.181) dat niet zomaar van buitenaf bereikbaar is. Je kunt wel (het externe wan-ip-adres van) je router bereiken, maar hoe weet de router dan voor welk netwerkapparaat dat binnengekomen verzoek bedoeld is? Een mogelijke uitweg is poortdoorschakeling (port forwarding). Het komt erop neer dat je je router instrueert om alle binnenkomende verkeer op een specifieke poort automatisch naar (het interne lan-ip-adres van) het gewenste apparaat door te sluizen. Hoe pak je dit aan?

Je router heeft twee netwerkingangen: een naar internet (extern ip-adres) en een naar je netwerk (intern ip-adres).

Voorbereiding portforwarding

Allereerst moet je het interne ip-adres van het betreffende netwerkapparaat kennen. Dit doe je het handigst via je router. Start je browser en voer het interne ip-adres van je router in. Dit adres lees je normaal af na het uitvoeren van het commando ipconfig op de Opdrachtprompt, bij Default Gateway (bijvoorbeeld 192.168.0.254). Je belandt nu in de webinterface van je router, waar je een lijst met interne ip-adressen van verbonden netwerkapparaten vindt, bijvoorbeeld bij DHCP Client Table of ConnectedDevices. Raadpleeg eventueel de routerhandleiding, en noteer het beoogde adres.

Daarnaast heb je het poortnummer nodig waarop de betreffende service bereikbaar is, evenals het gebruikte protocol, meestal tcp of soms (ook) udp. Raadpleeg hiervoor de handleiding bij de betreffende service of het apparaat.

De lijst met (ip-adressen van) enkele aangesloten apparaten op onze router.

Doorschakelen

Je hebt nu voldoende informatie om een regel voor poortdoorschakeling in te stellen op je router. Hoe je dit doet hangt af van je routertype. Op www.portforward.com/router.htm vind je instructies voor vele routers. Hieronder vind je een algemene werkwijze.

Zoek in je routerinterface naar een onderdeel als Port Forwarding of Virtual Server en klik op Add Rule. Geef je regel een naam, vul bij het juiste item het interne ip-adres van je server of apparaat in, kies het bijbehorende protocol en vul tevens het interne poortnummer in. Vaak wordt ook om een extern poortnummer gevraagd. Meestal is dit hetzelfde als het interne, maar dat hoeft niet. Bewaar je aanpassingen met Save of Apply.

Nu hoef je alleen maar de juiste applicatie te verbinden met het externe ip-adres van je router, op het ingegeven (externe) poortnummer. Dit ip-adres kom je te weten door vanaf een pc in je netwerk te surfen naar www.whatismyip.com.

Bij poortdoorschakeling kunnen er enkele complicaties optreden. Eén daarvan is dat het externe ip-adres van je router vaak dynamisch door je internetprovider wordt toegekend en dus kan veranderen. Om te vermijden dat je steeds het actuele adres moet kennen, kun je een dynamisch DNS (DDNS) gebruiken. Dit kan ook gratis, bijvoorbeeld bij NoIP, Dynu of Duck DNS.

Eenmaal de juiste plek gevonden, heb je snel een nieuwe regel toegevoegd.

Poortscan

Je begrijpt dat elke open poort een extra kwetsbaarheid in de beveiliging van je thuisnetwerk kan zijn, omdat dit een toegangspunt biedt voor potentiële aanvallers. Het is dus essentieel om alleen de hoogst noodzakelijke poorten open te zetten. Om snel de status van je netwerkpoorten te controleren, kun je een poortscan uitvoeren. Hierbij controleert een tool systematisch alle poorten op een ander apparaat.

Dit kan van binnenuit met een gratis tool als Nmap (de grafische frontend Zenmap wordt mee geïnstalleerd), maar ook van buitenaf. Dit laatste is nuttig omdat je je dan in de positie van een potentiële aanvaller plaatst. Gratis online scanners zijn onder meer Nmap Online (voor een publieke scan vul je het externe ip-adres of de DDNS-domeinnaam van je router/netwerk in) en GRC ShieldsUP!.

Bij GRC ShieldsUP! ga je als volgt te werk: klik op Proceed en kies bij voorkeur AllService Ports. De scan van de ‘laagste’ 1056 poorten start meteen. Een open poortnummer kleurt rood, een gesloten poort blauw en een stealth-poort groen. Dit laatste is iets veiliger omdat zo’n poort helemaal niet reageert op binnenkomende datapakketten, terwijl bij een blauwe poort een aanvaller weet dat er een actief systeem achter zit, alleen hij kan er niet (zomaar) binnen.

Klik op een blokje van een poortnummer voor meer (algemene) feedback. Let onder meer op poorten 22 (ssh) en 23 (telnet), omdat hackers deze graag in de gaten houden. Tref je inderdaad een of meer onverwachte open poorten aan, zoek dan in je router en op je netwerkapparaten welke services deze openingen daadwerkelijk nodig hebben. Eventueel sluit je ze af met je firewall, al dan niet tijdelijk als test.

Alle poorten in stealth (achter router en firewall).
▼ Volgende artikel
Waar voor je geld: 5 betaalbare all-in-one-printers met scanfunctie
© MG | ID.nl
Huis

Waar voor je geld: 5 betaalbare all-in-one-printers met scanfunctie

Heb je een kantoorbaan en werk je ook veel thuis? Dan loop je vast wel eens tegen het probleem aan dat je een document wil afdrukken of iets belangrijks moet inscannen of kopiëren, maar dat je dan weer moet wachten tot je op kantoor bent. Waarom niet gewoon thuis alles doen? Met een betaalbare all-in-one-printer met scanfunctie doe je alles vanuit je eigen werkkamer. Handig voor iedereen in huis.

Canon PIXMA TS3750i

Met de Canon PIXMA TS3750i haal je een inkjet all-in-one-printer in huis die printen, kopiëren en scannen combineert in één apparaat. Het is een kleureninkjet met een maximale printresolutie van 4800 x 1200 dpi en A4 als grootste papierformaat. Je legt papier in één papierlade met een capaciteit van 90 vellen, waarbij de invoer handmatig gebeurt. De printer ondersteunt standaard A4-papier en print zwart tot ongeveer 7 ipm en kleur tot 4 ipm. De scanner is een flatbed-type zonder automatische documentinvoer; je legt dus losse pagina’s op de glasplaat en scant enkelzijdig.

De verbinding met je netwerk verloopt via wifi, waardoor je via een laptop maar ook een tablet of telefoon kunt printen. De printer werkt uiteraard goed met Windows- en macOS-systemen en hij is compatibel met mobiele besturingssystemen als iOS en Android.

De TS3750i gebruikt twee cartridges (zwart en kleur) maar vier inkten, waarbij de kleuren in één gecombineerde kleurcartridge zitten.

HP DeskJet 2921

De HP DeskJet 2921 is een thermische inkjet-all-in-one die speciaal bedoeld is voor thuisgebruik. Je hebt één apparaat dat kan printen, kopiëren en scannen; de scanner is een flatbedscanner zonder automatische documentinvoer. De printtechniek gebruikt twee cartridges: een zwarte en een driekleurencartridge. De kleurfunctie is beschikbaar voor zowel printen als kopiëren. De papierlade biedt ruimte aan 60 vellen normaal papier en ondersteunt DL-enveloppen.

Als draadloze all-in-one-printer kan deze DeskJet via wifi op je netwerk worden aangesloten, maar het is ook mogelijk om de printer via een usb-kabel rechtstreeks met een computer aan te verbinden. De printsnelheid bij dit model is rond de 7 pagina's in zwart en 5,5 pagina's per minuut in kleur. Automatisch dubbelzijdig afdrukken wordt niet ondersteund.

Epson Expression Home XP-2200

Bij de Epson Expression Home XP-2200 draait het om een compacte kleureninkjet waarmee je zowel kunt printen als scannen en kopiëren. De printer werkt met vier afzonderlijke inkten en heeft een maximale printresolutie van 4800 x 1200 dpi. De maximale papiermaat is A4 en de papierlade kan 50 vellen bevatten. Printen gebeurt via een handmatige papierinvoer, zonder extra lade.

De XP-2200 heeft een flatbed-scanner zonder automatische documentinvoer; dubbelzijdig scannen wordt niet automatisch ondersteund. Op printsnelheid scoort dit model tot 27 pagina’s per minuut in zwart en tot 15 pagina’s per minuut in kleur in de snelste modus. Verbinden gaat via usb of draadloos via wifi. Via een fysieke WPS-knop maak je eenvoudig verbinding.

Epson Expression Home XP-3200

De Epson Expression Home XP-3200 is een all-in-one-printer met iets meer mogelijkheden aan de bedieningskant. De inkjet is voorzien van een 1,44-inch lcd-scherm en kan dubbelzijdig printen. De maximale afdrukresolutie is 5760 x 1440 dpi. Het apparaat ondersteunt diverse papierformaten tot en met A4 en ook verschillende envelop- en fotopapierformaten accepteert de printer.

De geïntegreerde flatbed-scanner haalt een optische scanresolutie van 1200 x 2400 dpi, met 48-bit kleurdiepte bij de invoer en 24-bit bij de uitvoer. De XP-3200 gebruikt vier losse cartridges en heeft een papierlade voor standaard papier; randloos printen behoort ook tot de mogelijkheden. De printsnelheid ligt rond de 10 pagina’s per minuut in zwart en 5 in kleur. Voor verbinding met je netwerk is wifi aanwezig, plus usb voor directe koppeling. Apple AirPrint wordt ondersteund.

HP Smart Tank 5108 - Multifunctionele printer

De HP Smart Tank 5108 is een inkjet all-in-one met navulbare inkttanks in plaats van losse cartridges. De printer kan scannen en kopiëren. De papierlade heeft volgens de gegevens plaats voor 100 vellen en ondersteunt verschillende formaten, met een formaatbereik tot ongeveer 215,9 x 355,6 mm.

Bij de printspecificaties wordt een snelheid van ongeveer 12 pagina’s per minuut in zwart en 5 in kleur genoemd en automatisch dubbelzijdig afdrukken is eveneens mogelijk. De scanner is een flatbedscanner en ondersteunt enkelzijdige scans; automatische documentinvoer en automatisch dubbelzijdig scannen zijn niet aanwezig. De verbinding met netwerk gaat via wifi en je kunt de printer direct via usb aansluiten.

▼ Volgende artikel
PlayStation State of Play: hier kijk je vanavond om 23:00 uur
Huis

PlayStation State of Play: hier kijk je vanavond om 23:00 uur

Sony PlayStation zendt aanstaande donderdagavond om 23:00 uur Nederlandse tijd een nieuwe State of Play-livestream uit. Martin, Simon en Jacco kijken live met je mee!

Er gingen al geruchten over de komst van de State of Play, en die blijken nu dus te kloppen. Nate the Hate, de insider die wel vaker de komst van aan games gerelateerde presentaties op voorhand lekt, claimde dat onlangs namelijk al.

Op PlayStation Blog schrijft Sony dat de presentatie meer dan zestig minuten beslaat en "nieuws, gameplay-updates en aankondigingen van gamestudio's verspreid over de wereld" bevat voor aankomende PlayStation 5-games. Daarbij zullen er zowel games van PlayStation Studios zelf als andere bedrijven de revue passeren.

Zoals gezegd wordt de State of Play op donderdag 12 februari om 23:00 uur Nederlandse tijd uitgezonden, en zal deze te zien zijn via YouTube en Twitch. De presentatie zal ook hieronder te zien zijn zodra hij begint. Uiteraard streamen we de presentatie ook op Twitch, YouTube en TikTok!

Over de precieze inhoud van de State of Play-presentatie is nog niets bekend. Wel is het opvallend dat de presentatie meer dan een uur duurt, wat het een van de langste State of Play-presentaties tot dusver maakt.

Watch on YouTube

Wat is er te zien in de nieuwe State of Play?

Sony brengt dit jaar in ieder geval Saros, Marathon en Marvel's Wolverine uit, maar van die laatste is inmiddels bevestigd dat de game in de lente van dit jaar een update krijgt.

Verder werd vorige week een nieuwe Horizon-game met een focus op multiplayergameplay aangekondigd, genaamd Horizon Hunters Gathering. We weten ook dat The Last of Us-ontwikkelaar Naughty Dog aan hun nieuwe game Intergalactic: The Heretic Prophet werkt, en volgens geruchten wordt er bij PlayStation Studios ook een nieuwe God of War-game ontwikkeld met metroidvania-elementen.

Andere titels die vermoedelijk voorbijkomen zijn: Resident Evil Requiem, Helldivers 2, Marvel Tokon: Fighting Souls, Ace Combat 8, Marathon en Phantom Blade Zero.

Kunnen we dan helemaal geen verrassingen verwachten? Volgens geruchten werkt Sony Santa Monica al een tijdje aan een tweedimensionale God of War-game met Kratos' broer Deimos in de hoofdrol, en vermoed wordt dat deze eindelijk wordt aangekondigd. Sowieso zijn er veel God of War-geruchten: ook zou er gewerkt worden aan een heruitgave van de eerste drie delen en spin-off met personages Atreus in de hoofrol.