Kend dit netværk ud og ind ved regelmæssigt at tjekke for åbne porte med disse Linux-kommandoer.

Åbne netværksporte er de nemmeste adgangspunkter til dit netværk. Nogle gange kan der være uønskede tjenester, der kører på porte, der er eksternt synlige fra internettet. I tilfælde af at disse tjenester er sårbare, vil dit netværk være i konstant trussel om et angreb, da hele internettet hver dag bliver massescannet for sårbare tjenester på åbne porte.

Lær, hvordan du kan scanne og se åbne porte på dine Linux-systemer, så du kan forsvare dit netværk mod trusler.

Hvad er netværksporte?

Netværksporte er logiske adgangspunkter på dit system, der kan bruges som en kanal til at være vært for flere tjenester. En port er repræsenteret af et 16-bit heltal, så det højeste portnummer er 65535.

Du kan tænke på porte som vinduer og døre til et hus - dybest set alle de forskellige indgangspunkter til et hus eller en computer. Porte er af tre typer: systemporte (1-1023), registrerede porte (1024-49151) og flygtige eller dynamiske porte (49152-65535).

instagram viewer

Når du starter et program, der kræver forbindelse til internettet, bruger det dynamiske porte til at transmittere og modtage data over netværket. Men når du starter en webserver eller en SSH-server, binder den sig typisk til systemporte eller registrerede porte.

For HTTP-tjenende webservere er standard systemporten 80, og for SSH er den 22. Disse regler, såsom rækkevidden af ​​porte, er udviklet af Internet Assigned Numbers Authority (IANA). Du kan gå igennem RFC vedrørende porte for at få en komplet liste over alle porte og deres funktioner.

Det er vigtigt, at du kender mest almindeligt sårbare havne så du kan sikre dig, at de er lukkede eller beskyttede.

1. Tjek for åbne porte med netstat

netstat er et populært værktøj, som du kan bruge til at se netværksstatistikken for dit Linux-system. Det er en del af net-tools-pakken.

Net-tools-pakken er nu afskrevet på grund af manglende korrekt vedligeholdelse fra udvikleren. Dette er også grunden til, at du kan støde på en "ifconfig: kommando ikke fundet" fejl når du kører den populære ifconfig-kommando på Linux.

Så på moderne systemer skal du muligvis først installere net-tools-pakken, og derefter vil du være i stand til at køre netstat-kommandoen. Sådan tjekker du for åbne porte med netstat:

netstat -tuln

Forklaring af kommandoen:

  • -t viser TCP-porte.
  • -u viser UDP-porte.
  • -l viser lytteporte. Udskift dette med -en hvis du vil se alle havne, uanset deres tilstand.
  • -n viser den numeriske værdi af portene i stedet for at løse til tjenestenavne. Vis for eksempel port 22 i stedet for SSH, dvs. den service, der kører på porten.

2. Tjek for åbne porte med ss

ss er den moderne ækvivalent til netstat-værktøjet. Du finder dette forudinstalleret i alle moderne Linux-distributioner. Syntaksen til at kontrollere åbne porte med ss er identisk med netstat.

Sådan tjekker du for åbne porte med ss:

ss -tuln

Forklaring af kommandoen:

  • -t viser TCP-porte.
  • -u viser UDP-porte.
  • -l viser lytteporte. Udskift dette med -en hvis du vil se alle havne, uanset deres tilstand.
  • -n viser den numeriske værdi af portene i stedet for at løse til tjenestenavne. Vis for eksempel port 21 i stedet for FTP, dvs. den service, der kører på porten.

3. Tjek for åbne porte med Nmap

Nmap er et af de mest populære værktøjer inden for cybersikkerhed og netværk. Det er et fast navn, når det kommer til netværkssikkerhedspenetrationstest. Dens primære anvendelse er portscanning, så du får ikke kun information om de porte, der er åbne i dit system, men også om de er sårbare og kan udnyttes.

Desuden, hvis du ønsker at tjekke åbne porte i et fjernsystem med IDS/IPS opsat og firewalls på plads, skal du ikke bekymre dig, fordi Nmap også kan omgå firewalls og IDS/IPS med de rigtige switches.

Tjek dette ud omfattende guide om Nmap for begyndere at udforske de forskellige funktioner i Nmap og hvordan man bruger dem. Selvom du kan, anbefales det ikke at forsøge at omgå firewalls, da det ikke er helt pålideligt, så det er bedst, at du SSH ind på fjernserveren og derefter kører Nmap på den lokalt.

Her er kommandoen til at tjekke for åbne porte med Nmap:

nmap -sTU -sV  -T 5 --min-rate 9000 --min-parallelisme 9000 --initial-rtt-timeout 50ms --max-rtt-timeout 3000ms --max-genforsøg 50 -Pn --disable-arp-ping -n -- script vuln, exploit, auth -v -oX 

Forklaring af kommandoen:

  • -sTU indstiller scanningstypen til TCP Connect og UDP-scanning.
  • -T 5 indstiller timingskabelonen til aggressiv for lynhurtige scanninger (anbefales ikke på et ubeskyttet system, da det kan resultere i et DoS-angreb).
  • -sV aktiverer servicescanning.
  • --min-sats 9000 fortæller Nmap at sende 9000 pakker i sekundet.
  • --initial-rtt-timeout 50ms fortæller Nmap til at begynde med at vente 50ms på et svar på hver SYN-pakke, den sender.
  • --max-rtt-timeout 3000ms fortæller Nmap at vente i maksimalt 3000ms på et svar.
  • --min-parallelisme 9000 indstiller minimumsantallet af samtidige scriptkørsler til 9000.
  • --max-forsøg igen 50 beder Nmap om at prøve igen 50 gange for at oprette forbindelse til en port.
  • -Pn deaktiverer ping-probing.
  • --deaktiver-arp-ping deaktiverer ARP-sondering.
  • -n deaktiverer DNS-opløsning.
  • --script vuln, exploit, auth kører tre scripts for at teste for forskellige typer sårbarheder i de opdagede porte.
  • -v returnerer et detaljeret output.
  • -okse gemmer resultater i en XML-fil.
  • -6 Valgfri parameter til at scanne IPv6-adresser.

4. Tjek for åbne porte med lsof

Kommandoen lsof i Linux bruges til at vise åbne filer. Men hvis du tilføjer et par kontakter til det, vil du være i stand til at se de åbne internetforbindelser og porte på din lokale maskine. Sådan tjekker du for åbne porte med lsof:

lsof -i -n

Forklaring af kommandoen:

  • -jeg viser alle netværks- og internetfiler.
  • -n løser ikke værtsnavne.

5. Tjek for åbne porte med netcat

netcat er et kommandolinjeværktøj, der lader dig læse og skrive fra og til TCP/UDP-forbindelser. Bemærk, at dette kun er en funktion ved netcat. Du kan tjekke dens manualside ved hjælp af mand netkat kommando for at udforske alle dens funktioner og hvordan man bruger dem.

Sådan kan du bruge netcat til at scanne åbne porte:

nc -zv  | grep -v "afviste"

Forklaring af kommandoen:

  • -z indstiller netcat til scannertilstand.
  • -v returnerer et detaljeret output.
  • grep -v "afviste" returnerer outputlinjer uden ordet "afvist". Dette er for at forhindre terminalen i at blive tilstoppet med "forbindelse nægtet" beskeder, når netcat ikke modtager noget output fra en port.
  • 2>&1: Dette er en valgfri switch, som du muligvis skal slå til for at grep kan fungere, når du kører netcat i verbose tilstand. netcat returnerer output til stderr (angivet med 2). Så for at grep outputtet, skal du omdirigere stderr til stdout (angivet med 1) og derefter overføre det til grep.

Jo dybere du kender dit netværk, jo bedre kan du forsvare det

At vide, hvilke porte der er åbne, og hvilke tjenester der kører på dit system, er et godt skridt til at forsvare det mod potentielle eksterne angreb. Dette giver dig mulighed for at søge efter og lukke unødvendige tjenester, finde forældede tjenester og også opdage, om der er nogen ondsindede filer såsom bind eller reverse shell-bagdøre, der kører på din system.

Hvis du er seriøs omkring netværkssikkerhed, bør du overveje at installere og opsætte en IDS-løsning til at overvåge al aktivitet på dit netværk og håndhæve regelsæt for at forhindre uopfordrede forbindelser.