Hvad er SS -kommandoen i Linux?

What Is Ss Command Linux



Evnen til at se og forstå netværksstikforbindelser, som de sker i dit Linux -system, kan være værdifuld, når du foretager fejlfinding og får din systemstatus.

Denne vejledning tager dig et indgående kig på kommandolinjeværktøjet ss, der giver os mulighed for at se netværksforbindelser og andre detaljerede oplysninger. Ved at bruge det, du lærer af denne vejledning, bør du forstå og bruge ss -værktøjet til maksimal information og produktivitet.







Lad os komme i gang.



Hvad er ss?

I en nøddeskal er ss et kommandolinjeværktøj, der giver brugerne mulighed for at dumpe oplysninger om netværksstik. Det ligner det populære netstat -værktøj, men det tilbyder flere funktioner og oplysninger end netstat.



Ss giver dig mulighed for at se detaljerede oplysninger om, hvordan din maskine kommunikerer med andre ressourcer, f.eks. Netværk, tjenester og netværksforbindelser.





Ved hjælp af ss -oplysninger kan du tydeligt forstå, hvad der sker, hvornår og hvordan. Det kan være meget praktisk under fejlfindingsprocessen.

Grundlæggende kommandobrug

Det er lige så let at bruge kommandoen ss som at skrive to bogstaver i en terminal og trykke på enter. Selvom det understøtter mange argumenter, viser opkald til ss -kommandoen uden valgmuligheder oplysninger om alle forbindelser, uanset deres tilstand.



Når den bruges uden valgmuligheder, dumper ss -kommandoen mange oplysninger, som du senere kan henvise til. For at gemme output til en fil kan du bruge outputomdirigeringsoperatoren som vist i kommandoen:

sudo ss> output.txt

BEMÆRK : Det er godt at bemærke, at kørsel af ss -kommandoen med og uden sudo -privilegier kan give forskellige output - hvilket betyder, at ss -kommandoen viser oplysninger baseret på brugerkonteksten.

Grundlæggende ss kommandoindstillinger

Som nævnt understøtter ss -kommandoen forskellige muligheder, der giver dig mulighed for at styre output og de viste oplysninger. Du kan se de grundlæggende muligheder ved hjælp af kommandoen:

ss -hjælp

Flere grundlæggende muligheder understøttet af ss -kommandoen inkluderer:

  1. -V eller –version: Giver dig mulighed for at se den installerede version af ss -hjælpeprogrammet.
  2. -H eller –no-header: Dette flag undertrykker overskriftslinjen. Standardoverskriftslinjen for ss-kommandoen indeholder følgende værdier: Netid, State, Recv-Q, Send-Q, Local Address: Port og Peer Address: Port. Undertrykkelse af overskriften er nyttig, når du skal behandle ss -output ved hjælp af andre værktøjer.
  3. -t eller –tcp: Fortæller ss -kommando for kun at vise TCP -forbindelserne.
  4. -a eller –alles: Viser både lytte- og ikke-lytteforbindelser.
  5. -e eller –udvidet: Viser yderligere oplysninger om en netværksstik.
  6. -u eller –udp: Fortæller ss -kommando for kun at vise UDP -forbindelserne.
  7. -s eller –summering: Viser en oversigt over forbindelsesstatistikken.
  8. -l eller –lytter: Viser lyttebøsninger, der ikke er inkluderet som standard.
  9. -p eller –proces: Viser processen ved hjælp af en stikkontakt.
  10. -4 eller –ipv4: Fortæller ss -kommandoen til kun at vise IPv4 -forbindelser.
  11. -6 eller –ipv6: Viser kun IPv6 -forbindelser.
  12. -m eller –hukommelse: Viser brug af socket -hukommelse.

Selvom ovenstående er nogle af de grundlæggende argumenter, du vil bruge, når du arbejder med ss, understøtter det også mange yderligere muligheder. Se vejledningen for mere information.

Vis lytte- og ikke-lytteporte

For at vise oplysninger om både lytte- og ikke -lytteporte kan du bruge -a -flag som vist i kommandoen herunder:

ss -a

Du kan rør output fra ss -kommandoer for mere specifik information ved hjælp af værktøjer såsom grep.

For eksempel:

ss -a | grep ssh

Vis TCP -forbindelser

Ved hjælp af -t -flag med ss -kommandoen kan du filtrere for kun at vise TCP -forbindelser som vist i kommandoen herunder:

ss -t

For at få flere oplysninger kan du angive at vise lytte -TCP -forbindelser ved hjælp af -l og -t flag som vist i kommandoen herunder:

sudo ss -tl

Vis UDP -forbindelser

For at vise alle UDP -forbindelser skal du bruge -l -flag som vist i kommandoen herunder:

sudo ss -au

Forstå Header Line

Som du kan se fra forskellige udgange i kommandoerne ovenfor, viser ss mange oplysninger. Det inkluderer headerformatet, medmindre det udtrykkeligt er angivet ved hjælp af -H -flag, som fjerner headerlinjen.

At forstå overskriftslinjen kan være nyttigt at vise, hvilke oplysninger der er i et bestemt afsnit. Det indeholder følgende rækker:

Stat, Recv-Q, Send-Q, Lokal adresse: Port, Peer-adresse: Port
  1. Stat: State-rækken i overskriften angiver forbindelsens tilstand, f.eks. LYT, ESTABLISHED, CLOSED, TIME-WAIT osv. Denne header-række er nyttig i TCP-forbindelser, da UDP ikke holder styr på pakkernes tilstand, hvilket gør den til en statsløs protokol.
  2. Recv-Q: Dette viser det samlede antal bytes, der ikke er kopieret af programmet, der er sluttet til den specifikke sokkel.
  3. Send-Q: Antallet af bytes, der ikke er ACK af den eksterne vært.
  4. Lokal adresse: Port: Dette viser den lokale stikkontakt og portnummeret, der er bundet til forbindelsen
  5. Peer -adresse: Port: Fjernstik og portnummer bundet til forbindelsen.

Vis processer

For at få processen ved hjælp af den specifikke socket, kan du bruge -p -flag som vist i kommandoen herunder:

sudo ss - tp

Som vist i outputtet ovenfor kan du se processens TCP -forbindelser ved hjælp af stikket, inklusive dets PID.

Filtrering efter forbindelse (TCP) -tilstand

Som du ved, understøtter TCP forskellige tilstande, som vi ikke vil diskutere i denne vejledning. Du kan dog filtrere ss -output for kun at få forbindelser med de understøttede TCP -tilstande.

sudo ss -t tilstand lytter

Du vil bemærke, at output på billedet vist ovenfor ikke inkluderer tilstanden i overskriften, fordi vi filtrerede output ved hjælp af den angivne tilstand. Således vises kun lytteforbindelserne.

Konklusion

I denne vejledning diskuterede vi, hvordan man bruger og forstår ss -kommandoværktøjet. Det er et kraftfuldt værktøj, når du skal se ud over fortegnelsesprocesserne. For at forstå, hvordan det fungerer, kan du lære mere fra den officielle manual.

Overvej følgende ressource:

https://da.wikipedia.org/wiki/Iproute2

http://www.policyrouting.org/iproute2.doc.html