SockStat er et all-cound-line-verktøy som følger med FreeBSD. Den ser enorm bruk i å undersøke nettverkstilkoblinger og åpne stikkontakter. I FreeBSD viser den navn og status for bakgrunns- og forgrunnen prosesser som har fått en nettverksport til å låse opp. Du kan til og med tilpasse den for å ordne kommunikasjonslistene på tilkoblingsstatus, IP -versjoner, hvilke porter som blir lyttet til av spesifikke programmer osv., og forenkle resultatene basert på sokkeleierskap og deskriptorer for kommunikasjonssokkene. Med SockStat kan du også se alle intrikate detaljer om hvert av UNIX -domenetakene/IPC. Et passende trekk vil være å integrere SockStat med GREP -filteret for å tredoble funksjonaliteten og få mest mulig ut av det.
La oss se på noen av de pene tingene vi kan trekke av med Sockstat på FreeBSD.
Oppgi arbeidsportene på FreeBSD med Sockstat
SockStat -kommandoen viser alle stikkontaktene som for øyeblikket åpnes i et FreeBSD -system. Skriv inn SockStat -kommandoen som ikke er brukt med noen av flaggene eller alternativene for å se listen over åpne stikkontakter:
$ SOCKSTAT
La oss ta et øyeblikk og gå over hva hver av kolonnetikettene i utgangen betyr. Den første kolonnen fra venstre er merket brukere, og den viser alle brukerkontoer (røtter, mysql) som hver sokkel tilhører. Den andre kolonneoverskriften er kommando, og denne kolonneoverskriften viser alle kommandoene som hadde satt hver stikkontakt til å åpne. PID -kolonnen og FD -kolonnene viser henholdsvis prosess -ID -er og filbeskrivelser av stikkontaktene. Kolonnen Headed Proto viser alle sokkeltyper Transportprotokoller koblet til hver åpnet port. De to siste kolonnene er den lokale adressen og utenlandske adressen. Den første av disse to viser den lokale IP -adressen for hver åpne stikkontakt. Mens sistnevnte indikerer hvilke IP -adresser som er koblet til hver av disse stikkontaktene.
Liste over spesifikke versjoner av åpnede porter i FreeBSD
For å liste opp åpnede stikkontakter med en spesifikk protokollversjon, for eksempel, for eksempel IPv4 -versjonen, legg til et -4 -flagg til slutten av SockStat -kommandoen:
$ SOCKSTAT -4
Du kan også ha den til å presentere en liste over andre versjoner, for eksempel
$ SOCKSTAT -6
Skal vise alle stikkontaktene med IPv6.
Liste opp åpne stikkontakter basert på TCP/UDP i FreeBSD
Legg til -P -flagget i SockStat -kommandoen for å ha listen over åpne stikkontakter presentert basert på TCP eller UDP. Du må også legge til protokollens argumentnavn i kommandoen, som du kan slå opp ved å gå over til /etc /protokoller og sjekke filen der. For å bare ha TCP -baserte stikkontakter, skriv inn følgende kommando:
$ sockstat -p tcp
Tilsvarende kan du kortliste basert på UDP:
$ sockstat -p udp
Disse to kan kobles sammen veldig enkelt:
$ sockstat -p tcp, udp
Foreløpig utvider ikke Sockstat sin støtte til ICMP -protokollen.
Vis stikkontakter med spesifikke portnumre
For å se alle de åpne stikkontaktene, både TCP og UDP, mens du har listen arrangert basert på portnumre (både lokale og ellers), skriver du inn SockStat -kommandoen med passende flagg:
$ SOCKSTAT -P TCP -P 443
$ sockstat -p udp -p 53
$ SOCKSTAT -P TCP -P 443,53,80,21
I kommandoene ovenfor viser den første TCP HTTPS -port, den andre UDP DNS -portene, mens den tredje viser begge deler.
Se de åpne portene som blir lyttet til på freebsd
Med -L -flagget lagt til SockStat -kommandoen, vil du bli presentert åpen stikkontakt som for øyeblikket lytter gjennom protokollsuiten og alle åpnede UNIX -domenetakene, så vel som alle navngitte rør.
$ SOCKSTAT -L
Liste portene som lytter aktivt på nettverket
Legg til -l- og -s -flaggene i SockStat -kommandoen for å ha de åpne TCP -portene ordnet etter deres lyttestatus.
$ sockstat -46 -l -s
UDP kan ikke vises som en ikke-nettverksprotokoll, og beholder dermed ingen data om lyttestatus.
Arranger åpne porter etter appen/kommandoen ved hjelp av dem
Her kommer den delen der sammenkobling av SockStat -kommandoen med GREP -verktøyet kommer godt med; Med GREP -verktøyet kan du ha de åpne portene som er oppført av applikasjonene som for øyeblikket er i ferd med å bruke dem.
Kommandoen du vil bruke for å liste opp de åpne portene som er lenket, spesielt med NTPD -serveren, er:
$ SOCKSTAT -46 | grep ntpd
Du kan gjøre oppføringen mer spesifikk ved å ha den bare til å vise tilkoblede stikkontakter ved å legge til -C -flagget til kommandoen ovenfor:
$ SOCKSTAT -46 -C | grep ntpd
Vis alle UNIX -stikkontakter
Ha alle UNIX-domenetakene som er oppført ved å legge U- et flagg til SockStat-kommandoen:
$ SOCKSTAT -U
Dette skal også vise de navngitte rørene sammen med UNIX -stikkontaktene.
Arranger åpne porter med HTTPS tilkoblede protokoller
For å ha listen vises av HTTPS -protokollen for hver sokkel, bruk kommandoen nedenfor:
$ SOCKSTAT -46 -S -P TCP -P 443 -C
Liste over HTTP eksterne stikkontakter
Du kan også liste opp alle eksterne stikkontakter som for øyeblikket bruker HTTP -protokollen. Kjør en av følgende kommandoer i terminalen:
$ SOCKSTAT -46 -C | Egrep '80 | 443 '| awk 'skriv ut $ 7' | uniq -c | Sorter -nr
$ SOCKSTAT -46 -C -P 80,443 | grep -v adresse | awk 'skriv ut $ 7' |
uniq -c | Sorter -nr
Finn antall ganger en IP -adresse sendte forespørsler
For å finne ut hvor mange tilkoblingsforespørsler som er mottatt fra hver IP -adresse, kan du kjøre følgende kommando:
$ SOCKSTAT -46 -C | Egrep '80 | 443 '| awk 'skriv ut $ 7' | Cut -D: -F1 | uniq -c | Sorter -n
Ved å avgjøre om det er et uvanlig høyt antall tilkoblingsforespørsler sendt med en IP -adresse, kan du identifisere at det er noe ondsinnet intensjon og kan positivt legge inn det gule varselet og ta passende sikkerhetsprotokoller.
Send en DNS -spørring fra TCP -kontakten
Du kan sende en DNS -spørring ved hjelp av TCP -kontakten på konsollen, forutsatt at nettverket er fritt for enhver DNS -trafikk. Kjør kommandoen nedenfor:
$ dig +tcp www.domene.com @127.0.0.1
Innpakning
Så du har lært mye om å bruke SockStat -kommandoen og dens variasjoner med flagg og brytere. Du så også hvordan det brukes på forskjellige måter å presentere nettverksdiagnostikken i forskjellige preferanser og bruke denne informasjonen til å utføre mangefasettert feilsøking i FreeBSD. Det er mye i seg selv, men nå som du er kjent med disse tingene, bør du vurdere å innlemme SockStat-kommandolinjen med noen kraftige kommandolinjeverktøy, for eksempel NetStat og ISOF.