Naudokite SSH, kad saugiai naudotumėte nuotolinio darbalaukio ryšį su "Windows".

Puslapis atnaujintas :
Puslapio sukūrimo data :

Darbo aplinka

Nuotolinis prisijungimas prie "Windows"
  • Langai 11
Nuotolinis ryšys iš "Windows"
  • Langai 10
OpenSSH
  • OpenSSH_for_Windows_8.1p1, LibreSSL 3.0.2

Būtinosios sąlygos

Nuotolinis prisijungimas prie "Windows"
  • "Windows 10" arba naujesnė versija (reikalingas "Pro" arba kitas leidimas). Tačiau tai netaikoma, jei OpenSSH galima paruošti atskirai.
  • "Windows Server 2019" arba naujesnė versija. Tačiau tai netaikoma, jei OpenSSH galima paruošti atskirai.
Nuotolinis ryšys iš "Windows"
  • "Windows" (galimos dauguma versijų)
  • "Windows Server" (galimos dauguma versijų)

Iš pradžių

Sukūrę "Windows" aplinką internete debesyje arba VPS, dažnai naudojate nuotolinio darbalaukio ryšį, kad valdytumėte nuotolinę "Windows" paskirties vietą.

Nuotolinio darbalaukio ryšio metu ryšio turinys yra užšifruotas, o jei vartotojo vardas ir slaptažodis nėra nutekinti, kiti neprisijungs be leidimo. Visada nerimaujama, kad žmonės bandys prisijungti iš bet kurios vietos.

Kai kuriuose pagrindiniuose debesyse ugniasienės yra atskirtos nuo virtualių mašinų ir yra funkcija apriboti ryšio šaltinį. Šios funkcijos gali būti pasiekiamos ne visose paslaugose. Ypač aplinkose, sukurtose naudojant mažą biudžetą, yra daug atvejų, kai tokių funkcijų nėra.

Todėl šį kartą norėčiau kuo labiau apriboti ryšio šaltinį pridėdamas SSH funkciją. Kadangi naudojamas privatus raktas ir viešasis raktas, tol, kol privatus raktas nėra nutekėjęs, galimybė prisijungti nuotoliniu būdu iš kitos aplinkos gali būti kiek įmanoma sumažinta.

Tokiu atveju SSH aplinkai sukurti naudosime OpenSSH .

Sukurkite nuotolinę paskirties vietą "Windows" aplinka

Sukurkite "Windows" aplinką, leidžiančią prisijungti nuotoliniu būdu per internetą. Nesvarbu, kur jis sukurtas, kol jis eina per internetą, tačiau šiam patikrinimui jis bus sukurtas kaip virtuali mašina "Microsoft Azure". Veiksmai, kaip sukurti "Azure", nėra susiję su šiuo patarimu, todėl juos praleisiu. Kadangi šį kartą bus naudojamas 22 prievadas, jei naudojate "Azure", įsitikinkite, kad 22 prievado ryšys pereina per "Azure" virtualios mašinos nustatymus.

Jei kuriate ne "Azure", įsitikinkite, kad esate tokioje padėtyje, kai galite sukurti nuotolinį darbalaukio ryšį su "Windows" savo aplinkai.

Be to, "Windows" versija skirta "Windows 10" ar naujesnei versijai arba "Windows Server 2019" ar naujesnei versijai, todėl lengva sukurti "OpenSSH" aplinką. Jis gali būti įdiegtas ankstesnėje aplinkoje, tačiau tai užima šiek tiek daugiau laiko ir pastangų, nes reikia atsisiųsti ir nustatyti OpenSSH atskirai.

Tokiu atveju procedūra yra tokia pati kaip ir SFTP, todėl skaitykite šiuos patarimus.

OpenSSH nustatymas

Iš čia dirbsime nuotolinėje "Windows" aplinkoje. Pirmiausia prisijunkite prie nuotolinės paskirties vietos naudodami nuotolinio darbalaukio ryšį. Jei jūsų debesyje arba VPS yra konsolė, galite ją naudoti. Kadangi šį kartą dirbame "Windows 11" aplinkoje, kitose versijose veiksmai gali šiek tiek skirtis.

Atidarykite meniu Pradėti ir pasirinkite Nustatymai.

Pasirinkite programą.

Pasirinkite Pasirenkamos funkcijos.

Pasirinkite Rodyti funkcijas.

Sąraše yra šiek tiek žemiau esantis "OpenSSH serveris", todėl patikrinkite jį ir spustelėkite "Kitas".

Spustelėkite Įdiegti.

Kai diegimas bus baigtas ir "OpenSSH Server" bus įtrauktas į toliau pateiktą sąrašą, viskas.

OpenSSH paslaugos konfigūracija

Dešiniuoju pelės mygtuku spustelėkite meniu Pradėti ir pasirinkite Kompiuterio valdymas.

pasirinkti Paslaugos iš sąrašo kairėje.

Viduriniame sąraše raskite "OpenSSH SSH server", dešiniuoju pelės mygtuku spustelėkite ir pasirinkite "Ypatybės".

Jungdamiesi nuotoliniu būdu norime, kad veiktų OpenSSH serveris, todėl nustatykite "Startup type" į "Automatic".

Kadangi šiuo metu jis neveikia, pradėsiu jį čia, įskaitant jo nustatymą.

Paleidę spustelėkite mygtuką Gerai, kad jį uždarytumėte. Jis turėtų veikti sąraše.

OpenSSH konfigūravimas

Pradinėje būsenoje autentifikavimas privačiu raktu yra išjungtas, todėl nustatykite jį. Atidarykite šį aplanką naršyklėje.

  • C:\ProgramData\ssh

Tačiau aukščiau pateiktas aplankas gali būti paslėptas aplankas, todėl padarykite jį matomą nustatydami "Explorer" parinktis.

Aplanke yra failas, vadinamas failu sshd_config , todėl atidarykite jį naudodami teksto rengyklę, pvz., "Notepad". Kadangi šį kartą atliksime pakeitimus, prieš pakeitimą nukopijuokite ir dubliuokite kaip sshd_config_old atsarginę kopiją.

PubkeyAuthentication yes Ieškoti: Šis elementas yra parametras, ar įgalinti slaptojo rakto autentifikavimą. Pagal numatytuosius nustatymus jis yra išjungtas ir sako , bet jis yra komentuojamas, yes todėl panaikinkite jo komentarą.

Prieš pakeitimą

#PubkeyAuthentication yes

Po pakeitimo

PubkeyAuthentication yes

PasswordAuthentication yes Ieškoti: Šis elementas yra nustatymas, ar įgalinti slaptažodžio autentifikavimą. Jis įjungtas pagal numatytuosius nustatymus ir net jei įjungiate privataus rakto autentifikavimą, saugumo požiūriu jis yra beprasmis, jei lieka įjungtas, todėl panaikinkite jo komentarą ir no nustatykite .

Prieš pakeitimą

#PasswordAuthentication yes

Po pakeitimo

PasswordAuthentication no

Pakomentuokite šią eilutę netoli pabaigos: Tai yra pagrindinis administratorių grupės nustatymas ir mes jį išjungsime, nes šiuo atveju palaikysime kiekvieno vartotojo prisijungimus.

Prieš pakeitimą

Match Group administrators
       AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys

Po pakeitimo

#Match Group administrators
#       AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys

Išsaugoję failą po OpenSSH SSH Server pakeitimo, iš naujo paleiskite paslaugą, kad ji atspindėtų nustatymus.

Jei norite pakeisti prievadą

Jei norite pakeisti SSH prievadą, pakeiskite toliau nurodytus dalykus.

Prieš pakeitimą

#Port 22

Po pakeitimo

#Port <任意の番号>

Pakeitus prievado numerį, numatytasis prievadas nebus užpultas, o tai padidins saugumą. Kita vertus, tai padidina operacijos sudėtingumą, todėl turite būti atsargūs.

Jei pakeisite prievado numerį, jungdamiesi turite nurodyti kitą nei 22 prievadą.

Privačių ir viešųjų raktų kūrimas

Tai yra kliento užduotis. Tačiau visai nesvarbu, kur dirbate. Tačiau būkite atsargūs, kad nenutekėtų jūsų sukurtas privatus raktas.

Jei turite "Windows 10" ar naujesnę versiją, "Windows Server 2019" ar naujesnę versiją, "OpenSSH" klientas yra įdiegtas pagal numatytuosius nustatymus, todėl galite lengvai jį sukurti naudodami komandą. Kitose aplinkose turėsite įdiegti atskirą OpenSSH klientą arba naudoti atskirą įrankį.

Šie patarimai skirti SFTP, tačiau peržiūrėkite juos nustatydami OpenSSH klientą.

Kliento aplinkoje paleiskite komandų eilutę, "PowerShell", terminalą ar bet kurį įrankį, kuris gali vykdyti komandas.

Kadangi kursite failą, komanda pereikite cd į bet kurį katalogą.

Vykdykite šią komandą:

ssh-keygen -t rsa -f id_rsa

Galite nustatyti rakto slaptafrazę (slaptažodį), todėl, jei reikia, įveskite jį. Jei nustatysite slaptafrazę, saugumas bus padidintas, tačiau tai padidins slaptafrazės įvedimo laiką ir pastangas vėlesniame procese.

Sukurtas viešasis raktas (id_rsa.pub) ir privatusis raktas (id_rsa).

Viešasis raktas (id_rsa.pub) bus įdėtas į nuotolinę paskirties vietą vėliau. Privatus raktas gali būti bet kurioje nuotolinio kliento vietoje, tačiau jis turi būti aplanke, kurį gali pasiekti tik saugumo tikslais naudojama paskyra. Iš esmės manau, kad nėra jokių problemų, jei įdėsite jį į šį aplanką kliento pusėje. Jei naudojate OpenSSH klientą, pagal numatytuosius nustatymus jis naršys į šį aplanką.

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

Jei negalite sukurti aukščiau pateikto aplanko "Explorer", galite jį sukurti naudodami šią komandą.

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

Viešųjų raktų išdėstymas

Tai nuotolinė operacija. Įdėkite sukurtą viešąjį raktą (id_rsa.pub) į nuotolinę paskirties vietą. Perkelkite šį failą į šį aplanką: <ユーザー名> yra vartotojo abonemento, prie kurio prisijungsite, kai iš tikrųjų prisijungsite nuotoliniu būdu, pavadinimas.

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

Jei neturite aplanko ir negalite sukurti aplanko naršyklėje, galite sukurti aplanką naudodami šią komandą.

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

Pakeiskite įdiegtą viešojo rakto failą authorized_keys į . Viskas.

Atsižvelgiant į jūsų aplinką, gali būti, kad failą jau authorized_keys turite. Taip gali būti, jei SSH ryšį nustatėte kitiems tikslams. Tokiu atveju authorized_keys , jūs užregistravote failą atidarydami failą ir failą naudodami Notepad ir kt., O id_rsa.pub id_rsa.pub turinį įrašykite kitoje authorized_keys eilutėje. authorized_keys galite užregistruoti kelis viešuosius raktus.

Prisijunkite prie SSH

Prisijungdami prie OpenSSH komandos

Yra įvairių būdų prisijungti prie SSH, bet pradėkime nuo komandomis pagrįsto ryšio. Tiesą sakant, ryšys su mažiausiu žingsnių skaičiumi yra komanda. Būtina sąlyga turi būti įdiegtas OpenSSH klientas.

Paleiskite pasirinktą komandų įrankį (komandų eilutę, "PowerShell", terminalą).

Įveskite šią komandą:

Komandos formatas

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

Toliau pateikiamas parametrų paaiškinimas. Nustatykite jį pagal savo aplinką.

Kintamojo parametro pavadinimo aprašymas
litų Deklaracija naudoti SSH su OpenSSH.
-aš Deklaracija naudoti privataus rakto failą.
< privataus rakto failo kelią> Aprašykite sukurto privataus rakto failo vietą. C:\Users\<ユーザー名>\.ssh Kelias yra neprivalomas. Priešingu atveju reikalingas absoliutus arba santykinis kelias.
-L Šioje deklaracijoje nurodomas prievadas, kuris bus naudojamas vietoje ir nuotoliniu būdu jungiantis prie nuotolinės paskirties vietos.
< vietinis laisvasis uostas> Nuotolinis darbalaukis paprastai naudoja 3389 prievadą, bet galite prisijungti naudodami bet kurį prievadą. Nesvarbu, koks tai skaičius, jei jis nemokamas.
127.0.0.1 Tai pagrindinio kompiuterio IP adresas, kuris atpažįsta, iš kur prijungta nuotolinė paskirties vieta. Iš esmės 127.0.0.1 yra gerai.
3389 Prievado numeris, kuris bus naudojamas tolimoje paskirties vietoje. Nuotolinė paskirties vieta paprastai yra sujungta per 3389 prievadą su nuotolinio darbalaukio ryšiu, todėl ją galima palikti tokią, kokia yra.
< vartotojo abonemento, prie kurio norite prisijungti, vardą> Nurodykite, prie kurio abonemento norite prisijungti nuotolinėje paskirties vietoje.
< serverio, prie kurio norite prisijungti, IP adresas arba pagrindinio kompiuterio vardas> Nurodo nuotolinės paskirties serverį.

Įvesties pavyzdys

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

Pirmą kartą būsite paraginti įvesti raktą, todėl yes įveskite ir paspauskite Enter.

Jei turite nustatytą privataus rakto slaptafrazę, turite ją įvesti.

Toliau pateikta informacija bus prijungtoje būsenoje. Matote, kad rodomas vartotojas serverio pusėje, o ne klientas. Kol rodomas šis langas, jis yra prijungtas, todėl neuždarykite jo. Jei jį uždarysite, ryšys bus nutrauktas.

Jungiantis prie PuTTY

Čia bandysime prisijungti prie SSH naudodami įrankį, vadinamą PuTTY.

Privataus rakto konvertavimas

Pirmiausia, jei naudojate PuTTY, turėsite konvertuoti privatų raktą. Manau, kad pridedamame įrankyje yra "glaisto .exe", todėl prašau jį pradėti.

Meniu pasirinkite "Konversijos – > importavimo raktas".

Pasirinkite sukurtą privatų raktą, šiuo atveju "id_rsa".

Jei nustatėte slaptafrazę, įveskite ją.

Meniu pasirinkite "Failas - > Išsaugoti privatų raktą".

「. .ppk" failą.

Sukūrę viskas.

PuTTY konfigūravimas

Paleiskite glaistą.exe.

Įveskite aplinkos, prie kurios norite prisijungti, IP adresą. Jei turite domeną, galite prisijungti naudodami domeno vardą.

pasirinkti Ryšys -> Duomenys iš meniu kairėje. Lauke Automatinio prisijungimo vartotojo vardas įveskite aplinkos, prie kurios norite prisijungti, paskyros pavadinimą.

Kairėje esančiame meniu pasirinkite Connection -> SSH -> Tunnels. Įveskite kiekvieną iš jų žemiau esančiame įvesties lauke ir spustelėkite mygtuką "Pridėti".

Parametro pavadinimas Reikšmė Pastabos
Šaltinio prievadas 13389 Tai padarys bet kuris laisvas uostas. Aš jį naudosiu vėliau
Paskirties 127.0.0.1:3389

Kai pridedama, ji turėtų atrodyti taip:

Tada kairėje esančiame meniu pasirinkite "Connection -> SSH -> Auth -> Cledentioals" ir spustelėkite mygtuką Naršyti, kad gautumėte "Privataus rakto failas autentifikavimui".

Pasirinkite privatų raktą, kurį išsaugojote.

Kairėje esančiame meniu pasirinkite "Sesija", įveskite pasirinktą pavadinimą "Išsaugoti seansus" ir spustelėkite mygtuką Išsaugoti. Nuo kito karto viskas gerai, jei įkeliate šį nustatymą.

Patvirtinę išsaugojimą, spustelėkite mygtuką "Atidaryti".

Pirmą kartą jungiantis bus rodomas šis ekranas. Spustelėkite mygtuką Priimti.

Pamatysite ekraną, kuris atrodo kaip komandų eilutė. Jei turite privataus rakto slaptafrazę, įveskite ją.

Jei ekrano turinys pasikeis, kaip parodyta toliau, jis bus prijungtas. Matote, kad rodomas vartotojas serverio pusėje, o ne klientas. Kol rodomas šis langas, jis yra prijungtas, todėl neuždarykite jo. Jei jį uždarysite, ryšys bus nutrauktas.

Užmegzkite nuotolinio darbalaukio ryšį naudodami SSH

Dabar užmegzkime nuotolinio darbalaukio ryšį, kai esate prisijungę prie SSH.

Jungiantis kompiuterio dalis yra ne tikrasis nuotolinis adresas, o "localhost:< > prievado pavadinimas, nurodytas SSH ryšyje". Pavyzdyje buvo nurodytas 13389, todėl čia prisijungsime prie "localhost:13389".

Jei rodomas autentifikavimo ekranas, galite nuspręsti, kad ryšys baigtas. Norėdami prisijungti, įveskite savo vartotojo vardą ir slaptažodį.

Jei galite prisijungti taip, jums pavyko.

Išjunkite įprastus nuotolinio darbalaukio ryšius ugniasienės nustatymuose

Ankstesnio elemento metu dabar galite prisijungti prie nuotolinio darbalaukio naudodami SSH. Tačiau šioje būsenoje "Remote Desktop Connection by SSH" buvo pridėtas tik prie "Normal Remote Desktop Connection". Kalbant apie saugumą, tai nieko neprideda. Taigi kitas dalykas, kurį reikia padaryti, yra užkirsti kelią "įprastam nuotolinio darbalaukio ryšiui".

Jei atliksite šį nustatymą, negalėsite prisijungti, išskyrus "nuotolinio darbalaukio ryšį naudojant SSH", taigi, jei sujauksite nustatymus, gali būti, kad neturėsite priemonių prisijungti nuotoliniu būdu. Todėl būtinai iš anksto patikrinkite, ar galimas "nuotolinis darbalaukio ryšys per SSH", ir galėsite valdyti nuotolinę aplinką kitomis priemonėmis, net jei klientas, prie kurio bandote prisijungti, dingsta.

Čia sukonfigūruokite ugniasienės nustatymus skiltyje "Nuotolinis darbalaukio ryšys per SSH". Taip yra todėl, kad jei operaciją atliksite naudodami "įprastą nuotolinio darbalaukio ryšį", ji bus atjungta, kai nustatysite užkardą.

Peržiūrėkite "Windows Defender" užkardą su papildoma sauga. Priklausomai nuo "Windows" versijos, ekrano vieta skirsis, todėl rodykite jį pagal tą versiją.

Pasirinkite Gaunamos taisyklės iš kairėje esančio meniu.

Viduriniame sąraše raskite "Remote Desktop - User Mode (TCP In)" ir atidarykite jo savybes.

Pasirinkite skirtuką Aprėptis, pakeiskite vietinį IP adresą į Šie IP adresai ir spustelėkite mygtuką Pridėti.

Įveskite 127.0.0.1 ir spustelėkite OK mygtuką. Tai užkirs kelią nuotolinio darbalaukio ryšiams iš bet kurios kitos vietos, išskyrus 127.0.0.1. 127.0.0.1 yra IP adresas, nukreipiantis į jūsų įrenginį. Jei įvesite neteisingą reikšmę, gali nepavykti prisijungti iš bet kurios vietos, todėl būkite atsargūs.

Spustelėkite mygtuką Gerai, kad patvirtintumėte.

Kol kas vien tai yra atsakomoji priemonė, tačiau taip pat nustatykime "Nuotolinis darbalaukis - vartotojo režimas (UDP gauti)".

Patikrinkite, ar negalite nuotoliniu būdu prisijungti prie nieko kito, išskyrus SSH

Dabar pabandykite užmegzti nuotolinio darbalaukio ryšį iš kito kompiuterio, kuris nenaudoja SSH.

Jei galite prisijungti, bus rodomas autentifikavimo ekranas. Gerai, jei galite patvirtinti, kad ryšio negalima užmegzti, kaip parodyta toliau.

Suvestinė

Naudojant naujausią "Windows", dabar lengva pristatyti SSH serverį. Pridėję nustatymų dabar galite lengvai padidinti nuotolinio darbalaukio ryšio saugumą. Tačiau, kadangi ji yra atsakinga tik už pačios Windows saugumo priemones, Jei norite, kad jis būtų saugesnis, manau, kad prieš prisijungiant prie "Windows" geriau nustatyti atskirą SSH serverį arba ugniasienę.

Be to, naudodami SSH galite griežtai nustatyti saugumą, bet kai tai per sunku, niekas negali prisijungti dėl veiklos klaidos. Būkite atsargūs, kad tai nesibaigtų.