SSH är ett populärt och effektivt protokoll som låter dig logga in och hantera fjärrvärdar från din lokala dator. Den här guiden leder dig igenom olika kommandon som du kan använda för att söka efter aktiva SSH -anslutningar på fjärrvärden.
Notera: beroende på systemkonfiguration kan några av de kommandon vi ska diskutera kräva att du har root eller sudo
privilegier.
1. Använda WHO -kommandot
Det första kommandot du kan använda för att visa aktiva SSH -anslutningar är who
kommando.
De who
kommandot används för att visa vem som för närvarande är inloggad i systemet. Det gör att vi kan se de anslutna användarna och källens IP -adresser.
Att använda who
kommando, helt enkelt ange who
utan några parametrar.

I ovanstående utdata kan du se en debiananvändare ansluten via tty och två SSH -sessioner från en fjärransluten IP -adress.
Du kan också lägga till parametrar till who
kommando för att visa detaljerad information.
Till exempel, för att visa den senaste starten för anslutna användare, lägg till -b -u
flagga:
who -b -u

De who
kommandot erbjuder fler alternativ för att få anpassade resultat. Kolla in den manuella sidan för att lära dig mer.
2. Använda W -kommandot
Nästa kommando som du kan använda för att visa status för olika SSH -sessioner och användare som är anslutna till servern är w
kommando. till skillnad från who
kommandot, w
kommandot ger dig mer information om de löpande processerna för varje användare.
Dessutom, w
kommandot ger dig information om inaktiva SSH -anslutningar, vilket är till stor hjälp när du behöver avsluta dem.
Om du kör kommandot utan andra alternativ bör du få en utmatning som liknar den nedan.

I exemplet ovan, w
kommandot ger detaljerad information, till exempel användarnamn, TTY -metod, käll -IP -adress, inloggningstid, inaktiv tid och mer.
Som who
kommando kan du också använda w
kommando med olika parametrar. Tabellen nedan visar de olika parametrarna du kan använda med w
kommando.
Parameter | Vad den gör |
---|---|
-h, –no-header | Informerar terminalen om att inte skriva ut rubriken |
-u, – ingen ström | Uppmanar terminalen att ignorera användarnamnet eftersom det visar anslutna användares processer och CPU -tid |
-s, –kort | Berättar terminalen att skriva ut en förkortad utskrift – exklusive inloggningstid, JCPU och PCPU |
-f, –från | Aktiverar/inaktiverar FROM -alternativet för utskriften |
-hjälp | Visar de olika w -kommandon alternativ/parametrar och avslutar |
-v, –version | Visar information om versionen och avslutar |
användare | Minskar resultaten till den angivna användaren |
Exemplet nedan visar w
kommando som används med -s
och -f
parametrar för att visa en förkortad utmatning av de aktuella SSH -sessionerna med FROM -delen trunkerad.

Även om det sällan används kan du också använda w
kommando med miljö- och filparametrar. För att lära dig mer om dessa parametrar, överväga man -sidorna.
3. Använda det sista kommandot
Du kan också använda last
kommando för att visa alla anslutna SSH -sessioner. Det sista kommandot visar listan över senast inloggade användare.
Det fungerar genom att kontrollera den angivna filen. Till exempel visar “/var/log/wtmp” alla användare som har loggat in och ut sedan filen skapades. Kommandot ger dig också information om de skapade SSH -sessionerna mellan klienten och servern.
Den allmänna syntaxen för det sista kommandot är:
last
Här är ett exempel.

Eftersom utsignalen från det sista kommandot är massiv kan vi använda grep
kommando för att bara visa de aktiva sessionerna.
Till exempel:
last | grep still

Du kan också ändra utdata från det sista kommandot för att visa detaljerad information.
Till exempel, för att visa hela användarnamn och domäner, kan vi använda -w
flagga.
last -w
Det sista kommandot stöder många alternativ. Här är de vanligaste alternativen för det sista kommandot.
Parameter | Vad den gör |
---|---|
-a, –hostlast | Visar värdnamnet i den sista kolumnen |
-d, –dns | Linux lagrar värdnamnet och IP -adressen för alla fjärrvärdar. Denna parameter förvandlar IP till ett värdnamn |
-fil, –fil | Informerar det sista kommandot för att använda en annan fil än/var/log/wtmp |
-F, –heltid | Uppmaningarna sista för att skriva ut alla inloggnings- och utloggningsdatum och tider |
-i, –ip | På samma sätt som –dns, förutom i stället för att visa värdens värdnamn, visar det IP -numret |
4. Använda kommandot netstat
Vi kan inte glömma det netstat
kommando. Netstat används för att visa alla nätverksanslutningar, nätverksgränssnitt, routningstabeller och mer.
Du kan också använda kommandot netstat för att filtrera efter etablerade eller anslutna SSH -sessioner på din Linux -server:
netstat | grep ssh

Kommandot ovan visar endast de etablerade SSH -anslutningarna.
För att visa alla anslutningar inklusive lyssnande och icke-lyssnande kan vi använda -a
flagga som:
nestat -a | grep ssh

5. Använda kommandot ss
Om du vill lära dig mer information om de anslutna SSH -sessionerna kan du använda ss
kommando, som visar sockeldata, vilket gör att det liknar netstat
.
Till exempel kan vi grep utmatningen från ss
kommando med -a
alternativ (alla) för att visa alla anslutna SSH -sessioner. Syntaxen för det är:
ss -a | grep ssh

Utdata ovan visar alla SSH -anslutningar på fjärrvärden. Detta kommer att inkludera SSHD -demonen.
För att filtrera efter de etablerade SSH -anslutningarna kan du leda tillbaka utmatningen till grep.
ss -a | grep ssh | grep ESTAB

Kommandona ovan returnerar endast de aktiva SSH -anslutningarna.
De ss
kommandot har också massor av andra alternativ som du kan använda för att lära dig olika saker om aktiva serveranslutningar. Till exempel kan du använda -e
flagga för att visa mer om sockelinformationen.
Avslutar
Det är bra att fortsätta övervaka dina fjärrvärdar för obehöriga SSH -inloggningar och vidta nödvändiga åtgärder, till exempel att säkra din server eller inaktivera lösenordsautentisering. Samtidigt kan du också använda omvänd SSH -tunnling för att tillåta extern anslutning till din dator.
Relaterad:
-
Hur man genererar SSH offentliga/privata nycklar på Windows
-
Hur man monterar fjärrkataloger i Linux med SSHFS
-
Så här använder du Windows 10: s OpenSSH -klient istället för PuTTY