Hva betyr åpen port??
Før vi går dypere inn i å sjekke åpne porter, la oss først vite hva åpne porter betyr. En åpen port eller en lytteport er porten som noen applikasjoner kjører i. Den kjørende applikasjonen lytter til en eller annen port, og vi kan kommunisere med den applikasjonen over den lytteporten. Hvis et program kjører på en port, og vi prøver å kjøre et annet program på samme port, vil kjernen kaste en feil. Det er en av mange grunner til at vi ser etter åpne porter før vi kjører applikasjoner.
Liste over åpne porter ved hjelp av nmap
Network Mapper, kjent som nmap, er et åpen kildekode og gratis verktøy som brukes til å skanne porter på et system. Den brukes til å finne sårbarheter, oppdage nettverk og finne åpne porter. I denne delen vil vi bruke nmap for å få en liste over åpne porter i et system. Først av alt, oppdater cache på Ubuntu før du installerer nmap:
[e-postbeskyttet]: ~ $ sudo apt-get update -yNmap kan installeres ved hjelp av følgende kommando i terminalen:
[e-postbeskyttet]: ~ $ sudo apt-get install nmap -yEtter å ha installert nmap, bekreft installasjonen ved å sjekke versjonen av nmap:
[e-postbeskyttet]: ~ $ nmap --versjon
Hvis den gir versjonen av nmap, er den perfekt installert, ellers kan du prøve kommandoene ovenfor for å installere nmap riktig. Nmap brukes til å utføre flere relatert til nettverk, og portskanning er en av disse oppgavene. Nmap-verktøyet brukes sammen med mange alternativer. Vi kan få listen over alle tilgjengelige alternativer ved å bruke følgende kommando:
[e-postbeskyttet]: ~ $ man nmapSå, for å skanne din lokale vert, bruk den pågrepne kommandoen nedenfor:
[e-postbeskyttet]: ~ $ sudo nmap localhost
Den vil liste opp alle åpne porter på localhost, som vist i bildet ovenfor. Vi kan også bruke nmap til å skanne eksterne verter:
[e-postbeskyttet]: ~ $ sudo nmap 93.184.216.34Vi kan også bruke vertsnavnet til den eksterne serveren i stedet for en IP-adresse:
[e-postbeskyttet]: ~ $ sudo nmap www.eksempel.comNmap-kommandoen kan også brukes til å skanne en rekke IP-adresser. Spesifiser rekkevidden av IP-adresser i kommandoen, som i kommandoen nedenfor:
[e-postbeskyttet]: ~ $ sudo nmap 192.168.1.1-10Ovennevnte kommando skanner alle IP-adressene fra 192.168.1.1 til 192.168.1.10, og resultatet vil vises i terminalen. For å skanne porter på et undernett kan vi bruke nmap som følger:
[e-postbeskyttet]: ~ $ sudo nmap 192.168.1.1/24Ovennevnte kommando skanner alle vertene med IP-adresser i undernettet definert i kommandoen.
Noen ganger må du skanne porter på tilfeldige verter, som er i forskjellige undernett og ikke er i rekkefølge, så er den beste løsningen å skrive en vertsfil der alle vertsnavnene er skrevet, atskilt med ett eller flere mellomrom, faner eller nye linjer. Denne filen kan brukes med nmap som følger:
[e-postbeskyttet]: ~ $ sudo nmap -iL verter.tekst
Vi kan bruke nmap til å skanne en enkelt port på systemet ved å spesifisere porten ved hjelp av '-p' flagget, sammen med nmap, som i følgende kommando:
[e-postbeskyttet]: ~ $ sudo nmap -p 80 localhost
Utvalget av porter kan også skannes på et system ved hjelp av nmap på følgende måte:
[e-postbeskyttet]: ~ $ sudo nmap -p 80-85 localhost
Vi kan skanne alle portene i et system ved hjelp av nmap:
[e-postbeskyttet]: ~ $ sudo nmap -p- localhost
For å få en liste over de mest åpne portene på systemet ditt, kan du bruke nmap-kommandoen med '-F' flagget:
[e-postbeskyttet]: ~ $ sudo nmap -F localhost
TCP-porter kan skannes på systemet ved hjelp av nmap ved å bare legge til '-T' flagget, sammen med nmap-kommandoen:
[e-postbeskyttet]: ~ $ sudo nmap -sT localhost
På samme måte, for UDP-porter, kan du bruke '-U' flagget med nmap-kommandoen:
[e-postbeskyttet]: ~ $ sudo nmap -sU localhost
Liste over åpne porter ved hjelp av lsof
Kommandoen lsof, også kjent som 'list open files', brukes til å få informasjon om åpne filer som brukes av forskjellige prosesser i UNIX og LINUX, som operativsystemer. For de fleste Linux-distroer kommer dette verktøyet forhåndsinstallert. Vi kan verifisere installasjonen av lsof ved å bare sjekke versjonen av den:
[e-postbeskyttet]: ~ $ lsof -v
Hvis den ikke viser versjonen, er ikke lsof installert som standard. Vi kan fortsatt installere det ved hjelp av følgende kommandoer i terminalen:
[e-postbeskyttet]: ~ $ sudo apt-get update -y[e-postbeskyttet]: ~ $ sudo apt-get install lsof
Vi kan bruke kommandoen lsof sammen med forskjellige alternativer. Listen over alle tilgjengelige alternativer kan vises med følgende kommando i terminalen:
[e-postbeskyttet]: ~ $ man lsofNå, i denne delen, skal vi bruke lsof til å vise porter i et system på forskjellige måter:
[e-postbeskyttet]: ~ $ sudo lsof -i
Ovennevnte kommando har vist alle åpne porter. Vi kan også bruke kommandoen lsof til å vise alle de åpne kontaktene:
[e-postbeskyttet]: ~ $ sudo lsof -n -P | grep LYTT
Vi kan liste opp filtrerte porter basert på en protokoll ved hjelp av lsof. Kjør kommandoen nedenfor for å liste opp alle TCP-tilkoblingstyper:
[e-postbeskyttet]: ~ $ sudo lsof -i tcp
På samme måte kan vi liste opp alle UDP-tilkoblingstyper ved hjelp av lsof på følgende måte:
[e-postbeskyttet]: ~ $ sudo lsof -i udp
Liste over åpne porter ved hjelp av netstat
Netstat, også kjent som nettverksstatistikk, er et kommandolinjeprogram som brukes til å vise detaljert informasjon om nettverk. Den viser både innkommende og utgående TCP-tilkoblinger, rutetabeller, nettverksgrensesnitt osv. I denne delen vil vi bruke netstat til å liste åpne porter på et system. Netstat-verktøyet kan installeres ved å kjøre følgende kommandoer:
[e-postbeskyttet]: ~ $ sudo apt-get update -y[e-postbeskyttet]: ~ $ sudo apt-get install net-tools -y
Etter å ha kjørt kommandoene ovenfor, kan du bekrefte installasjonen ved å sjekke netstat-versjonen:
[e-postbeskyttet]: ~ $ netstat - versjon
Hvis den viser versjonen av nettverktøy, er installasjonen fin, ellers kjører du installasjonskommandoer på nytt. For å få en oversikt over alle tilgjengelige alternativer som kan brukes, sammen med netstat-kommandoen, kjør følgende kommando:
[e-postbeskyttet]: ~ $ man netstatVi kan få en liste over alle lytteportene ved hjelp av netstat-kommandoen i Ubuntu ved å kjøre følgende kommando:
[e-postbeskyttet]: ~ $ sudo netstat -l
Netstat-kommandoen kan også brukes til å filtrere lytte til TCP- og UDP-portene ved å bare legge til et flagg sammen med kommandoen. For å lytte til TCP-portene:
[e-postbeskyttet]: ~ $ sudo netstat -lt
For å lytte til UDP-portene, bruk følgende kommando:
[e-postbeskyttet]: ~ $ sudo netstat -lu
For å få listen over alle UNIX-porter som lytter, kan du kjøre følgende kommando i terminalen:
[e-postbeskyttet]: ~ $ sudo netstat -lx
Liste over åpne porter ved hjelp av ss
SS-kommandoen brukes til å vise informasjon om stikkontakter i et Linux-system. Den viser mer detaljert informasjon om stikkontakter enn netstat-kommandoen. SS-kommandoen er forhåndsinstallert for de fleste Linux-distribusjoner, så du trenger ikke å installere den før du bruker den. Du kan få en liste over alle alternativene, som kan brukes sammen med kommandoen ss, ved å kjøre kommandoen 'mann' med ss:
[e-postbeskyttet]: ~ $ man ssFor å få en liste over all tilkobling uansett tilstand, bruk ss-kommandoen uten flagg:
[e-postbeskyttet]: ~ $ sudo ss
For å få en liste over alle lytterportene, bruk ss-kommandoen med '-l' flagget. Flagget '-l' brukes til å vise bare lytteporter:
[e-postbeskyttet]: ~ $ sudo ss -l
For å få alle de lyttende TCP-porter, kan vi bruke '-t' og '-l' flagget sammen med ss-kommandoen:
[e-postbeskyttet]: ~ $ sudo ss -lt
På samme måte kan vi få en liste over alle UDP-porter som lytter med ss-kommandoen sammen med '-u' og '-l' flagget:
[e-postbeskyttet]: ~ $ sudo ss -lu
SS-kommandoen kan også brukes til å få en liste over alle forbindelser med kilden eller destinasjonsporten. I det følgende eksemplet skal vi få listen over alle forbindelsene med destinasjonen eller kildeporten 22:
[e-postbeskyttet]: ~ $ sudo ss -at '(dport =: 22 eller sport =: 22)'
Du får en liste over alle innkommende og utgående tilkoblinger hvis du har koblet til et eksternt system ved hjelp av ssh.
Konklusjon
For systemadministratorer, sikkerhetspersoner og andre IT-relaterte personer er det viktig å være oppmerksom på de åpne portene på serverne. Linux er rikt på verktøyene som brukes til å diagnostisere nettverk og gir mange verktøy som kan være nyttige for ulike typer nettverksaktiviteter. I denne opplæringen har vi brukt noen verktøy som netstat, ss, lsof og nmap for å se etter åpne porter på Ubuntu. Etter å ha gått gjennom denne artikkelen, vil du enkelt kunne liste opp alle lytteportene på Linux-serveren din på mange måter.