Havneforvaltning

Sådan vises åbne porte på Linux?

Sådan vises åbne porte på Linux?

I netværk er en port en interessant funktion. Det er en måde, hvorpå netværkstrafik kan identificere destinationsappen eller -tjenesten. Hver proces / tjeneste får sin unikke port. En port vil altid være knyttet til værtens IP-adresse sammen med protokollen.

Dette er en af ​​mine yndlingsmetaforer til at beskrive, hvad en havn er. Forestil dig et skib fyldt med gods, der rejser til et fjernt land. Hvilke oplysninger er nødvendige for at nå destinationen korrekt? Af enkelheds skyld skal vi sige, at det har brug for landet (IP-adressen) og Havn skibet lægger til.

I denne vejledning skal du tjekke, hvordan du åbner porte på Linux.

Porte på Linux

Havne fungerer som et slutpunkt for kommunikation. Det er et 16-bit tal (0 til 65535 i decimal). Mens rækkevidden er stor, for at gøre det let at bruge, er porte opdelt i tre kategorier. Hver kategori er mærket som området for portværdi:

I Linux er der flere måder at kontrollere de åbne porte på. Som standard forbliver enhver port lukket, medmindre en app bruger den. Hvis en port er åben, skal den tildeles en service / proces.

Liste over åbne porte

Det er lettere at identificere hvilke porte der er i stedet for hvilke porte der er åbne. Derfor indeholder følgende afsnit metoder til at liste alle de porte, der i øjeblikket er i brug. I Linux er der flere værktøjer til rådighed for opgaven. De fleste af dem kommer indbygget i enhver Linux-distro.

At lære, hvilke porte der i øjeblikket er åbne, kan være nyttigt i forskellige scenarier. Det er muligt at konfigurere en dedikeret port til en bestemt applikation. En åben port kan også være en stærk indikation af indtrængen i netværket.

Følgende metoder demonstreres på Ubuntu 20.04.1 LTS.

Liste protokoller og åbne porte fra / etc / services

/ Etc / services-filen indeholder oplysninger om de aktuelt kørende tjenester. Det er en stor fil, så klar til at blive overvældet.

$ cat / etc / services | mindre

Liste over åbne porte ved hjælp af netstat

Netstat-værktøjet er et værktøj til visning af netværksforbindelser til TCP, routingtabeller og forskellige netværksgrænseflader. Det tilbyder også netværksprotokolstatistikker. Ved at bruge netstat kan vi liste alle åbne porte i systemet.

Kør følgende netstat-kommando:

$ netstat -atu

Lad os få en hurtig opdeling af alle de flag, vi brugte i denne kommando.

Her er en anden variation af netstat-kommandoen:

$ netstat -lntu

Der er to nye flag, der bruges i kommandoen. Hvad mener de?

For at få vist PID for processen, der bruger en port, skal du bruge “-p” -flaget:

$ netstat -lntup

Liste over åbne porte ved hjælp af ss

SS-værktøjet er et værktøj til at undersøge soklen. Dets anvendelse svarer til netstat.

For at liste de åbne porte skal du køre følgende ss-kommando:

$ ss -lntu

Flagene ligner netstat. De funktioner, de beskriver, er også ret ens.

Liste over åbne porte ved hjælp af lsof

Kommandoen lsof er at liste åbne filer. Det kan dog også bruges til visning af de åbne porte.

Kør følgende lsof-kommando:

$ lsof -i

For at få de åbne porte i en bestemt protokol (TCP, UDP osv.) definer det derefter efter “-i” -flaget, brug:

$ lsof -i

Liste over åbne porte ved hjælp af nmap

Nmap-værktøjet er et kraftfuldt til udforskning af netværk og sikkerhed / port scanning. Det kan rapportere alle de åbne porte i systemet.

Hvis du vil liste de åbne TCP-porte, skal du køre følgende nmap-kommando. Her er IP-adressen på værtscomputeren:

$ sudo nmap -sT -p- localhost

Her er der to dele af kommandoargumentet.

  • -sT: Dette afsnit fortæller nmap at scanne efter TCP-porte.
  • -s- : Dette fortæller nmap at scanne efter alle 65535 porte. Hvis den ikke bruges, vil nmap kun scanne 1000 porte som standard.

Hvis du har brug for at liste de åbne UDP-porte, skal du køre følgende nmap-kommando:

$ sudo nmap -sU -p- localhost

For at få både de åbne TCP- og UDP-porte skal du bruge følgende kommando:

$ sudo nmap -n -PN -sT -sU -p- localhost

Liste over åbne porte ved hjælp af netcat

Netcat-værktøjet er et kommandolinjeværktøj til læsning og skrivning af data på tværs af netværksforbindelser via TCP- og UDP-protokollerne. Dette værktøj kan også bruges til at liste åbne porte. Det kan udføre tests på en bestemt port eller en række porte.

Den følgende netcat-kommando scanner porten fra 1 til 1000. Netcat-kommandoen udfører som standard scanningen på TCP-protokol:

$ nc -z -v localhost 1-1000

Det kan også udvides til hele listen over mulige porte:

$ nc -z -v localhost 1-65535

Lad os få en hurtig opdeling af flagene.

  • z: Fortæller netcat kun at scanne efter åbne porte uden at sende nogen data
  • v: Fortæller netcat at køre i detaljeret tilstand

For kun at få de åbne porte fra denne liste skal du filtrere output med grep til udtrykket "lykkedes".

$ nc -z -v localhost 0-65535 2> & 1 | grep lykkedes

Hvis du vil udføre scanningen på UDP-protokol, skal du tilføje “-u” -flagget.

$ nc -z -v -u localhost 0-65535 2> & 1 | grep lykkedes

Afsluttende tanker

Som demonstreret er der mange måder at scanne efter åbne porte på Linux. Jeg foreslår, at du prøver alle metoderne, inden du beslutter dig for, hvilken du vil mestre. Hvis du bruger et bestemt værktøj som netcat eller nmap regelmæssigt, er det mest fordelagtigt at mestre de tilknyttede metoder.

Glad computing!

Mus Sådan vender du musens og touchpadsens rulle retning i Windows 10
Sådan vender du musens og touchpadsens rulle retning i Windows 10
Mus og Touchpads gør ikke kun computing let, men mere effektiv og mindre tidskrævende. Vi kan ikke forestille os et liv uden disse enheder, men det er...
Mus Sådan ændres musemarkør og markørstørrelse, farve og skema på Windows 10
Sådan ændres musemarkør og markørstørrelse, farve og skema på Windows 10
Musemarkøren og markøren i Windows 10 er meget vigtige aspekter af operativsystemet. Dette kan også siges om andre operativsystemer, så i sandhed er d...
Gratis og open source-spilmotorer til udvikling af Linux-spil
Denne artikel dækker en liste over gratis og open source-spilmotorer, der kan bruges til at udvikle 2D- og 3D-spil på Linux. Der er mange sådanne spil...