Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk az OpenSSH Server (sshd) Windows-specifikus konfigurációját ismerteti.
Az OpenSSH részletes dokumentációt tart fenn a konfigurációs lehetőségekről az interneten, az OpenSSH.com oldalon, ami ebben a dokumentációkészletben nincs megismételve.
OpenSSH konfigurációs fájlok
Az OpenSSH konfigurációs fájlokkal rendelkezik a kiszolgáló és az ügyfél beállításaihoz is. Az OpenSSH nyílt forráskódú, és a Windows Server és a Windows Ügyfél operációs rendszerekhez lett hozzáadva, kezdve a Windows Server 2019-zel és a Windows 10-zel (1809-build). Ennek eredményeképpen az OpenSSH-konfigurációs fájlok nyílt forráskódú dokumentációja itt nem ismétlődik meg. Az ügyfélkonfigurációs fájlok a ssh_config manuális lapon és az OpenSSH-kiszolgáló konfigurációs fájljainál találhatók a sshd_config manuális lapon.
Az SSH-kiszolgáló (sshd) alapértelmezés szerint beolvassa a konfigurációs adatokat %programdata%\ssh\sshd_config, vagy egy másik konfigurációs fájl adható meg a sshd.exe
paraméterrel való -f
indítással. Ha a fájl hiányzik, az sshd létrehoz egyet az alapértelmezett konfigurációval a szolgáltatás indításakor.
Windows rendszerben az OpenSSH-ügyfél (ssh) a konfigurációs fájlból a következő sorrendben olvassa be a konfigurációs adatokat:
- A
ssh.exe
paraméterrel-F
indításával megadhatja a konfigurációs fájl elérési útját és a fájl bejegyzésnevét. - Egy felhasználó konfigurációs fájlja a %userprofile%\.ssh\config webhelyen.
- A %programdata%\ssh\ssh_config rendszerszintű konfigurációs fájlja.
A Windows rendszerben az OpenSSH alapértelmezett shelljének konfigurálása
Az alapértelmezett parancshéj biztosítja a felhasználó által a kiszolgálóhoz SSH-val való csatlakozáskor tapasztalt élményt. A kezdeti alapértelmezett Windows a Windows command shell (cmd.exe). A Windows a PowerShellt is tartalmazza, és a külső parancshéjak is elérhetők a Windowshoz, és a kiszolgáló alapértelmezett rendszerhéjaként konfigurálhatók.
Az alapértelmezett parancshéj beállításához először győződjön meg arról, hogy az OpenSSH telepítési mappája a rendszer elérési útján található. Windows esetén az alapértelmezett telepítési mappa a %systemdrive%\Windows\System32\openssh. Az alábbi parancs megjeleníti az aktuális elérési utat, és hozzáadja az alapértelmezett OpenSSH telepítési mappát.
Parancshéj | Használandó parancs |
---|---|
Parancs | path |
PowerShell | $env:path |
Az alapértelmezett ssh-rendszerhéj konfigurálása a Windows-beállításjegyzékben történik, ha hozzáadja a teljes elérési utat a futtatható rendszerhéjhoz HKEY_LOCAL_MACHINE\SOFTWARE\OpenSSH
a sztringértékben DefaultShell
.
Az alábbi emelt szintű PowerShell-parancs például az OpenSSH-kiszolgáló alapértelmezett rendszerhéját powershell.exe
állítja be (az elérési út beállítása nem vonatkozik az OpenSSH-ügyfélre):
New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -PropertyType String -Force
Windows-konfigurációk az sshd_config fájlban
Windows rendszerben az sshd alapértelmezés szerint a %programdata%\ssh\sshd_config fájlból olvassa be a konfigurációs adatokat, vagy egy másik konfigurációs fájl is megadható a sshd.exe
kapcsolóval való indításkor -f
paraméterrel.
Ha a fájl hiányzik, az sshd létrehoz egyet az alapértelmezett konfigurációval a szolgáltatás indításakor.
Az alábbi elemek a Windows-specifikus konfigurációt biztosítják a sshd_config bejegyzései révén. Más konfigurációs beállítások is előfordulhatnak, amelyek itt nem szerepelnek, mivel ezek részletes ismertetését az online Win32 OpenSSH dokumentációjában találja.
Jótanács
Az OpenSSH-kiszolgáló (sshd) a szolgáltatás indításakor beolvassa a konfigurációs fájlt. A konfigurációs fájl módosításaihoz újra kell indítani a szolgáltatást.
EngedélyezettCsoportok, EngedélyezettFelhasználók, TiltottCsoportok, TiltottFelhasználók
Annak szabályozása, hogy mely felhasználók és csoportok csatlakozhatnak a kiszolgálóhoz, az AllowGroups, az AllowUsers, a DenyGroups és a DenyUsers irányelvek használatával történik. Az engedélyezési/megtagadási irányelvek feldolgozása a következő sorrendben történik: DenyUsers, AllowUsers, DenyGroups és végül AllowGroups. Minden fióknevet kisbetűvel kell megadni. A mintákról és a helyettesítő karakterekről az ssh_config fájlban a sshd_config OpenBSD kézikönyvi oldalára talál további információt.
Ha felhasználó-/csoportalapú szabályokat konfigurál tartományi felhasználóval vagy csoporttal, használja a következő formátumot: user?domain*
.
A Windows több formátumot is lehetővé tesz a tartománynevek megadásához, de ütközhet a szabványos Linux-mintákkal.
Ezért a *
hozzáadásra kerül, hogy lefedje a teljesen minősített tartományneveket (FQDN-eket).
Ez a megközelítés ?
-t használ, ahelyett @
-t, így elkerülve a username@host formátummal való ütközéseket.
A munkacsoport felhasználói/csoportjai és az internetkapcsolattal rendelkező fiókok mindig a helyi fiók nevére lesznek feloldva (nincs tartományrész, hasonló a standard Unix-nevekhez). A tartományfelhasználók és csoportok szigorúan a NameSamCompatible formátumra vannak átalakítva: domain_short_name\user_name. Ehhez a formátumhoz minden felhasználó-csoportalapú konfigurációs szabálynak meg kell felelnie.
Az alábbi példa tiltja a contoso\admin felhasználót a 192.168.2.23 gazdagépről, és letiltja az összes felhasználót a contoso tartományból. Lehetővé teszi azt is, hogy a contoso\sshusers és contoso\serveroperators csoportok tagjai hozzáférjenek.
DenyUsers contoso\admin@192.168.2.23
DenyUsers contoso\*
AllowGroups contoso\sshusers contoso\serveroperators
Az alábbi példa lehetővé teszi a localusers felhasználók számára a bejelentkezést a gazdagépről 192.168.2.23, és engedélyezi az sshusers csoport tagjainak a hozzáférést.
AllowUsers localuser@192.168.2.23
AllowGroups sshusers
Hitelesítési módszerek
Windows OpenSSH esetén az egyetlen elérhető hitelesítési módszer password
és publickey
.
Fontos
A Microsoft Entra-fiókkal történő hitelesítés jelenleg nem támogatott.
JogosultKulcsFájl
Az alapértelmezett érték a .ssh/authorized_keys
. Ha az elérési út nem abszolút, akkor a rendszer a felhasználó kezdőkönyvtárához (vagy profilképének elérési útvonalához) viszonyítva használja, például C:\Users\username. Ha a felhasználó a rendszergazdai csoporthoz tartozik, %programdata%/ssh/administrators_authorized_keys lesz használva.
Jótanács
A administrators_authorized_keys fájl csak az NT Authority\SYSTEM-fiókhoz és a BUILTIN\Rendszergazdák biztonsági csoporthoz tartozó engedélybejegyzésekkel rendelkezik. Az NT Authority\SYSTEM-fióknak teljes hozzáféréssel kell rendelkeznie. A BEÉPÍTETT\Rendszergazdák biztonsági csoportra van szükség a rendszergazdák számára a jogosult kulcsok kezeléséhez, kiválaszthatja a szükséges hozzáférést. Engedélyek megadásához megnyithat egy emelt szintű PowerShell-parancssort, és futtathatja a parancsot icacls.exe "C:\ProgramData\ssh\administrators_authorized_keys" /inheritance:r /grant "Administrators:F" /grant "SYSTEM:F"
.
ChrootDirectory (a támogatás a 7.7.0.0-s verzióban van hozzáadva)
Ezt az irányelvet csak sftp-munkamenetek támogatják. Egy távoli munkamenet cmd.exe
nem venné figyelembe a ChrootDirectory
. Az sftp-only chroot-kiszolgáló beállításához állítsa be a ForceCommand
-t belső sftp-re. Az scp-t chroottal is beállíthatja, ha olyan egyéni rendszerhéjat implementál, amely csak az scp-t és az sftp-t engedélyezi.
GSSAPI hitelesítés
A GSSAPIAuthentication
konfigurációs argumentum megadja, hogy engedélyezve van-e a GSSAPI-alapú felhasználói hitelesítés. Az alapértelmezett érték a GSSAPIAuthentication
nem.
A GSSAPI-hitelesítéshez az OpenSSH-ügyfél használatakor a -K
gazdagépnevet meghatározó kapcsolót is használni kell. Másik lehetőségként létrehozhat egy megfelelő bejegyzést az SSH-ügyfélkonfigurációban. Windows rendszerben az OpenSSH-ügyfél alapértelmezés szerint beolvassa a konfigurációs adatokat %userprofile%.ssh\config fájlból.
Láthat egy példa GSSAPI OpenSSH-ügyfélkonfigurációt:
# Specify a set of configuration arguments for a host matching the pattern SERVER01.contoso.com
# Patterns are case sensitive
Host SERVER01.contoso.com
# Enables GSSAPI authentication
GSSAPIAuthentication yes
# Forward (delegate) credentials to the server.
GSSAPIDelegateCredentials yes
Fontos
A GSSAPI csak Windows Server 2022, Windows 11 és Windows 10 xxxx rendszeren érhető el.
HostKey
Az alapértelmezett értékek a következők:
#HostKey __PROGRAMDATA__/ssh/ssh_host_rsa_key
#HostKey __PROGRAMDATA__/ssh/ssh_host_dsa_key
#HostKey __PROGRAMDATA__/ssh/ssh_host_ecdsa_key
#HostKey __PROGRAMDATA__/ssh/ssh_host_ed25519_key
Ha az alapértelmezett értékek nem jelennek meg, az sshd automatikusan létrehozza őket egy szolgáltatás indításakor.
Mérkőzés
Megfelel a feltételeknek egy vagy több kritérium alapján. Egyezés esetén a rendszer a következő konfigurációs argumentumokat alkalmazza. Az egyezések az AllowGroups, AllowUsers, DenyGroups, DenyUsers szakaszban szereplő mintaszabályokat használják. A felhasználó- és csoportneveknek kisbetűsnek kell lenniük.
Root-bejelentkezés engedélyezése
Windows rendszeren nem alkalmazható. Ha meg szeretné akadályozni, hogy a rendszergazdák bejelentkezhessenek, használja a Rendszergazdák parancsot a DenyGroups irányelvvel .
SyslogFacility
Ha fájlalapú naplózásra van szüksége, használja a LOCAL0 fájlt. A naplók%programdata% \ssh\logs alatt jönnek létre. Bármely más érték esetén, beleértve az alapértelmezett értéket is, az AUTH a naplózást az ETW-be irányítja. További információ: Naplózási lehetőségek a Windowsban.
Konfigurációs argumentumok
A következő konfigurációs argumentum a Windows Server 2022, a Windows 11 és a Windows 10 xxxx rendszerben érhető el:
- GSSAPI hitelesítés
A következő konfigurációs argumentumok nem érhetők el a Windows Serveren és a Windows-ügyfélen futó OpenSSH-verzióban:
- AcceptEnv
- StreamLokálisTovábbítástEngedélyez
- AuthorizedKeysCommand
- AuthorizedKeysCommandUser (felhasználó)
- JogosítottAlanyokParancs
- EngedélyezettPrincipálékParancsFelhasználó
- ExposeAuthInfo
- GSSAPICleanup hitelesítő adatok
- GSSAPIStrictAcceptorCheck
- HostalapúElfogadottKulcsTípusok
- Hosztalapú hitelesítés
- SzolgáltatásalapúCsakAzAdatcsomagbólSzármazóNeveketHasználja
- IgnoreRhosts
- IsmeretlenFelhasználókFigyelmenKívülHagyása
- KbdInteractiveAuthentication
- KerberosAuthentication
- Kerberos AFS token megszerzése
- Kerberos vagy helyi jelszó
- Kerberos-jegytakarítás
- PermitTunnel
- Felhasználói környezet engedélyezése
- Felhasználói engedély RC
- PidFile (folyamat azonosító fájl)
- UtolsóNaplóNyomtatás
- PrintMotd
- RDomain
- StreamLocalBindMask
- StreamLocalBindUnlink
- StrictModes
- X11DisplayOffset
- X11 továbbítás (X11Forwarding)
- X11UseLocalhost
- XAuthLocation