Jak nainstalovat vestavěný server OpenSSH ve Windows 10

V seznamu volitelných funkcí, které lze nainstalovat do Windows 10, se nachází beta verze klienta OpenSSH a serveru OpenSSH. Klient umožňuje připojit se ke vzdáleným serverům SSH přímo z příkazového řádku systému Windows a server umožňuje vzdáleným uživatelům vzdáleně se připojit k systému Windows 10 a získat příkazový řádek přes SSH.

Pro ty, kteří by chtěli mít vzdálený konzolový přístup ke svým počítačům se systémem Windows 10, může být integrovaný server Windows 10 OpenSSH Server tím, co hledáte. Ještě lepší je, že pro ty, kteří znají OpenSSH z jeho používání v Linuxu, funguje verze pro Windows 10 v podstatě stejně.

Ačkoli se klient OpenSSH pro Windows 10 instaluje a používá opravdu snadno. zjistit, jak zprovoznit OpenSSH Server, bylo skutečné utrpení, protože musíte provést spoustu nedokumentovaných změn oprávnění & a generování klíčů nefunguje podle očekávání. Nyní, když jsem vše vyřešil, by vám však nemělo trvat déle než 10 minut postupovat podle tohoto návodu a nainstalovat funkční implementaci OpenSSH Serveru ve Windows 10.

Instalace OpenSSH Serveru ve Windows 10

Prvním krokem je kliknutí na nabídku Start systému Windows () a poté do vyhledávacího pole zadat možnost. Zobrazí se výsledek hledání označený jako Správa volitelných funkcí, na který je třeba kliknout. Tím se otevře obrazovka Správa volitelných funkcí, jak je znázorněno níže.

Ekrana Správa volitelných funkcí

Tato obrazovka zobrazuje všechny aktuálně nainstalované volitelné funkce systému Windows. Nyní klikněte na tlačítko Přidat funkci, jak je naznačeno červenou šipkou výše. Tím se otevře seznam volitelných funkcí, které lze nainstalovat. Většina z nich jsou balíčky písem, ale pokud přejdete dolů, uvidíte funkci nazvanou OpenSSH Server (Beta).

Instalace funkce OpenSSH Server

Chcete-li nainstalovat funkci OpenSSH Server (Beta), jednoduše ji vyberte a klikněte na tlačítko Instalovat. Jakmile kliknete na tlačítko Instalovat, uvidíte, že funkce ze seznamu zmizí. To je normální a není třeba se tím znepokojovat. Stačí kliknout na šipku zpět v levém horním rohu okna a vrátíte se do seznamu nainstalovaných funkcí, ale nyní s nainstalovaným serverem OpenSSH Server (Beta).

Server OpenSSH v systému Windows 10 nainstalován

Toto okno nyní můžete zavřít.

Po instalaci budou vytvořeny dvě nové služby systému Windows s názvem sshd a sshd-agent a související soubory budou uloženy ve složce C:\Windows\System32\OpenSSH. Seznam nainstalovaných souborů je následující:

Pro dokončení instalace byste nyní měli restartovat počítač.

Po opětovném přihlášení nebude služba sshd spuštěna, a pokud se ji pokusíte spustit, systém Windows ohlásí, že nemá potřebná práva pro spuštění služby.

Službě OpenSSH chybí oprávnění

Chybějící oprávnění, které služba potřebuje, je Replace a Process Level Token a musíme ho přidat k účtu NT Service\sshd. Za tímto účelem otevřete Editor místních zásad zabezpečení tak, že v nabídce Start vyhledáte položku secpol a vyberete zobrazený výsledek Místní zásady zabezpečení.

Po otevření Editoru místních zásad zabezpečení je třeba rozbalit Místní zásady a kliknout levým tlačítkem myši na položku Přiřazení uživatelských práv. Po výběru možnosti Přiřazení uživatelských práv se v pravém podokně zobrazí různá oprávnění. Přejděte dolů, dokud neuvidíte privilegium Nahradit token na úrovni procesu, a dvakrát na něj klikněte. Tím se otevřou vlastnosti tohoto oprávnění a zobrazí se účty nebo skupiny, kterým je aktuálně přiřazeno.

Vyměňte token úrovně procesu Vlastnosti oprávnění

Nyní klikněte na tlačítko Přidat uživatele nebo skupinu a do pole Zadejte názvy objektů k výběru zadejte NT Service\sshd, jak je uvedeno níže.

Přidat účet k oprávnění

Po dokončení klikněte na tlačítko OK, abyste toto oprávnění přidělili sshd. Poté můžete stisknutím tlačítka OK zavřít vlastnosti a následně zavřít editor Místní zásady zabezpečení.

I s povoleným oprávněním se při pokusu o spuštění služby sshd v systému Windows zobrazí chyba „Systém Windows nemohl spustit službu sshd v Místním počítači. Chyba 1067:

Chybu 1067 při pokusu o spuštění služby SSHD

Podíváte-li se do C:\Windows\System32\OpenSSH\Logs\sshd.log, zobrazí se chyby, jako jsou následující.

SSHD zobrazuje tyto chyby, protože jste nevytvořili klíče hostitele, které budou použity k šifrování provozu mezi serverem a klientem. Pro vytvoření těchto klíčů musíme spustit příkaz C:\Windows\System32\OpenSSH\ssh-keygen.exe -A ze zvýšeného příkazového řádku, aby se klíče vytvořily ve složce C:\Windows\System32\OpenSSH.

Příkaz „ssh-keygen -A“ vygeneruje klíč s použitím výchozí cesty k souboru s klíčem, prázdné přístupové fráze, výchozích bitů pro typ klíče a výchozího komentáře. Za normálních okolností bych ke klíči přidal přístupovou frázi, ale v současné přibalené verzi OpenSSH pro systém Windows 10 , ssh-keygen při pokusu o přidání přístupové fráze odpoví chybou „failed: invalid argument“.

Spuštění příkazu ssh-keygen.exe

Když ssh-keygen dokončí vytvoření a uložení klíče, vrátí vás zpět na příkazový řádek, jak je uvedeno výše. Pro ukončení zvýšeného příkazového řádku můžete zadat exit a stisknout enter.

Naneštěstí jsme ještě neskončili, a pokud se pokusíte spustit službu sshd, systém Windows opět odpoví hlášením „Error 1067“. Je to proto, že účet NT Service\sshd nemá přístup k souboru C:\Windows\system32\OpenSSH\ssh_host_ed25519_key. Chcete-li to napravit, přejděte do vlastností souboru ssh_host_ed25519_key a proveďte následující změny:

  • Změňte vlastníka souboru na NT Service\sshd.
  • Přidělte NT Service\sshd pouze oprávnění ke čtení tohoto souboru.
  • Odstraňte oprávnění k tomuto souboru pro všechny uživatele. Například váš přihlášený účet bude mít oprávnění, která by měla být odebrána.

Po dokončení by vaše oprávnění k souboru ssh_host_ed25519_key měla vypadat takto:

Dobrá oprávnění

Pokud oprávnění nenastavíte správně, nebude možné spustit službu sshd a soubor protokolu bude zobrazovat následující chyby:

Pokud máte správně nastavena oprávnění k souboru soukromého klíče, můžete službu sshd opět spustit. Tentokrát se však služba sshd spustí a bude k dispozici pro připojení počítačů.

Služba sshd spuštěna

Teď, když je služba spuštěna, se můžete vzdáleně připojit k počítači se systémem Windows 10 prostřednictvím rozhraní SSH. Níže je uveden příklad, jak to vypadá při připojení SSH k počítači se systémem Windows 10. Všimněte si, že se zobrazí plnohodnotný příkazový řádek, ve kterém můžete spouštět všechny nástroje příkazového řádku, včetně prostředí PowerShell.

Příkazový řádek systému Windows 10 přes SSH

Služba sshd je nastavena na Automatické (odložené spuštění), což znamená, že systém Windows spustí tuto službu po dokončení spouštění všech ostatních služeb, které jsou nastaveny na Automatické. Proto může po restartování počítače trvat několik minut, než bude server OpenSSH spuštěn a bude možné se k němu připojit.

S serverem OpenSSH spuštěným v systému Windows 10 jste získali další úroveň flexibility způsobu správy počítače. Pokud se rozhodnete server OpenSSH Server povolit, ujistěte se, že port 22, na kterém naslouchá sshd, je přístupný pouze pro důvěryhodné IP adresy.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.