Prisijungimas prie „Windows“ per SSH, pavyzdžiui, „Linux“.
Aš visada buvau nusivylęs prisijungimu prie „Windows“ įrenginių. Ne, aš nesu nei Microsoft ir jų produktų priešininkas, nei rėmėjas. Kiekvienas produktas egzistuoja pagal savo paskirtį, bet čia ne apie tai.
Man visada buvo nepaprastai skausminga prisijungti prie Windows serverių, nes šie ryšiai arba konfigūruojami per vieną vietą (labas, WinRM su HTTPS), arba neveikia labai stabiliai (sveiki, RDP į virtualias mašinas užsienyje).
Todėl netyčia susidūręs su projektu Win32-OpenSSH, nusprendžiau pasidalinti savo sąrankos patirtimi. Galbūt šis įrankis kažkam sutaupys daug nervų.
Paaiškinimas: programėlė New-NetFirewallRule naudojamas Windows Server 2012 ir naujesnėje versijoje. Seniausiose sistemose (arba darbalaukyje) galite naudoti komandą:
Ir tada mes jį nustatėme sshd_config, kurį įdėsime C: Programos duomenys. Pavyzdžiui:
PasswordAuthentication no
PubkeyAuthentication yes
Ir sukurkite katalogą vartotojo aplanke .šš, o jame esantis failas įgalioti raktai. Ten užrašome viešuosius raktus.
Svarbus paaiškinimas: tik vartotojas, kurio kataloge yra failas, turėtų turėti teisę rašyti į šį failą.
Bet jei kyla problemų dėl to, visada galite išjungti teisių tikrinimą konfigūracijose:
StrictModes no
Beje, į C: Program FilesOpenSSH yra 2 scenarijai (FixHostFilePermissions.ps1, FixUserFilePermissions.ps1), kurios turėtų, bet neprivalo, nustatyti teises, įskaitant su įgalioti raktai, bet kažkodėl jie nesiregistruoja.
Nepamirškite iš naujo paleisti paslaugos sshd po to, kai pritaikysite pakeitimus.
ru-mbp-666:infrastructure$ ssh [email protected] -i ~/.ssh/id_rsa
Windows PowerShell
Copyright (C) 2016 Microsoft Corporation. All rights reserved.
PS C:UsersAdministrator> Get-Host
Name : ConsoleHost
Version : 5.1.14393.2791
InstanceId : 653210bd-6f58-445e-80a0-66f66666f6f6
UI : System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture : en-US
CurrentUICulture : en-US
PrivateData : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
DebuggerEnabled : True
IsRunspacePushed : False
Runspace : System.Management.Automation.Runspaces.LocalRunspace
PS C:UsersAdministrator>
Subjektyvūs pliusai/prieš.
Argumentai "už":
Standartinis prisijungimo prie serverių metodas. Kai yra nedaug Windows mašinų, labai nepatogu, kai:
Taigi, mes einame per ssh, o čia naudojame rdp,
ir apskritai geriausia praktika su bastionais pirmiausia yra ssh tunelis ir KPP per jį.
Lengva nustatyti Manau, kad tai akivaizdu.
Ryšio greitis ir darbas su nuotoliniu įrenginiu Nėra grafinio apvalkalo, taupančio tiek serverio resursus, tiek perduodamų duomenų kiekį.
Trūkumai:
Ne visiškai pakeičia KPP. Deja, ne viską galima padaryti iš konsolės. Turiu omenyje situacijas, kai reikalinga GUI.