Cum se instalează serverul OpenSSH încorporat în Windows 10

În lista de caracteristici opționale care pot fi instalate în Windows 10 se află versiunile beta ale unui client OpenSSH și ale unui server OpenSSH. Clientul vă permite să vă conectați la servere SSH de la distanță direct din linia de comandă Windows, iar serverul permite utilizatorilor de la distanță să se conecteze de la distanță la Windows 10 și să primească un prompt de comandă prin SSH.

Pentru cei care doresc acces la consolă de la distanță la computerele lor cu Windows 10, serverul OpenSSH integrat în Windows 10 poate fi ceea ce căutați. Chiar mai bine, pentru cei care sunt familiarizați cu OpenSSH de la utilizarea acestuia în Linux, versiunea pentru Windows 10 funcționează cam la fel.

În timp ce clientul OpenSSH pentru Windows 10 este foarte ușor de instalat și de utilizat. aflarea modului de a obține OpenSSH Server a fost o adevărată pacoste, deoarece trebuie să faceți o mulțime de modificări nedocumentate la permisiunile & privilegii și generarea cheilor nu funcționează așa cum era de așteptat. Acum, însă, că am rezolvat totul, nu ar trebui să vă ia mai mult de 10 minute să urmați aceste instrucțiuni și să instalați o implementare funcțională a serverului OpenSSH în Windows 10.

Instalarea serverului OpenSSH pentru Windows 10

Primul pas este să faceți clic pe Windows Start Menu () și apoi în câmpul de căutare tastați opțiunea. Se va afișa un rezultat al căutării intitulat Manage optional features (Gestionare caracteristici opționale), pe care trebuie să faceți clic. Acest lucru va deschide ecranul Manage optional features (Gestionare caracteristici opționale), așa cum se arată mai jos.

Manage Optional Features screen

Acest ecran afișează toate caracteristicile opționale Windows instalate în prezent. Acum faceți clic pe butonul Add a feature (Adaugă o caracteristică), așa cum este indicat de săgeata roșie de mai sus. Astfel se va deschide o listă de caracteristici opționale care pot fi instalate. Cele mai multe dintre ele sunt pachete de fonturi, dar dacă derulați în jos, veți vedea o caracteristică numită OpenSSH Server (Beta).

Instalează caracteristica OpenSSH Server

Pentru a instala OpenSSH Server (Beta), pur și simplu selectați-o și faceți clic pe butonul Install. După ce faceți clic pe butonul Install, veți vedea că caracteristica dispare din listă. Acest lucru este normal și nu trebuie să vă faceți griji. Trebuie doar să faceți clic pe săgeata înapoi din stânga sus a ferestrei și veți reveni la lista de caracteristici instalate, dar acum cu OpenSSH Server (Beta) instalat.

Windows 10 OpenSSH Server Installed

Acum puteți închide această fereastră.

După instalare, vor fi fost create două noi servicii Windows numite sshd și sshd-agent, iar fișierele asociate vor fi stocate în folderul C:\Windows\System32\OpenSSH. Lista fișierelor instalate este:

Pentru a finaliza instalarea, ar trebui acum să reporniți computerul.

După ce vă veți conecta din nou, serviciul sshd nu va fi pornit și dacă veți încerca să îl porniți, Windows va raporta că nu are privilegiile necesare pentru ca serviciul să pornească.

Serviciului OpenSSH îi lipsește un privilegiu

Privilegiul lipsă de care are nevoie serviciul este Replace a Process Level Token și trebuie să-l adăugăm la contul NT Service\sshd. Pentru a face acest lucru, deschideți editorul Local Security Policy Editor căutând secpol în meniul Start și selectând rezultatul Local Security Policy care apare.

Când se deschide Editorul de politici locale de securitate, trebuie să extindeți Politici locale și să faceți clic stânga pe Atribuirea drepturilor de utilizator. După ce ați selectat User Rights Assignment, veți vedea diverse privilegii în panoul din dreapta. Derulați în jos până când vedeți privilegiul Replace a process level token (Înlocuirea unui token la nivel de proces) și faceți dublu clic pe el. Acest lucru va deschide proprietățile acelui privilegiu și va afișa conturile sau grupurile cărora le este atribuit în prezent.

Replace a process level token Permission Properties

Acum faceți clic pe butonul Add User or Group (Adăugare utilizator sau grup) și introduceți NT Service\sshd în câmpul Enter the object names to select (Introduceți numele obiectelor de selectat), așa cum se arată mai jos.

Adaugați contul la privilegiu

Când ați terminat, faceți clic pe butonul OK pentru a acorda acest privilegiu lui sshd. Apoi puteți apăsa butonul OK pentru a închide proprietățile și apoi închideți editorul Local Security Policy.

Chiar și cu privilegiul activat, când încercați să porniți serviciul sshd, Windows va afișa eroarea „Windows could not start the sshd service on Local Computer. Eroare 1067: The Process terminated unexpectedly.”

Error 1067 atunci când încercați să porniți serviciul SSHD

Dacă vă uitați în fișierul C:\Windows\System32\OpenSSH\Logs\sshd.log, acesta va afișa erori precum următoarele.

SSHD afișează aceste erori deoarece nu ați generat cheile gazdă care vor fi folosite pentru a cripta traficul între server și client. Pentru a crea aceste chei trebuie să executăm comanda C:\Windows\System32\OpenSSH\ssh-keygen.exe -A de la un prompt de comandă ridicat, astfel încât cheile să fie create în folderul C:\Windows\System32\OpenSSH.

Utilizarea comenzii „ssh-keygen -A” va genera o cheie folosind calea implicită a fișierului de chei, o frază de acces goală, biți impliciți pentru tipul de cheie și un comentariu implicit. În mod normal, aș adăuga o frază de trecere la cheie, dar în versiunea curentă de OpenSSH inclusă în pachet pentru Windows 10 , ssh-keygen va răspunde cu o eroare „failed: invalid argument” atunci când încercați să adăugați o frază de trecere.

Executarea ssh-keygen.exe

Când ssh-keygen a terminat de creat și salvat cheia, vă va aduce înapoi la promptul de comandă, așa cum se arată mai sus. Puteți tasta exit și apăsa enter pentru a ieși din promptul de comandă ridicat.

Din păcate, nu am terminat încă și dacă încercați să porniți serviciul sshd, Windows va răspunde din nou cu o „Eroare 1067”. Acest lucru se datorează faptului că contul NT Service\sshd nu are acces la fișierul C:\Windows\system32\OpenSSH\ssh_host_ed25519_key. Pentru a remedia acest lucru, intrați în proprietățile fișierului ssh_host_ed25519_key și efectuați următoarele modificări:

  • Schimbați proprietarul fișierului în NT Service\sshd.
  • Dați-i lui NT Service\sshd doar permisiunea de citire a acestui fișier.
  • Înlăturați permisiunile pentru toți utilizatorii la acest fișier. De exemplu, contul dvs. conectat va avea permisiuni, care ar trebui să fie eliminate.

Când ați terminat, permisiunile asupra fișierului ssh_host_ed25519_key ar trebui să arate astfel:

Permisiuni bune

Dacă nu setați corect permisiunile, nu veți putea porni serviciul sshd și fișierul jurnal va afișa următoarele erori:

După ce ați setat permisiunile corecte pe fișierul cu cheia privată, puteți porni din nou serviciul sshd. De data aceasta, însă, serviciul sshd va porni și va fi disponibil pentru computere pentru a se conecta.

SSHD Service Started

Acum că serviciul este în funcțiune, vă puteți conecta de la distanță la boxa Windows 10 prin SSH. Mai jos este un exemplu de cum arată când vă conectați prin SSH la un calculator Windows 10. Observați că obțineți un prompt de comandă complet unde puteți rula toate instrumentele de linie de comandă, inclusiv PowerShell.

Windows 10 Command Prompt over SSH

Serviciul sshd este la Automatic (Delayed Start), ceea ce înseamnă că Windows va lansa acest serviciu după ce toate celelalte servicii care sunt setate la Automatic au terminat de pornit. Prin urmare, după ce reporniți un computer, este posibil să dureze câteva minute înainte ca serverul OpenSSH să fie pornit și să poată fi conectat la acesta.

Cu un server OpenSSH care rulează pe Windows 10, ați adăugat un nivel suplimentar de flexibilitate în ceea ce privește modul în care puteți gestiona un computer. Dacă decideți să activați serverul OpenSSH, asigurați-vă că portul 22, pe care ascultă sshd, este accesibil numai de către adresele IP de încredere.

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.