SSH használata a Windows távoli asztali kapcsolatának biztonságos használatához
Működési környezet
- Távoli kapcsolat a Windows rendszerrel
-
- Windows 11 esetén
- Távoli kapcsolat a Windows rendszerből
-
- Windows 10 esetén
- OpenSSH
-
- OpenSSH_for_Windows_8.1p1, LibreSSL 3.0.2
Előfeltételek
- Távoli kapcsolat a Windows rendszerrel
-
- Windows 10 vagy újabb (Pro vagy más kiadás szükséges). Ez azonban nem érvényes, ha az OpenSSH külön is elkészíthető.
- Windows Server 2019 vagy újabb. Ez azonban nem érvényes, ha az OpenSSH külön is elkészíthető.
- Távoli kapcsolat a Windows rendszerből
-
- Windows (a legtöbb verzió lehetséges)
- Windows Server (a legtöbb verzió lehetséges)
Először
Miután Windows-környezetet épített az interneten a felhőben vagy a VPS-ben, gyakran távoli asztali kapcsolatot használ a távoli Windows cél működtetéséhez.
Távoli asztali kapcsolat esetén a kommunikációs tartalom titkosítva van, és ha a felhasználónév és a jelszó nem szivárog ki, mások nem fognak engedély nélkül bejelentkezni. Mindig fennáll az aggodalom, hogy az emberek bárhonnan megpróbálnak bejelentkezni.
Egyes nagyobb felhők tűzfalai elkülönülnek a virtuális gépektől, és van egy funkció a kapcsolati forrás korlátozására. Előfordulhat, hogy ezek a funkciók nem érhetők el minden szolgáltatásban. Különösen az alacsony költségvetésre épülő környezetekben sok esetben előfordulhat, hogy ezek a funkciók nem állnak rendelkezésre.
Ezért ezúttal szeretném a lehető legnagyobb mértékben korlátozni a kapcsolati forrást az SSH funkció hozzáadásával. Mivel a privát kulcsot és a nyilvános kulcsot használják, mindaddig, amíg a privát kulcs nem szivárog ki, a távoli bejelentkezés lehetősége egy másik környezetből a lehető legkisebbre csökkenthető.
Ebben az esetben az OpenSSH-t fogjuk használni az SSH környezet felépítéséhez.
Távoli cél Windows-környezet létrehozása
Hozzon létre egy Windows-környezetet, amely lehetővé teszi a távoli csatlakozást az interneten keresztül. Nem számít, hol épül fel, amíg az interneten keresztül megy, de ehhez az ellenőrzéshez virtuális gépként lesz felépítve a Microsoft Azure. Az Azure-ra való építés lépései nem relevánsak ehhez a tipphez, ezért kihagyom őket. Mivel a rendszer ezúttal a 22-es portot fogja használni, ha az Azure-t használja, győződjön meg arról, hogy a 22-es port kommunikációja áthalad az Azure-beli virtuális gép beállításain.
Ha az Azure-tól eltérő környezetben épít, győződjön meg arról, hogy olyan helyzetben van, hogy távoli asztali kapcsolatot létesíthet a Windows környezetéhez.
Emellett a Windows verzió a Windows 10 vagy újabb, illetve a Windows Server 2019 vagy újabb verziót célozza meg, ami megkönnyíti az OpenSSH-környezet felépítését. Megvalósítható egy korábbi környezetben, de egy kicsit több időt és erőfeszítést igényel, mert külön kell letöltenie és beállítania az OpenSSH-t.
Ebben az esetben az eljárás ugyanaz, mint az SFTP esetében, ezért kérjük, olvassa el az alábbi tippeket.
Az OpenSSH beállítása
Innentől kezdve a távoli Windows környezetben fogunk dolgozni. Először csatlakozzon a távoli célhelyhez távoli asztali kapcsolattal. Ha a felhő vagy a VPS konzolt biztosít, használhatja azt. Mivel ezúttal Windows 11 környezetben működünk, a lépések kissé eltérhetnek más verziókban.
Nyissa meg a Start menüt, és válassza a Beállítások lehetőséget.
Válasszon ki egy alkalmazást.
Válassza az Opcionális szolgáltatások lehetőséget.
Válassza a Show Features lehetőséget.
Az "OpenSSH Server" egy kicsit alacsonyabb a listában, ezért ellenőrizze, majd kattintson a "Tovább" gombra.
Kattintson az Install (Telepítés) gombra.
Amikor a telepítés befejeződött, és az "OpenSSH Server" hozzáadódik az alábbi listához, kész.
Szolgáltatás konfiguráció OpenSSH-hoz
Kattintson a jobb gombbal a Start menüre, és válassza a Számítógép-kezelés lehetőséget.
Válassza a Szolgáltatások lehetőséget a bal oldali listából.
Keresse meg az "OpenSSH SSH Server" elemet a középső listában, kattintson a jobb gombbal, és válassza a "Tulajdonságok" lehetőséget.
Távoli csatlakozáskor azt szeretnénk, hogy az OpenSSH szerver fusson, ezért állítsa az "Indítási típust" "Automatikus" -ra.
Mivel jelenleg nem fut, itt kezdem, beleértve a beállítását is.
Az indítás után kattintson a gombra OK gombot a bezárásához. A listában kell futnia.
OpenSSH beállítása
A kezdeti állapotban a titkos kulccsal történő hitelesítés le van tiltva, ezért állítsa be. Nyissa meg a következő mappát az Intézőben.
- C:\ProgramData\ssh
A fenti mappa azonban rejtett mappa lehet, ezért kérjük, tegye láthatóvá az Explorer beállításainak megadásával.
Van egy fájl a mappában, ezért nyissa meg egy szövegszerkesztővel, például a sshd_config
Jegyzettömbbel.
Mivel ezúttal változtatásokat fogunk végrehajtani, kérjük, másolja és duplikálja biztonsági másolatként sshd_config_old
a módosítás előtt.
PubkeyAuthentication yes
Keres:
Ez az elem arra vonatkozó beállítás, hogy engedélyezze-e a titkos kulcsú hitelesítést.
Alapértelmezés szerint le van tiltva, és azt mondja, hogy , de megjegyzés van kifűzve, yes
ezért törölje a megjegyzést.
A változás előtt
#PubkeyAuthentication yes
A változás után
PubkeyAuthentication yes
PasswordAuthentication yes
Keres:
Ez az elem arra vonatkozó beállítás, hogy engedélyezze-e a jelszó-hitelesítést.
Alapértelmezés szerint engedélyezve van, és még ha engedélyezi is a titkos kulcsú hitelesítést, biztonsági szempontból értelmetlen, ha engedélyezve marad, ezért törölje a megjegyzést, és no
állítsa be.
A változás előtt
#PasswordAuthentication yes
A változás után
PasswordAuthentication no
Kommentálja a következő sort a vége felé: Ez a rendszergazdák csoport kulcsbeállítása, és letiltjuk, mert ebben az esetben támogatjuk a felhasználónkénti bejelentkezést.
A változás előtt
Match Group administrators
AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
A változás után
#Match Group administrators
# AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
Miután a módosítás után OpenSSH SSH Server
mentette a fájlt, indítsa újra a szolgáltatást a beállítások tükrözéséhez.
Ha módosítani szeretné a portot
Ha módosítani szeretné az SSH-portot, módosítsa a következőket.
A változás előtt
#Port 22
A változás után
#Port <任意の番号>
A portszám megváltoztatásával az alapértelmezett portot nem támadják meg, ami erősebb biztonságot eredményez. Másrészt növeli a művelet összetettségét, ezért óvatosnak kell lennie.
Ha módosítja a portszámot, csatlakozáskor a 22-estől eltérő portot kell megadnia.
Személyes és nyilvános kulcsok létrehozása
Ez egy ügyféloldali feladat. Azonban nem igazán számít, hol dolgozik. Ügyeljen azonban arra, hogy ne szivárogtassa ki a létrehozott titkos kulcsot.
Ha Windows 10 vagy újabb, Windows Server 2019 vagy újabb rendszert használ, az OpenSSH-ügyfél alapértelmezés szerint telepítve van, így könnyen létrehozhatja egy paranccsal. Más környezetekben külön OpenSSH klienst kell telepítenie, vagy külön eszközt kell használnia.
A következő tippek az SFTP-re vonatkoznak, de kérjük, olvassa el őket az OpenSSH kliens beállításához.
Az ügyfélkörnyezetben indítson el egy parancssort, a PowerShellt, a terminált vagy bármely olyan eszközt, amely parancsokat hajthat végre.
Mivel fájlt hoz létre, lépjen cd
bármelyik könyvtárba egy paranccsal.
Futtassa a következő parancsot:
ssh-keygen -t rsa -f id_rsa
Beállíthat egy jelszót (jelszót) a kulcshoz, ezért kérjük, adja meg, ha szükséges. Ha jelszót állít be, a biztonság fokozódik, de a későbbi folyamat során növeli a jelszó megadásához szükséges időt és erőfeszítést.
Létrejött egy nyilvános kulcs (id_rsa.pub) és egy titkos kulcs (id_rsa).
A nyilvános kulcs (id_rsa.pub) később kerül a távoli célhelyre. A titkos kulcs bárhol lehet a távoli ügyfélen, de olyan mappában kell lennie, amelyhez csak a biztonsági célokra használt fiók férhet hozzá. Alapvetően úgy gondolom, hogy nincs probléma, ha a kliens oldalon a következő mappába helyezi. Ha OpenSSH klienst használ, alapértelmezés szerint ezt a mappát fogja keresni.
C:\Users\<ユーザー名>\.ssh
Ha nem tudja létrehozni a fenti mappát az Intézőben, a következő paranccsal hozhatja létre.
cd C:\Users\<ユーザー名>
mkdir .ssh
Nyilvános kulcsok elhelyezése
Ez egy távoli művelet.
Helyezze a létrehozott nyilvános kulcsot (id_rsa.pub) a távoli célhelyre.
Helyezze át ezt a fájlt a következő mappába: <ユーザー名>
annak a felhasználói fióknak a neve, amelybe be fog jelentkezni, amikor ténylegesen csatlakozik a távoli csatlakozáshoz.
C:\Users\<ユーザー名>\.ssh
Ha nincs mappája, és nem tud mappát létrehozni az Intézőben, a következő paranccsal hozhat létre mappát.
cd C:\Users\<ユーザー名>
mkdir .ssh
Módosítsa a telepített nyilvánoskulcs-fájlt authorized_keys
a következőre: . Ez az.
A környezettől függően előfordulhat, hogy már authorized_keys
rendelkezik a fájllal. Ez akkor fordulhat elő, ha más célokra állított be SSH-kapcsolatot.
Ebben az esetben authorized_keys
regisztrálta a fájlt úgy, hogy megnyitotta a fájlt és a fájlt a Jegyzettömbbel stb., És id_rsa.pub
felsorolta a id_rsa.pub tartalmát a authorized_keys következő sorában.
Több nyilvános kulcsot is regisztrálhat authorized_keys.
Csatlakozás SSH-val
Az OpenSSH paranccsal való csatlakozáskor
Az SSH-hoz való csatlakozásnak számos módja van, de kezdjük egy parancsalapú kapcsolattal. Valójában a legkevesebb lépéssel rendelkező kapcsolat parancs. Előfeltételként telepítenie kell az OpenSSH-ügyfelet.
Indítsa el a választott parancseszközt (parancssor, PowerShell, terminál).
Írja be a következő parancsot:
Parancsformátum
ssh -i <秘密鍵ファイルパス> -L <ローカルの空いているポート>:127.0.0.1:3389 <接続先のユーザーアカウント名>@<接続先サーバーIPアドレス、またはホスト名>
Az alábbiakban ismertetjük a paramétereket. Állítsa be a környezetének megfelelően.
Változó paraméter nevének | leírása | |
---|---|---|
SSH | Deklaráció az SSH OpenSSH-val való használatához. | |
-én | Deklaráció titkos kulcsfájl használatára. | |
< titkos kulcs fájljának elérési útját> | ● | Írja le a létrehozott titkoskulcs-fájl helyét. C:\Users\<ユーザー名>\.ssh Az elérési út megadása nem kötelező. Ellenkező esetben abszolút vagy relatív elérési útra van szükség. |
-L | Ez a deklaráció határozza meg a távoli célhoz való csatlakozáskor helyileg és távolról használandó portot. | |
< helyi szabad kikötő> | ● | A Távoli asztali kapcsolat általában a 3389-es portot használja, de bármilyen porton keresztül csatlakozhat. Nem számít, milyen számról van szó, mindaddig, amíg ingyenes. |
127.0.0.1 | Ez az állomás IP-címe, amely felismeri, hogy honnan csatlakozik a távoli cél. Alapvetően a 127.0.0.1 rendben van. | |
3389 | A távoli célhelyen használandó portszám. A távoli cél általában a 3389-es porton keresztül csatlakozik egy távoli asztali kapcsolathoz, így változatlanul hagyható. | |
< annak a felhasználói fióknak a nevét, amelyhez csatlakozni szeretne> | ● | Adja meg, hogy melyik fiókhoz szeretne csatlakozni a távoli célhelyen. |
< annak a kiszolgálónak az IP-címét vagy állomásnevét, amelyhez csatlakozni kíván> | ● | Megadja a távoli célkiszolgálót. |
Példa bemenetre
ssh -i id_rsa -L 13389:127.0.0.1:3389 TestUser@52.140.221.194
Az első alkalommal a rendszer kulcsot kér, ezért yes
írja be és nyomja meg az Enter billentyűt.
Ha be van állítva jelszó a titkos kulcshoz, meg kell adnia azt.
A következők csatlakoztatott állapotban lesznek. Láthatja, hogy a kiszolgáló oldalon lévő felhasználó jelenik meg, nem az ügyfél. Amíg ez az ablak megjelenik, csatlakoztatva van, ezért kérjük, ne zárja be. Ha bezárja, a kapcsolat megszakad.
A PuTTY-hoz való csatlakozáskor
Itt megpróbálunk csatlakozni az SSH-hoz a PuTTY nevű eszközzel.
A titkos kulcs konvertálása
Először is, ha PuTTY-t használ, konvertálnia kell a privát kulcsot. Azt hiszem, van "puttygen .exe" a mellékelt eszközben, ezért kérjük, indítsa el.
Válassza a "Konverziók -> Importálási kulcs" lehetőséget a menüből.
Válassza ki a létrehozott titkos kulcsot, ebben az esetben a "id_rsa".
Ha beállított egy jelszót, írja be.
Válassza a "Fájl -> Privát kulcs mentése" lehetőséget a menüből.
「. .ppk" fájlt.
A létrehozás után kész.
A PuTTY konfigurálása
Indítsa el a gitt.exe.
Adja meg annak a környezetnek az IP-címét, amelyhez csatlakozni szeretne. Ha van tartománya, csatlakozhat egy tartománynévvel.
Válassza a Connection -> Data lehetőséget a bal oldali menüből. Az Automatikus bejelentkezési felhasználónév mezőbe írja be annak a környezetnek a fióknevét, amelyhez csatlakozni szeretne.
A bal oldali menüben válassza a Connection -> SSH -> Tunnels lehetőséget. Írja be mindegyiket az alábbi beviteli mezőbe, majd kattintson a "Hozzáadás" gombra.
Paraméter neve Érték | Megjegyzések | |
---|---|---|
Forrásport | 13389 | Bármely szabad port megteszi. Később fogom használni |
Célállomás | 127.0.0.1:3389 |
Ha hozzáadja, így kell kinéznie:
Ezután válassza a bal oldali menüből a "Connection -> SSH -> Auth -> Cledentioals" lehetőséget, majd kattintson a Tallózás gombra a "Privát kulcsfájl hitelesítéshez" elemhez.
Válassza ki a mentett titkos kulcsot.
Válassza a "Munkamenet" lehetőséget a bal oldali menüben, írja be a választott nevet a Munkamenetek mentése mezőbe, majd kattintson a Mentés gombra. A következő alkalomtól kezdve rendben van, ha betölti ezt a beállítást.
A mentés megerősítése után kattintson a "Megnyitás" gombra.
Az első csatlakozáskor a következő képernyő jelenik meg. Kattintson az Elfogadás gombra.
Megjelenik egy képernyő, amely úgy néz ki, mint egy parancssor. Ha rendelkezik jelszóval a titkos kulcshoz, írja be.
Ha a megjelenített tartalom az alábbiak szerint változik, akkor csatlakoztatva lesz. Láthatja, hogy a kiszolgáló oldalon lévő felhasználó jelenik meg, nem az ügyfél. Amíg ez az ablak megjelenik, csatlakoztatva van, ezért kérjük, ne zárja be. Ha bezárja, a kapcsolat megszakad.
Távoli asztali kapcsolat létrehozása SSH-val
Most hozzunk létre távoli asztali kapcsolatot, miközben SSH-val csatlakozik.
Csatlakozáskor a számítógép része nem a tényleges távoli cím, hanem a "localhost:< > az SSH-kapcsolatban megadott portnév". A példában a 13389 lett megadva, így itt a "localhost:13389" -hez fogunk csatlakozni.
Ha megjelenik a hitelesítési képernyő, megítélheti, hogy a kapcsolat befejeződött. A csatlakozáshoz adja meg felhasználónevét és jelszavát.
Ha így tudsz csatlakozni, akkor sikerült.
Tiltsa le a normál távoli asztali kapcsolatokat a tűzfalbeállításokban
Az előző elem idején mostantól SSH használatával csatlakozhat egy távoli asztalhoz. Ebben az állapotban azonban a "Távoli asztali kapcsolat SSH-kapcsolattal" csak a "Normál távoli asztali kapcsolat" elemhez lett hozzáadva. A biztonság szempontjából nem ad hozzá semmit. Tehát a következő dolog az, hogy megakadályozza a "normál távoli asztali kapcsolatot".
Ha elvégzi ezt a beállítást, akkor nem fog tudni csatlakozni, kivéve a "távoli asztali kapcsolat SSH-val", így ha elrontja a beállításokat, előfordulhat, hogy nincs módja távolról csatlakozni. Ezért győződjön meg róla, hogy előre ellenőrizze, hogy lehetséges-e a "távoli asztali kapcsolat SSH-val", és képes legyen más módon működtetni a távoli környezetet, még akkor is, ha az ügyfél, amelyhez csatlakozni próbál, eltűnik.
Itt konfigurálja a tűzfal beállításait a "Távoli asztali kapcsolat SSH-n keresztül" részben. Ennek az az oka, hogy ha a műveletet "normál távoli asztali kapcsolattal" hajtja végre, akkor a tűzfal beállításának pillanatában megszakad a kapcsolat.
Tekintse meg a Fokozott biztonságú Windows Defender tűzfalat. A Windows verziójától függően a kijelző helye változhat, ezért kérjük, az adott verziónak megfelelően jelenítse meg.
Válassza a Bejövő szabályok lehetőséget a bal oldali menüből.
A középső listában keresse meg a "Távoli asztal - felhasználói mód (TCP In)" elemet, és nyissa meg annak tulajdonságait.
Válassza a Hatókör fület, módosítsa a helyi IP-címet ezekre az IP-címekre, majd kattintson a Hozzáadás gombra.
Írja be a 127.0.0.1 címet, és kattintson a OK gombot. Ez megakadályozza a távoli asztali kapcsolatokat a 127.0.0.1-től eltérő helyről. A 127.0.0.1 az az IP-cím, amely a gépre mutat. Ha rossz értéket ad meg, előfordulhat, hogy nem tud csatlakozni bárhonnan, ezért legyen óvatos.
Kattints a OK gombot a megerősítéshez.
Egyelőre ez önmagában ellenintézkedés, de állítsuk be a "Távoli asztal - Felhasználói mód (UDP fogadás)" beállítást is.
Ellenőrizze, hogy az SSH-n kívül nem tud-e távolról csatlakozni
Most próbáljon meg távoli asztali kapcsolatot létesíteni egy másik, SSH-t nem használó számítógépről.
Ha csatlakozni tud, megjelenik a hitelesítési képernyő. Rendben van, ha meg tudja erősíteni, hogy a kapcsolat nem hozható létre az alábbiak szerint.
Összefoglalás
A legújabb Windows rendszerrel most már könnyű bevezetni egy SSH szervert. A beállítások hozzáadásával mostantól egyszerűen növelheti a távoli asztali kapcsolat biztonságát. Mivel azonban csak a Windows biztonsági intézkedéseiért felelős, Ha biztonságosabbá szeretné tenni, úgy gondolom, hogy célszerű külön SSH-kiszolgálót vagy tűzfalat beállítani, mielőtt csatlakozna a Windows-hoz.
Az SSH használatával szorosan beállíthatja a biztonságot, de ha túl nehéz, senki sem tud csatlakozni működési hiba miatt. Vigyázzon, nehogy ezzel végződjön.