Sisäänrakennetun Windows 10:n OpenSSH-palvelimen asentaminen

Windows 10:n asennettavien valinnaisten ominaisuuksien luetteloon on piilotettu OpenSSH-asiakkaan ja OpenSSH-palvelimen beta-versiot. Asiakkaan avulla voit muodostaa yhteyden etä-SSH-palvelimiin suoraan Windowsin komentoriviltä, ja palvelimen avulla etäkäyttäjät voivat muodostaa etäyhteyden Windows 10:een ja saada komentokehotteen SSH:n kautta.

Jos haluat etäkonsoliyhteyden Windows 10 -tietokoneeseesi, sisäänrakennettu Windows 10:n OpenSSH-palvelin voi olla etsimäsi. Vielä parempi niille, jotka tuntevat OpenSSH:n Linuxin käytöstä, Windows 10 -versio toimii lähes samalla tavalla.

Vaikka Windows 10:n OpenSSH-asiakasohjelma on todella helppo asentaa ja käyttää, OpenSSH-palvelimen käynnistäminen ja käyttäminen oli todella hankalaa, sillä joudut tekemään paljon dokumentoimattomia muutoksia käyttöoikeuksiin & ja avainten generointi ei toimi odotetulla tavalla. Nyt kun olen kuitenkin saanut kaiken selville, ei sinun pitäisi tarvita enempää kuin 10 minuuttia näiden ohjeiden noudattamiseen ja toimivan OpenSSH-palvelintoteutuksen asentamiseen Windows 10:ssä.

Windows 10 OpenSSH-palvelimen asentaminen

Ensimmäisenä askeleena napsauta Windowsin Käynnistä-valikkoa () ja kirjoita sitten hakukenttään vaihtoehto. Esiin tulee hakutulos nimellä Manage optional features (Hallitse valinnaisia ominaisuuksia), jota kannattaa klikata. Tällöin avautuu alla näkyvä Valinnaisten ominaisuuksien hallinta -näyttö.

Valinnaisten ominaisuuksien hallinta -näyttö

Tässä näytössä näkyvät kaikki tällä hetkellä asennetut Windowsin valinnaiset ominaisuudet. Napsauta nyt Lisää ominaisuus -painiketta, kuten yllä oleva punainen nuoli osoittaa. Tämä avaa luettelon asennettavista valinnaisista ominaisuuksista. Useimmat niistä ovat fonttipaketteja, mutta jos selaat alaspäin, näet ominaisuuden nimeltä OpenSSH-palvelin (beta).

Asenna OpenSSH-palvelinominaisuus

Asenna OpenSSH-palvelin (beta) valitsemalla se ja napsauttamalla Asenna-painiketta. Kun napsautat Asenna-painiketta, näet ominaisuuden katoavan luettelosta. Tämä on normaalia eikä siitä tarvitse olla huolissaan. Napsauta vain ikkunan vasemmassa yläkulmassa olevaa takaisin-nuolta, niin pääset takaisin asennettujen ominaisuuksien luetteloon, mutta nyt OpenSSH Server (Beta) on asennettu.

Windows 10 OpenSSH-palvelin asennettu

Voit nyt sulkea tämän ikkunan.

Asennuksen jälkeen on luotu kaksi uutta Windows-palvelua nimeltä sshd ja sshd-agent, ja niihin liittyvät tiedostot on tallennettu kansioon C:\Windows\System32\OpenSSH. Luettelo asennetuista tiedostoista on:

Asennuksen loppuunsaattamiseksi tietokone on nyt käynnistettävä uudelleen.

Kun kirjaudut takaisin sisään, sshd-palvelua ei käynnistetä, ja jos yrität käynnistää sen, Windows ilmoittaa, ettei sillä ole palvelun käynnistämiseen tarvittavia oikeuksia.

OpenSSH-palvelusta puuttuu oikeus

Puuttuva oikeus, jota palvelu tarvitsee, on Replace a Process Level Token, ja se on lisättävä NT Service\sshd-tilille. Avaa tätä varten Local Security Policy Editor etsimällä Käynnistä-valikosta secpol ja valitsemalla avautuva Local Security Policy -tulos.

Kun Local Security Policy Editor avautuu, laajenna Local Policies ja napsauta vasemmalla painikkeella User Rights Assignment. Kun olet valinnut User Rights Assignment (Käyttäjäoikeuksien määritys), näet oikeassa ruudussa erilaisia oikeuksia. Selaa alaspäin, kunnes näet Replace a process level token -oikeudet, ja kaksoisnapsauta niitä. Tämä avaa kyseisen oikeuden ominaisuudet ja näyttää tilit tai ryhmät, joille se on tällä hetkellä määritetty.

Replace a process level token Permission Properties

Klikkaa nyt Add User or Group (Lisää käyttäjä tai ryhmä) -painiketta ja kirjoita Enter the object names to select (Kirjoita valittavien objektien nimet) -kenttään NT Service\sshd (NT-palvelu\sshd) alla olevan kuvan mukaisesti.

Add account to privilege

Kun olet valmis, napsauta OK-painiketta antaaksesi tämän oikeuden sshd:lle. Tämän jälkeen voit sulkea ominaisuudet painamalla OK-painiketta ja sen jälkeen sulkea Paikallinen tietoturvakäytäntö -editorin.

Silloinkin, kun etuoikeus on otettu käyttöön, kun yrität käynnistää sshd-palvelun, Windows näyttää virheilmoituksen ”Windows ei pystynyt käynnistämään sshd-palvelua paikallisessa tietokoneessa. Virhe 1067: The Process terminated unexpectedly.”

Virhe 1067, kun yrität käynnistää SSHD-palvelun

Jos katsot C:\Windows\System32\OpenSSH\Logs\sshd.lokitiedostoa, se näyttää seuraavan kaltaisia virheitä.

SSHD näyttää nämä virheet, koska et ole luonut isäntäavaimia, joita käytetään palvelimen ja asiakkaan välisen liikenteen salaamiseen. Näiden avainten luomiseksi meidän on suoritettava komento C:\Windows\System32\OpenSSH\ssh-keygen.exe -A korotetusta komentokehotteesta, jotta avaimet luodaan kansioon C:\Windows\System32\OpenSSH.

Komennon ”ssh-keygen -A” käyttäminen luo avaimen, jossa käytetään oletusarvoista avaintiedoston polkua, tyhjää salasanaa, oletusarvoista avaintyypin bittiä ja oletusarvoista kommenttia. Normaalisti lisäisin avaimeen salasanan, mutta OpenSSH:n nykyisessä Windows 10 -versiossa ssh-keygen vastaa ”failed: invalid argument” -virheilmoituksella, kun yrität lisätä salasanan.

Ssh-keygen.exe:n suorittaminen

Kun ssh-keygen on luonut ja tallentanut avaimen valmiiksi, ssh-keygen palaa takaisin komentokehotteeseen, kuten edellä on esitetty. Voit kirjoittaa exit ja painaa enteriä poistuaksesi korotetusta komentokehotteesta.

Emme valitettavasti ole vielä valmiita, ja jos yrität käynnistää sshd-palvelun, Windows vastaa jälleen ”Virhe 1067”. Tämä johtuu siitä, että NT Service\sshd-tilillä ei ole pääsyä C:\Windows\system32\OpenSSH\ssh_host_ed25519_key-tiedostoon. Korjaa ongelma menemällä ssh_host_ed25519_key-tiedoston ominaisuuksiin ja tekemällä seuraavat muutokset:

  • Vaihda tiedoston omistajaksi NT Service\sshd.
  • Anna NT Service\sshd:lle vain lukuoikeus tähän tiedostoon.
  • Poista kaikkien käyttäjien oikeudet tähän tiedostoon. Esimerkiksi kirjautuneella tililläsi on oikeuksia, jotka tulisi poistaa.

Kun tämä on tehty, ssh_host_ed25519_key-tiedoston käyttöoikeuksien pitäisi näyttää seuraavalta:

Hyvät käyttöoikeudet

Jos et aseta käyttöoikeuksia oikein, sshd-palvelua ei voi käynnistää ja lokitiedostossa näkyy seuraavat virheet:

Kun olet asettanut yksityisen avaimen tiedostolle oikeat käyttöoikeudet, voit käynnistää sshd-palvelun uudelleen. Tällä kertaa sshd-palvelu kuitenkin käynnistyy ja on tietokoneiden käytettävissä yhteyden muodostamiseen.

SSHD-palvelu käynnistetty

Nyt kun palvelu on käynnissä, voit muodostaa etäyhteyden Windows 10 -laitteeseesi SSH:n kautta. Alla on esimerkki siitä, miltä näyttää SSH-yhteys Windows 10 -tietokoneeseen. Huomaa, että saat täyden komentorivin, jossa voit käyttää kaikkia komentorivityökaluja, myös PowerShelliä.

Windows 10:n komentorivi SSH:n välityksellä

Sshd-palvelun asetuksena on Automaattinen (viivästetty käynnistys), mikä tarkoittaa sitä, että Windows käynnistää tämän palvelun sen jälkeen, kun kaikki muut Automaattiseksi asetetut palvelut ovat lopettaneet käynnistyksen. Siksi tietokoneen uudelleenkäynnistyksen jälkeen voi kestää muutaman minuutin, ennen kuin OpenSSH-palvelin on toiminnassa ja siihen voi muodostaa yhteyden.

Windows 10:ssä toimivan OpenSSH-palvelimen avulla tietokoneen hallintaan on saatu lisää joustavuutta. Jos päätät ottaa OpenSSH-palvelimen käyttöön, varmista, että porttiin 22, jota sshd kuuntelee, pääsevät vain luotetut IP-osoitteet.

Vastaa

Sähköpostiosoitettasi ei julkaista.