Uporaba protokola SSH za varno uporabo povezave z oddaljenim namizjem s sistemom Windows

Stran posodobljena :
Datum ustvarjanja strani :

Delovno okolje

Oddaljena povezava s sistemom Windows
  • Windows 11
Oddaljena povezava s sistemom Windows
  • Windows 10
OpenSSH
  • OpenSSH_for_Windows_8.1p1, LibreSSL 3.0.2

Predpogoji

Oddaljena povezava s sistemom Windows
  • Windows 10 ali novejši (potrebujete Pro ali drugo izdajo). Vendar to ne velja, če je OpenSSH mogoče pripraviti ločeno.
  • Windows Server 2019 ali novejša različica. Vendar to ne velja, če je OpenSSH mogoče pripraviti ločeno.
Oddaljena povezava s sistemom Windows
  • Windows (možna je večina različic)
  • Windows Server (možna je večina različic)

Sprva

Ko ustvarite okolje Windows v internetu v oblaku ali VPS, pogosto uporabljate povezavo z oddaljenim namizjem za upravljanje oddaljenega cilja sistema Windows.

V povezavi z oddaljenim namizjem je vsebina komunikacije šifrirana in če uporabniško ime in geslo ne puščata, se drugi ne bodo prijavili brez dovoljenja. Vedno obstaja skrb, da se bodo ljudje poskušali prijaviti od koder koli.

Nekateri večji oblaki imajo požarne zidove, ločene od navideznih strojev, in obstaja funkcija, ki omejuje vir povezave. Te funkcije morda niso na voljo v vseh storitvah. Zlasti v okoljih, zgrajenih na nizkem proračunu, obstaja veliko primerov, ko takšne funkcije niso na voljo.

Zato bi tokrat želel čim bolj omejiti vir povezave z dodajanjem funkcije SSH . Ker se uporabljata zasebni ključ in javni ključ, dokler zasebni ključ ne pušča, je mogoče možnost prijave na daljavo iz drugega okolja čim bolj zmanjšati.

V tem primeru bomo uporabili OpenSSH za izgradnjo okolja SSH.

Ustvarjanje okolja Windows oddaljenega cilja

Ustvarite okolje Windows, ki vam omogoča oddaljeno povezavo prek interneta. Ni pomembno, kje je zgrajen, dokler gre prek interneta, toda za to preverjanje bo zgrajen kot virtualni stroj v Microsoft Azure. Koraki za nadgradnjo na Azure niso pomembni za ta nasvet, zato jih bom izpustil. Ker bodo tokrat uporabljena vrata 22, se prepričajte, da komunikacija z vrati 22 poteka skozi nastavitve navideznega računalnika v storitvi Azure.

Če gradite v okolju, ki ni Azure, se prepričajte, da ste v položaju, ko lahko vzpostavite povezavo oddaljenega namizja s sistemom Windows za svoje okolje.

Poleg tega različica sistema Windows cilja na Windows 10 ali novejšo različico ali Windows Server 2019 ali novejšo različico, kar olajša ustvarjanje okolja OpenSSH. Lahko se izvaja v starejšem okolju, vendar je potrebno malo več časa in truda, ker morate OpenSSH prenesti in nastaviti ločeno.

V tem primeru je postopek enak kot za SFTP, zato si oglejte naslednje nasvete.

Nastavitev OpenSSH

Od tu bomo delali v oddaljenem okolju Windows. Najprej vzpostavite povezavo z oddaljenim ciljem prek povezave z oddaljenim namizjem. Če vaš oblak ali VPS ponuja konzolo, jo lahko uporabite. Ker tokrat delujemo v okolju Windows 11, se lahko koraki v drugih različicah nekoliko razlikujejo.

Odprite začetni meni in izberite Nastavitve.

Izberite aplikacijo.

Izberite Izbirne funkcije.

Izberite Pokaži funkcije.

Na seznamu je "OpenSSH Server" nekoliko nižje, zato ga preverite in kliknite "Naprej".

Kliknite Namesti.

Ko je namestitev končana in je na spodnji seznam dodan »OpenSSH Server«, ste končali.

Konfiguracija storitve za OpenSSH

Z desno miškino tipko kliknite meni Start in izberite Upravljanje računalnika.

Izberite Storitve na seznamu na levi.

Na srednjem seznamu poiščite »OpenSSH SSH Server«, z desno miškino tipko kliknite in izberite »Lastnosti«.

Pri povezovanju na daljavo želimo, da se strežnik OpenSSH izvaja, zato nastavite »Vrsta zagona« na »Samodejno«.

Ker trenutno ne deluje, ga bom začel tukaj, vključno z nastavitvijo.

Ko ga zaženete, kliknite gumb V redu, da ga zaprete. Moral bi se izvajati na seznamu.

Konfiguriranje OpenSSH

V začetnem stanju je preverjanje pristnosti z zasebnim ključem onemogočeno, zato ga nastavite. Odprite to mapo v Raziskovalcu.

  • C:\ProgramData\ssh

Vendar pa je zgornja mapa lahko skrita mapa, zato jo naredite vidno z nastavitvijo možnosti Raziskovalca.

V mapi sshd_config se imenuje datoteka, zato jo odprite z urejevalnikom besedila, kot je Beležnica. Ker bomo tokrat naredili spremembe, prosimo, kopirajte in podvojite kot varnostno kopijo sshd_config_old pred spremembo.

PubkeyAuthentication yes Iskati: Ta element je nastavitev, ali želite omogočiti preverjanje pristnosti s skrivnim ključem. Privzeto je onemogočen in piše , vendar je komentiran, zato ga ne komentirajte yes .

Pred spremembo

#PubkeyAuthentication yes

Po spremembi

PubkeyAuthentication yes

PasswordAuthentication yes Iskati: Ta element je nastavitev, ali želite omogočiti preverjanje pristnosti gesla. Privzeto je omogočen in tudi če omogočite preverjanje pristnosti zasebnega ključa, je z varnostnega vidika brez pomena, če ostane omogočen, zato ga komentirajte in no nastavite .

Pred spremembo

#PasswordAuthentication yes

Po spremembi

PasswordAuthentication no

Na koncu komentirajte naslednjo vrstico: To je ključna nastavitev za skupino skrbnikov, ki jo bomo onemogočili, ker bomo v tem primeru podpirali prijave na uporabnika.

Pred spremembo

Match Group administrators
       AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys

Po spremembi

#Match Group administrators
#       AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys

Ko shranite datoteko po OpenSSH SSH Server spremembi, znova zaženite storitev, da bo odražala nastavitve.

Če želite spremeniti vrata

Če želite spremeniti vrata SSH, spremenite naslednje.

Pred spremembo

#Port 22

Po spremembi

#Port <任意の番号>

S spremembo številke vrat privzeta vrata ne bodo napadena, kar bo privedlo do večje varnosti. Po drugi strani pa povečuje kompleksnost operacije, zato morate biti previdni.

Če spremenite številko vrat, morate pri povezovanju določiti vrata, ki niso 22.

Ustvarjanje zasebnih in javnih ključev

To je opravilo na strani odjemalca. Vendar v resnici ni pomembno, kje delate. Vendar bodite previdni, da ne puščate zasebnega ključa, ki ste ga ustvarili.

Če imate Windows 10 ali novejšo različico, Windows Server 2019 ali novejšo različico, je odjemalec OpenSSH privzeto nameščen, tako da ga lahko preprosto ustvarite z ukazom. V drugih okoljih boste morali namestiti ločen odjemalec OpenSSH ali uporabiti ločeno orodje.

Naslednji nasveti so za SFTP, vendar si jih oglejte za nastavitev odjemalca OpenSSH.

V odjemalskem okolju zaženite ukazni poziv, PowerShell, terminal ali katero koli orodje, ki lahko izvaja ukaze.

Ker boste ustvarjali datoteko, se z ukazom premaknite cd v kateri koli imenik.

Zaženite naslednji ukaz:

ssh-keygen -t rsa -f id_rsa

Za ključ lahko nastavite geslo (geslo), zato ga po potrebi vnesite. Če nastavite geslo, bo varnost izboljšana, vendar se bo povečal čas in trud pri vnosu gesla v poznejšem postopku.

Ustvarjena sta javni ključ (id_rsa.pub) in zasebni ključ (id_rsa).

Javni ključ (id_rsa.pub) bo pozneje postavljen na oddaljeni cilj. Zasebni ključ lahko najdete kjer koli v oddaljenem odjemalcu, vendar mora biti shranjen v mapi, do katere lahko dostopa samo račun, ki se uporablja iz varnostnih razlogov. V bistvu mislim, da ni problema, če ga postavite v naslednjo mapo na strani odjemalca. Če uporabljate odjemalca OpenSSH, bo privzeto brskal po tej mapi.

  • C:\Users\<ユーザー名>\.ssh

Če zgornje mape ne morete ustvariti v Raziskovalcu, jo lahko ustvarite z naslednjim ukazom.

cd C:\Users\<ユーザー名>
mkdir .ssh

Postavitev javnih ključev

To je daljinsko upravljanje. Ustvarjeni javni ključ (id_rsa.pub) postavite na oddaljeni cilj. Premaknite to datoteko v to mapo: <ユーザー名> je ime uporabniškega računa, v katerega se boste prijavili, ko se dejansko povežete na daljavo.

  • C:\Users\<ユーザー名>\.ssh

Če nimate mape in ne morete ustvariti mape v Raziskovalcu, lahko ustvarite mapo z naslednjim ukazom.

cd C:\Users\<ユーザー名>
mkdir .ssh

Spremenite uvedeno datoteko authorized_keys z javnim ključem v . To je to.

Glede na vaše okolje morda že authorized_keys imate datoteko. To se lahko zgodi, če ste vzpostavili povezavo SSH za druge namene. V tem primeru authorized_keys ste datoteko registrirali tako, da odprete datoteko in datoteko z beležnico itd. in id_rsa.pub navedete vsebino id_rsa.pub v naslednji vrstici authorized_keys. V authorized_keys lahko registrirate več javnih ključev.

Povežite se s SSH

Pri povezovanju z ukazom OpenSSH

Obstajajo različni načini za povezavo s SSH, vendar začnimo s povezavo, ki temelji na ukazih. Pravzaprav je povezava z najmanjšim številom korakov po ukazu. Kot predpogoj morate imeti nameščen odjemalec OpenSSH.

Zaženite ukazno orodje po vaši izbiri (ukazni poziv, PowerShell, Terminal).

Vnesite naslednji ukaz:

Oblika ukaza

ssh -i <秘密鍵ファイルパス> -L <ローカルの空いているポート>:127.0.0.1:3389 <接続先のユーザーアカウント名>@<接続先サーバーIPアドレス、またはホスト名>

V nadaljevanju je razlaga parametrov. Nastavite ga glede na svoje okolje.

imena
Opis parametra spremenljivke
SSH Izjava o uporabi SSH z OpenSSH.
-jaz Izjava o uporabi datoteke zasebnega ključa.
< pot do datoteke zasebnega ključa> Opišite mesto datoteke zasebnega ključa, ki ste jo ustvarili. C:\Users\<ユーザー名>\.ssh Pot ni obvezna. V nasprotnem primeru je potrebna absolutna ali relativna pot.
-L Ta izjava določa vrata, ki se uporabljajo lokalno in na daljavo pri povezovanju na oddaljeni cilj.
< lokalno brezplačno pristanišče> Povezava z oddaljenim namizjem običajno uporablja vrata 3389, povezavo pa lahko vzpostavite s poljubnimi vrati. Ni pomembno, katera številka je, dokler je brezplačna.
127.0.0.1 To je naslov IP gostitelja, ki prepozna, od kod je povezan oddaljeni cilj. V bistvu je 127.0.0.1 v redu.
3389 Številka vrat, ki se uporabljajo na oddaljenem cilju. Oddaljeni cilj je običajno povezan z vrati 3389 s povezavo z oddaljenim namizjem, tako da ga lahko pustite takšnega, kot je.
< ime uporabniškega računa, s katerim se želite povezati> Določite, s katerim računom se želite povezati na oddaljenem cilju.
< naslov IP ali ime gostitelja strežnika, s katerim želite vzpostaviti povezavo> Določa oddaljeni ciljni strežnik.

Primer vnosa

ssh -i id_rsa -L 13389:127.0.0.1:3389 TestUser@52.140.221.194

Prvič boste pozvani k vnosu tipke, zato yes vnesite in pritisnite Enter.

Če imate za zasebni ključ nastavljeno geslo, ga morate vnesti.

Naslednje bo v povezanem stanju. Vidite lahko, da je prikazan uporabnik na strani strežnika in ne odjemalec. Ko je to okno prikazano, je povezano, zato ga ne zapirajte. Če ga zaprete, bo povezava prekinjena.

Pri povezovanju s PuTTY

Tukaj se bomo poskušali povezati s SSH z orodjem, imenovanim PuTTY.

Pretvarjanje zasebnega ključa

Najprej, če uporabljate PuTTY, boste morali pretvoriti zasebni ključ. Mislim, da je v priloženem orodju "kittygen .exe", zato ga zaženite.

V meniju izberite »Konverzije -> Uvozi ključ«.

Izberite zasebni ključ, ki ste ga ustvarili, v tem primeru »id_rsa«.

Če ste nastavili geslo, ga vnesite.

V meniju izberite »Datoteka -> Shrani zasebni ključ«.

「. Datoteka .ppk".

Ko ste ustvarjeni, ste končali.

Konfiguriranje PuTTY

Izstrelite kit.exe.

Vnesite naslov IP okolja, s katerim se želite povezati. Če imate domeno, se lahko povežete z imenom domene.

Izberite Povezava -> Podatki v meniju na levi. V polje Samodejno uporabniško ime za prijavo vnesite ime računa okolja, s katerim se želite povezati.

V meniju na levi izberite Povezava -> SSH -> Predori. Vnesite vsakega od njih v spodnje vnosno polje in kliknite gumb "Dodaj".

o imena parametra
Opombevrednosti
Izvorna vrata 13389 Vsako prosto pristanišče bo naredilo. Uporabil ga bom pozneje
Cilj 127.0.0.1:3389

Ko je dodan, bi moral izgledati takole:

Nato v meniju na levi izberite »Povezava -> SSH -> Auth -> Cledentioals« in kliknite gumb Prebrskaj za »Datoteka zasebnega ključa za preverjanje pristnosti«.

Izberite zasebni ključ, ki ste ga shranili.

V meniju na levi izberite »Seja«, vnesite ime po vaši izbiri za Shrani seje in kliknite gumb Shrani. Od naslednjič naprej je v redu, če naložite to nastavitev.

Po potrditvi shranjevanja kliknite gumb "Odpri".

Pri prvem povezovanju se prikaže naslednji zaslon. Kliknite gumb Sprejmi.

Videli boste zaslon, ki je videti kot ukazni poziv. Če imate geslo za zasebni ključ, ga vnesite.

Če se vsebina prikaza spremeni, kot je prikazano spodaj, bo povezana. Vidite lahko, da je prikazan uporabnik na strani strežnika in ne odjemalec. Ko je to okno prikazano, je povezano, zato ga ne zapirajte. Če ga zaprete, bo povezava prekinjena.

Vzpostavljanje povezave z oddaljenim namizjem s SSH

Zdaj vzpostavimo povezavo z oddaljenim namizjem, ko smo povezani s SSH.

Pri povezovanju del računalnika ni dejanski oddaljeni naslov, ampak "localhost:< > ime vrat, določeno v povezavi SSH". V primeru je bila določena 13389, zato se bomo tukaj povezali z "localhost:13389".

Če se prikaže zaslon za preverjanje pristnosti, lahko presodite, da je povezava končana. Za vzpostavitev povezave vnesite uporabniško ime in geslo.

Če se lahko povežete tako, vam je uspelo.

Onemogočanje običajnih povezav z oddaljenim namizjem v nastavitvah požarnega zidu

V času prejšnjega elementa se lahko zdaj povežete z oddaljenim namizjem s pomočjo SSH. Vendar pa je v tem stanju »Povezava z oddaljenim namizjem s SSH« dodana samo »Običajna povezava z oddaljenim namizjem«. Kar zadeva varnost, ne dodaja ničesar. Naslednja stvar, ki jo morate storiti, je preprečiti »običajno povezavo z oddaljenim namizjem«.

Če nastavite to nastavitev, se ne boste mogli povezati, razen za »povezavo z oddaljenim namizjem s SSH«, zato, če se zmešate z nastavitvami, morda ne boste imeli sredstev za oddaljeno povezavo. Zato vnaprej preverite, ali je možna »povezava z oddaljenim namizjem s SSH«, in lahko oddaljeno okolje upravljate na druge načine, tudi če odjemalec, s katerim se poskušate povezati, izgine.

Tukaj konfigurirajte nastavitve požarnega zidu v "Povezava z oddaljenim namizjem prek SSH". Če postopek izvedete z »običajno povezavo z oddaljenim namizjem«, bo povezava prekinjena takoj, ko nastavite požarni zid.

Oglejte si požarni zid Windows Defender z dodatno varnostjo. Glede na različico sistema Windows se lokacija zaslona razlikuje, zato jo prikažite v skladu s to različico.

Izberite Dohodna pravila v meniju na levi.

Na srednjem seznamu poiščite »Oddaljeno namizje - uporabniški način (TCP In)« in odprite njegove lastnosti.

Izberite zavihek Obseg, spremenite lokalni naslov IP na Ti naslovi IP in kliknite gumb Dodaj.

Vnesite 127.0.0.1 in kliknite OK gumb. S tem preprečite povezave z oddaljenim namizjem kjer koli drugje kot v 127.0.0.1. 127.0.0.1 je naslov IP, ki kaže na vaš računalnik. Če vnesete napačno vrednost, morda ne boste mogli vzpostaviti povezave od nikoder, zato bodite previdni.

Za potrditev kliknite gumb V redu.

Zaenkrat je to samo protiukrep, vendar nastavimo tudi »Oddaljeno namizje - uporabniški način (sprejem UDP)«.

Preverite, ali se ne morete oddaljeno povezati z ničemer drugim kot s SSH

Zdaj poskusite vzpostaviti povezavo z oddaljenim namizjem iz drugega računalnika, ki ne uporablja SSH.

Če lahko vzpostavite povezavo, se prikaže zaslon za preverjanje pristnosti. V redu je, če lahko potrdite, da povezave ni mogoče vzpostaviti, kot je prikazano spodaj.

Povzetek

Z najnovejšim operacijskim sistemom Windows je zdaj enostavno uvesti strežnik SSH. Z dodajanjem nastavitev lahko zdaj preprosto povečate varnost povezave z oddaljenim namizjem. Ker pa je odgovoren le za varnostne ukrepe v samem sistemu Windows, Če želite, da je varnejši, mislim, da je bolje nastaviti ločen strežnik SSH ali požarni zid, preden se povežete z operacijskim sistemom Windows.

Prav tako lahko varnost tesno nastavite s SSH, ko pa je pretežko, se nihče ne more povezati zaradi operativne napake. Pazite, da ne boste končali s tem.