Med Po­werS­hell SSH kan du komma åt och hantera fjärr­sy­stem från praktiskt taget var som helst. Dessutom erbjuder SSH de­tal­je­ra­de logg­nings­funk­tio­ner som gör det möjligt att övervaka och spåra ak­ti­vi­te­ter på servern på ett om­fat­tan­de sätt.

Vilka är kraven för Po­werS­hell SSH?

Genom att integrera SSH i Windows Po­werS­hell kan du upprätta SSH-an­slut­ning­ar till fjärr­sy­stem och köra SSH-kommandon i ett Po­werS­hell-skript. Detta gör det mycket enklare att hantera och au­to­ma­ti­se­ra uppgifter i dis­tri­bu­e­ra­de IT-in­fra­struk­tu­rer, särskilt i en heterogen miljö där det finns både Windows- och icke-Windows-system.

Här är kraven för att använda SSH i Po­werS­hell:

  • Po­werS­hell-in­stal­la­tion: Se till att Po­werS­hell v6 eller högre är in­stal­le­rat på din lokala dator. Po­werS­hell är van­ligt­vis förinstal­le­rat i Windows, men du måste kon­trol­le­ra att du använder en version som stöder SSH.
  • SSH-klient: Du behöver en SSH-klient i din Po­werS­hell-miljö för att upprätta SSH-an­slut­ning­ar. OpenSSH finns som standard i Windows 10/11 och Windows Server 2019. Om du använder en äldre version av Windows kan du behöva in­stal­le­ra OpenSSH manuellt.
  • SSH-server: SSH-servern är den målserver som du vill ansluta till. Det kan vara en Linux-server, en nät­verk­sen­het eller en annan SSH-kom­pa­ti­bel värd.
  • Nät­verk­såt­komst: Din lokala dator ska ha åtkomst till nätverket och kunna nå den fjär­ran­slut­na SSH-servern. Port 22 måste vara öppen för SSH i brand­vägg­s­reg­ler­na.
  • Po­werS­hell-moduler: Det finns Po­werS­hell-moduler som har ut­veck­lats speciellt för an­vänd­ning av SSH, till exempel modulerna ”PSSession” eller ”Posh-SSH”. Du bör kon­trol­le­ra att mot­sva­ran­de modul är in­stal­le­rad på ditt system för att kunna använda SSH-funk­tio­na­li­te­ten i Po­werS­hell.
  • Auk­to­ri­se­ring­ar: Du behöver ad­mi­nist­ra­törs- eller utökade be­hö­rig­he­ter och ett lösenord eller en SSH-nyckel för att upprätta SSH-an­slut­ning­ar från din lokala dator och få åtkomst till fjärr­ser­vern.

Steg-för-steg-in­struk­tio­ner för hur man använder Po­werS­hell SSH

Innan du kan använda Secure Shell (SSH) i Po­werS­hell måste du kon­fi­gu­re­ra OpenSSH-servern. Därefter kan du starta Po­werS­hell SSH-sessionen och köra kommandon på fjärr­sy­ste­met.

Steg 1: In­stal­le­ra OpenSSH

Klicka på Start-menyn eller skriv in “Po­werS­hell” i sökfältet. Välj Kör som ad­mi­nist­ra­tör. Detta öppnar Windows Po­werS­hell. Du kan använda följande Po­werS­hell-kommando för att in­stal­le­ra OpenSSH-funk­tio­nen på din Windows-dator:

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
po­wers­hell

Steg 2: Starta OpenSSH-tjänsten

När in­stal­la­tio­nen är klar kan du starta OpenSSH-tjänsten:

Start-Service sshd
po­wers­hell

Du kan kon­trol­le­ra om OpenSSH-tjänsten körs:

Get-Service sshd
po­wers­hell

Kör statusen indikerar att sshd fungerar som det ska.

Bild: PowerShell: SSH server service
Get-Service sshd checks the execution of the SSH service.

Steg 3: Starta SSH-ser­ver­tjäns­ten au­to­ma­tiskt

För att aktivera OpenSSH-ser­ver­tjäns­ten varje gång Windows startas om kan du ange följande kommando:

Set-Service -Name sshd -StartupType 'Automatic'
po­wers­hell

Steg 4: Anpassa brand­väg­gen

Om Windows-brand­väg­gen är aktiv bör du lägga till en regel som tillåter SSH-trafik på port 22 (stan­dard­por­ten för SSH).

New-NetFirewallRule -Name 'OpenSSH-Server' -DisplayName 'OpenSSH Server' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
po­wers­hell

Steg 5: Upprätta en SSH-an­slut­ning

Du kan nu logga in med din SSH-server från en annan enhet. För att göra detta öppnar du Po­werS­hell på din kli­ent­da­tor och anger SSH-kommandot med an­vän­dar­namn och ser­ver­a­dress.

ssh username@servername
po­wers­hell

Ersätt “an­vän­dar­namn” med ditt SSH-an­vän­dar­namn och “ser­ver­namn” med IP-adressen eller värd­nam­net för den fjär­ran­slut­na servern. När du startar kommandot ombeds du ange ditt SSH-lösenord, såvida du inte använder SSH-nyckeln för au­ten­ti­se­ring.

Bild: PowerShell: SSH login
Enter the SSH password

Steg 6: Arbeta i SSH-sessionen

När du har upprättat en SSH-an­slut­ning kan du köra kommandon på fjärr­ser­vern som om du var fysiskt inloggad på servern. För att avsluta SSH-sessionen och återgå till den lokala Po­werS­hell kan du använda kommandot exit.

Det finns ett antal SSH-kommandon i Po­werS­hell. Kommandot pwd står för “print working directory” (skriva ut ar­bets­mapp) och visar den aktuella ar­bets­map­pen, till exempel:

Bild: PowerShell SSH commands using PWD as an example
Example for SSH commands in Po­werS­hell

Här är en lista över kommandon som du kan använda i Po­werS­hell SSH:

  • ls/dir: Visar in­ne­hål­let i en katalog
  • cd: Ändrar katalogen på fjärr­ser­vern
  • touch/New-Item: Skapar en ny fil
  • rm/Remove-Item: Tar bort filer eller kataloger
  • mv/Move-Item: Flyttar eller byter namn på filer och kataloger
  • useradd: Lägger till en ny användare
  • scp: Överför filer mellan klient och server

Du hittar fler kommandon i vår översikt över Po­werS­hell-kommandon.

Gå till huvudmeny