A Windows 10 1809-től és a Windows Server 2019-től kezdve az operációs rendszer rendelkezik az OpenSSH alapú integrált SSH szerverrel. Ebben a cikkben bemutatjuk, hogyan telepíthetünk és konfigurálhatunk egy OpenSSH szervert a Windows 10 rendszerben, és hogyan tudunk távolról csatlakozni egy biztonságos SSH protokoll használatával (nos, csakúgy, mint Linux 🙂).
Telepítheti az OpenSSH szervert a Windows korábbi verzióiban, de ehhez le kell töltenie és telepítenie kell a Win32 OpenSSH portját a GitHubból - Win32-OpenSSH (Https://github.com/powershell/Win32-OpenSSH). A Win32-OpenSSH telepítésére és konfigurálására példa az „SFTP szerver (SSH FTP) telepítése és konfigurálása Windows rendszerben” című cikk található..Tartalom:
- OpenSSH Server telepítése Windows rendszeren
- SSH-kiszolgáló beállítása a Windows rendszerben
- Sshd_config: OpenSSH szerver konfigurációs fájl
- Csatlakozás a Windows 10-hez SSH-n keresztül
OpenSSH Server telepítése Windows rendszeren
Lássuk, hogyan telepítsük az OpenSSH Server összetevőt a Windows 10 1903 rendszerben (a Windows Server 2019 ugyanezt teszi).
Az OpenSSH (mint az RSAT) már szerepel a Windows ezen verzióiban, mint Feature on Demand (FoD).
Ha közvetlen internetkapcsolat van, telepítheti az OpenSSH szervert a PowerShell használatával
Add-WindowsCapability -Online -Név OpenSSH.Server *
Vagy a DISM használatával:
dism / Online / Add-Capability /CapabilityName:OpenSSH.Server~~.0.0.0.0
A Windows 10 rendszerben ez az összetevő az Opciók panelen keresztül is telepíthető (Alkalmazások -> További összetevők kezelése -> Összetevő hozzáadása). Keresse meg a listában Nyissa meg az ssh szervert és nyomja meg a gombot felszerel).
Futtassa az OpenSSH szerver telepítésének ellenőrzéséhez:Get-WindowsCapability -Online | ? Névszerű 'OpenSSH.Ser *'
Állapot: Telepítve
SSH-kiszolgáló beállítása a Windows rendszerben
Az OpenSSH regisztrált szerver után a Windowson meg kell változtatnia a szolgáltatás indításának típusát sshd a szolgáltatás automatikus indításához és indításához a PowerShell használatával:
Set-Service -Name sshd -StartupType 'Automatic'
Start-Service sshd
A nestat használatával ellenőrizze, hogy az SSH-kiszolgáló most fut-e a rendszeren, és vár a csatlakozásra a 22. porton:
netstat -na | talál ": 22"
Ellenőrizze, hogy engedélyezve van-e a Windows Defender tűzfalszabály, amely lehetővé teszi a Windowshoz bejövő kapcsolatok TCP / 22-en keresztüli használatát.
Get-NetFirewallRule -Name * OpenSSH-Server * | válassza a Név, Kijelzőnév, Leírás, Engedélyezve
Név Kijelzőnév Leírás engedélyezve ---- ----------- ----------- ------- OpenSSH-Server-In-TCP OpenSSH SSH Server (sshd) Bejövő szabály az OpenSSH SSH szerver számára (sshd) Igaz
Ha a szabály le van tiltva (engedélyezve = hamis), vagy hiányzik, létrehozhat egy új bejövő szabályt a New-NetFirewallRule paranccsal:
Új-NetFirewallRule -Név sshd -DisplayName 'OpenSSH Server (sshd)' - Engedélyezve True-Irányított bejövő -Protokoll TCP -Action engedélyezése -LocalPort 22
Alapértelmezés szerint a fontos OpenSSH összetevők a következő könyvtárakban vannak tárolva:
- OpenSSH Server futtatható fájlok:
C: \ Windows \ System32 \ OpenSSH \
- Sshd_config konfigurációs fájl (a szolgáltatás első indítása után jött létre):
C: \ ProgramData \ ssh
- OpenSSH Magazine:
C: \ windows \ system32 \ OpenSSH \ logs \ sshd.log
- Authorized_keys fájl és kulcsok:
% USERPROFILE% \. Ssh \
Az OpenSSH szervernek a rendszerbe történő telepítésekor egy új helyi felhasználói sshd jön létre.
Sshd_config: OpenSSH szerver konfigurációs fájl
Az OpenSSH szerver beállításait a% programdata% \ ssh \ konfigurációs fájlban módosíthatjasshd_config.
Például egy adott domain felhasználó (és egy meghatározott domain összes felhasználójának) SSH-kapcsolatának tiltásához vegye fel a következő irányelveket a fájl végére:
DenyUsers winitpro \ [email protected] DenyUsers corp \ *
Csak egy adott tartománycsoporthoz történő kapcsolódás engedélyezése:
AllowGroups winitpro \ sshadmins
Vagy engedélyezheti a hozzáférést a helyi csoporthoz:
AllowGroups sshadmins
Letilthatja a bejelentkezést a rendszergazdai jogokkal rendelkező fiókok alatt, ebben az esetben az SSH-munkamenetben kiváltságos műveletek végrehajtásához runun kell végrehajtania.
Denygroups adminisztrátorok
A következő irányelvek lehetővé teszik az SSH kulcsos elérését (a Windowshoz való hozzáférést az SSH kulcson keresztül a következő cikk részletesebben tárgyalja) és a jelszó:
PubkeyAuthentication igen PasswordAuthentication igen
Megváltoztathatja azt a portot, amelyen elfogadja az OpenSSH kapcsolatokat, a port irányelv sshd_config konfigurációs fájljában.
Az sshd_config konfigurációs fájl bármilyen módosítása után újra kell indítania az sshd szolgáltatásokat:restart-service sshd
Csatlakozás a Windows 10-hez SSH-n keresztül
Most megpróbálhat csatlakozni a Windows 10-hez az SSH-ügyfélen keresztül (gitttel, de a Windows beépített ssh-klienssel.
Az első csatlakozáskor egy általános kérelem jelenik meg, amely hozzáadja a gazdagépet az ismert SSH-gazdagépek listájához.
Kattintson az Igen gombra, és a megnyíló ablakban jelentkezzen be Windows felhasználóként.
Sikeres csatlakozás után a parancssor elindítja a cmd.exe parancshéjat.
admin @ win10tst C: \ Felhasználók \ admin>
A parancssorban különféle parancsokat futtathat, szkripteket és programokat futtathat.
Inkább a PowerShell parancssoron dolgozom. A PowerShell tolmács elindításához futtassa:
powershell.exe
Az OpenSSH alapértelmezett Shellének a cmd.exe fájlról PowerShellre változtatásához hajtsa végre a következő parancsot a beállításjegyzékben:
New-ItemProperty - "HKLM: \ SOFTWARE \ OpenSSH" elérési út -Név DefaultShell-Érték "C: \ Windows \ System32 \ WindowsPowerShell \ v1.0 \ powershell.exe" -PropertyType String -Force
Ezután újra kell indítani az SSH-kapcsolatot, és ellenőriznie kell, hogy a kapcsolat során a PowerShell-héjat használják-e (ezt a meghívó jelzi) PS C: \ Felhasználók \ admin>
).
Az SSH munkamenetben elindult a PowerShell konzol, amelyben a szokásos funkciók működnek: automatikus kitöltés, a PSReadLine modul által végzett színezés, a parancsok előzményei stb. Ha az aktuális felhasználó a helyi adminisztrátorok csoportjának tagja, akkor a szekciójában az összes parancsot megnövelt jogokkal hajtják végre, még akkor is, ha az UAC engedélyezve van.