Gå til indhold
atlas

Port

Også kendt som: portnummer, netværksport

Et nummer, der udpeger, hvilket program på en enhed der skal modtage indgående netværksdata.

Kladde - dette opslag er endnu ikke gennemgået.

Formelt

Et 16-bit tal, som TCP/IP bruger sammen med en IP-adresse, så data, der når en enhed, overgives til den rette tjeneste på den. Almindelige tjenester bruger faste numre, fx 25 til e-mail og 443 til HTTPS.

Forklaret enkelt

Hvis gadeadressen får brevet frem til den rigtige bygning, er dette nummer lejlighedsnummeret - det fortæller, hvilken dør i bygningen brevet skal til.

I praksis

Ved et årligt tjek scanner en kommunes IT-driftsansvarlige kommunens servere og finder port 3389, der bruges til fjernskrivebord, åben mod internettet på en gammel server; hun lukker den samme dag.

Hvorfor det betyder noget

Hver åben port er en dør, en angriber kan banke på, og en glemt port fører ofte til en tjeneste, der ikke er patchet; at lukke unødvendige porte er en af de billigste måder at mindske angrebsfladen på.

Teknisk uddybning

En port er et 16-bit felt i TCP- og UDP-headeren (og i SCTP og DCCP) med værdier fra 0 til 65535, hvor port 0 er reserveret. Det er et begreb fra transportlaget: IP og ICMP har ingen porte, og ordet har intet at gøre med de fysiske porte på en switch. En lyttende socket identificeres af adresse og port, og en TCP-forbindelse af hele tuplen: protokol, kildeadresse, kildeport, destinationsadresse og destinationsport. TCP og UDP har hver sit portrum, så TCP 53 og UDP 53 er to forskellige endepunkter, som blot bruges af den samme tjeneste.

IANA fører registret over tjenestenavne og portnumre efter RFC 6335, som deler rummet i systemporte eller velkendte porte (0-1023), brugerporte eller registrerede porte (1024-49151) og dynamiske eller private porte (49152-65535). På Unix-lignende systemer kræver det traditionelt root-rettigheder at binde til en port under 1024 (på Linux kapabiliteten CAP_NET_BIND_SERVICE). Klienter bruger flygtige kildeporte fra et lokalt interval: Windows har brugt IANA-intervallet 49152-65535 siden Vista, mens Linux som standard bruger 32768-60999, der kan ændres i net.ipv4.ip_local_port_range. Registreringen er kun en konvention; ethvert program kan lytte på enhver port, så trafik på 443 er ikke nødvendigvis HTTPS, og firewalls, der alene afgør ud fra portnummeret, kan omgås ved at tunnelere over en tilladt port.

Visse porte går igen i hændelsesrapporter: 22 (SSH), 23 (Telnet, klartekst), 25 (SMTP), 53 (DNS), 80 og 443 (HTTP og HTTPS), 445 (SMB), 3389 (RDP) og databaseporte som 1433 (Microsoft SQL Server), 3306 (MySQL), 5432 (PostgreSQL) og 6379 (Redis). RDP eksponeret mod internettet er en hyppig indgang for ransomware, og SMB på port 445 var spredningskanalen for WannaCry i 2017 via EternalBlue-exploitet.

Portscannere som Nmap klassificerer porte som open (målet svarer på en SYN med SYN/ACK), closed (det svarer med RST) eller filtered (intet svar eller en ICMP unreachable-besked, typisk fordi en firewall kasserer forsøget). En SYN- eller "half-open"-scanning gennemfører aldrig håndtrykket; UDP-scanning er langsommere og mere tvetydig, fordi tavshed både kan betyde åben og filtreret. At flytte en tjeneste til en ikke-standardport mindsker støjen i logs fra automatiske scanninger, men er ikke en kontrol, for en fuld scanning finder den i løbet af minutter. Uventede eksponeringer skyldes ofte port forwarding i NAT eller UPnP på routere, der åbner porte automatisk. Praktiske kontroller er at slå unødvendige tjenester fra (CIS Controls v8, safeguard 4.8), sammenholde lyttende porte (ss -tulpn eller netstat -ano) med en godkendt baseline og jævnligt scanne det eksterne adresserum, som i eksemplet med kommunen.

Hvad du bør lære først

Alt det, dette bygger på - grundlaget først.

  1. Netværk
  2. →IP-adresse
  3. →Protokol
  4. →Port

Relationer

Forudsætter
IP-adresseProtokol
Bruges sammen med
IP-adresse

Kilder og videre læsning

Lærebøger

  • Kurose & Ross, Computer Networking: A Top-Down Approach

Hvor dataene kommer fra

Dette opslag er skrevet af en AI ud fra kilderne ovenfor og er endnu ikke gennemgået af et menneske. Brug det som udgangspunkt, og tjek alt vigtigt mod kilderne.

Se gennemgangskøenForeslå en rettelse på GitHubDette begreb som JSON

Nævnt i

Test dig selv

Indlæser…

Atlas er i beta.