PowerS­hell SSH:n avulla voit käyttää ja hallita etä­jär­jes­tel­miä käy­tän­nös­sä mistä tahansa. Lisäksi SSH tarjoaa yk­si­tyis­koh­tai­sia lo­ki­toi­min­to­ja, joiden avulla pal­ve­li­mel­la ta­pah­tu­vaa toimintaa voidaan seurata ja valvoa kat­ta­vas­ti.

Mitkä ovat PowerS­hell SSH:n vaa­ti­muk­set?

SSH:n in­tegroin­ti Windows PowerS­hel­liin mah­dol­lis­taa SSH-yh­teyk­sien muo­dos­ta­mi­sen etä­jär­jes­tel­miin sekä SSH-ko­men­to­jen suo­rit­ta­mi­sen PowerS­hell-sk­rip­tis­sä. Tämä helpottaa huo­mat­ta­vas­ti tehtävien hallintaa ja au­to­ma­ti­soin­tia ha­jau­te­tuis­sa IT-infra­struk­tuu­reis­sa, etenkin he­te­ro­gee­ni­sis­sa ym­pä­ris­töis­sä, joissa on sekä Windows- että muita kuin Windows-jär­jes­tel­miä.

Tässä ovat SSH:n käytön edel­ly­tyk­set PowerS­hel­lis­sä:

  • PowerS­hel­lin asennus: Varmista, että pai­kal­li­sel­le tie­to­ko­neel­le­si on asennettu PowerS­hell v6 tai uudempi versio. PowerS­hell on yleensä esia­sen­net­tu­na Win­dow­sis­sa, mutta sinun on tar­kis­tet­ta­va, että käytät versiota, joka tukee SSH:ta.
  • SSH-asia­kas­oh­jel­ma: Tarvitset SSH-asia­kas­oh­jel­man PowerS­hell-ym­pä­ris­tös­sä­si SSH-yh­teyk­sien muo­dos­ta­mi­sek­si. OpenSSH on ole­tusar­voi­ses­ti käy­tet­tä­vis­sä Windows 10/11:ssä ja Windows Server 2019:ssä. Jos käytät vanhempaa Windows-versiota, joudut ehkä asen­ta­maan OpenSSH:n ma­nu­aa­li­ses­ti.
  • SSH-palvelin: SSH-palvelin on koh­de­pal­ve­lin, johon haluat muodostaa yhteyden. Se voi olla Linux-palvelin, verk­ko­lait­teis­to tai muu SSH-yh­teen­so­pi­va isäntä.
  • Verk­ko­yh­teys: Pai­kal­li­sel­la tie­to­ko­neel­la­si on oltava pääsy verkkoon ja sen on voitava tavoittaa etä-SSH-palvelin. Portti 22 on oltava avoinna SSH:lle pa­lo­muu­ri­sään­nöis­sä.
  • PowerS­hell-moduulit: On olemassa PowerS­hell-moduuleja, jotka on kehitetty eri­tyi­ses­ti SSH:n käyttöä varten, kuten ”PSSession”- tai ”Posh-SSH”-moduuli. Sinun tulee tarkistaa, että vastaava moduuli on asennettu jär­jes­tel­mää­si, jotta voit käyttää SSH-toi­min­to­ja PowerS­hel­lis­sä.
  • Valtuudet: Tarvitset jär­jes­tel­män­val­vo­jan tai laa­jen­ne­tut oikeudet sekä salasanan tai SSH-avaimen, jotta voit muodostaa SSH-yhteyksiä pai­kal­li­sel­ta tie­to­ko­neel­ta­si ja käyttää etä­pal­ve­lin­ta.

Vai­heit­tai­set ohjeet PowerS­hel­lin SSH-käyttöön

Ennen kuin voit käyttää Secure Shelliä (SSH) PowerS­hel­lis­sä, sinun on asen­net­ta­va OpenSSH-palvelin. Sen jälkeen voit avata PowerS­hell-SSH-istunnon ja suorittaa komentoja etä­jär­jes­tel­mäs­sä.

Vaihe 1: Asenna OpenSSH

Napsauta Käynnistä-valikkoa tai kirjoita ha­ku­palk­kiin ”PowerS­hell”. Valitse Suorita jär­jes­tel­män­val­vo­ja­na. Tämä avaa Windows PowerS­hel­lin. Voit asentaa OpenSSH-omi­nai­suu­den Windows-tie­to­ko­neel­le­si seu­raa­val­la PowerS­hell-ko­men­nol­la:

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

Vaihe 2: Käynnistä OpenSSH-palvelu

Kun asennus on valmis, voit käyn­nis­tää OpenSSH-palvelun:

Start-Service sshd
powers­hell

Voit tarkistaa, onko OpenSSH-palvelu käynnissä:

Get-Service sshd
powers­hell

Käynnissä -tila osoittaa, että sshd toimii oikein.

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

Vaihe 3: Käynnistä SSH-palvelin au­to­maat­ti­ses­ti

Voit ottaa OpenSSH-palvelun käyttöön aina, kun Windows käyn­nis­te­tään uudelleen, kir­joit­ta­mal­la seuraavan komennon:

Set-Service -Name sshd -StartupType 'Automatic'
powers­hell

Vaihe 4: Muokkaa pa­lo­muu­ria

Jos Windowsin palomuuri on käytössä, sinun on lisättävä sääntö, joka sallii SSH-lii­ken­teen portissa 22 (SSH:n ole­tus­port­ti).

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

Vaihe 5: Muodosta SSH-yhteys

Voit nyt kirjautua SSH-pal­ve­li­mee­si toiselta lait­teel­ta. Avaa tätä varten PowerS­hell asia­kas­tie­to­ko­neel­la­si ja kirjoita SSH-komento käyt­tä­jä­tun­nuk­sen ja pal­ve­li­men osoitteen kanssa.

ssh username@servername
powers­hell

Korvaa ”username” omalla SSH-käyt­tä­jä­tun­nuk­sel­la­si ja ”ser­ver­na­me” etä­pal­ve­li­men IP-osoit­teel­la tai isän­tä­ni­mel­lä. Kun suoritat komennon, sinua pyydetään antamaan SSH-sa­la­sa­na­si, ellet käytä tun­nis­tau­tu­mi­seen SSH-avainta.

Kuva: PowerShell: SSH login
Enter the SSH password

Vaihe 6: Työs­ken­te­le SSH-is­tun­nos­sa

Kun olet muo­dos­ta­nut SSH-yhteyden, voit suorittaa komentoja etä­pal­ve­li­mel­la aivan kuin olisit fyy­si­ses­ti kir­jau­tu­nut pal­ve­li­mel­le. Voit lopettaa SSH-istunnon ja palata pai­kal­li­seen PowerS­hel­liin käyt­tä­mäl­lä exit.

PowerS­hel­lis­sä on useita SSH-komentoja. Komento pwd tar­koit­taa ”print working directory” ja näyttää nykyisen työ­kan­sion, esi­mer­kik­si:

Kuva: PowerShell SSH commands using PWD as an example
Example for SSH commands in PowerS­hell

Tässä on luettelo ko­men­nois­ta, joita voit käyttää PowerS­hell SSH:ssa:

  • ls/dir: Näyttää ha­ke­mis­ton sisällön
  • cd: Vaihda ha­ke­mis­toa etä­pal­ve­li­mel­la
  • touch/New-Item: Luo uuden tiedoston
  • rm/Remove-Item: Poistaa tie­dos­to­ja tai ha­ke­mis­to­ja
  • mv/Move-Item: Siirtää tai nimeää tie­dos­to­ja ja ha­ke­mis­to­ja uudelleen
  • useradd: Lisää uuden käyttäjän
  • scp: Siirtää tie­dos­to­ja asiakkaan ja pal­ve­li­men välillä

Lisää komentoja löydät PowerS­hell-ko­men­to­jen yleis­kat­sauk­ses­tam­me.

Siirry pää­va­lik­koon