Men har doim Windows mashinalariga ulanishdan xafa bo'lganman. Yo'q, men Microsoft va uning mahsulotlarining muxolifi ham, tarafdori ham emasman. Har bir mahsulot o'z maqsadi uchun mavjud, ammo bu gap emas.
Men uchun Windows serverlariga ulanish har doim juda og'riqli bo'lgan, chunki bu ulanishlar bitta joy orqali sozlangan (HTTPS bilan salom WinRM) yoki juda barqaror ishlamaydi (xorijdagi virtual mashinalarga salom RDP).
Shuning uchun, loyihaga tasodifan duch kelgan Win32-OpenSSH, Men sozlash tajribamni baham ko'rishga qaror qildim. Ehtimol, bu vosita kimnidir ko'p nervlarni qutqaradi.
Aniqlik: applet Yangi-NetFirewall Rule Windows Server 2012 va undan keyingi versiyalarida foydalaniladi. Eng qadimgi tizimlarda (yoki ish stolida) siz quyidagi buyruqdan foydalanishingiz mumkin:
Va keyin biz uni o'rnatamiz sshd_config, biz joylashtiramiz C: Dastur ma'lumotlari. Masalan:
PasswordAuthentication no
PubkeyAuthentication yes
Va foydalanuvchi papkasida katalog yarating .ssh, va unda fayl vakolatli tugmalar. U erda ochiq kalitlarni yozamiz.
Muhim tushuntirish: faqat fayl katalogida joylashgan foydalanuvchi ushbu faylga yozish huquqiga ega bo'lishi kerak.
Ammo bu bilan bog'liq muammolar mavjud bo'lsa, siz har doim konfiguratsiyada huquqlarni tekshirishni o'chirib qo'yishingiz mumkin:
StrictModes no
Aytgancha, ichida C: Dastur FilesOpenSSH 2 ta skript bor (FixHostFilePermissions.ps1, FixUserFilePermissions.ps1), huquqlarni belgilashi kerak, lekin majburiy emas, shu jumladan vakolatli tugmalar, lekin ba'zi sabablarga ko'ra ular ro'yxatdan o'tmaydi.
Xizmatni qayta ishga tushirishni unutmang ssh o'zgarishlarni qo'llashdan keyin.
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>
Subyektiv ijobiy / salbiy tomonlar.
Taroziga soling:
Serverlarga ulanish uchun standart yondashuv. Windows mashinalari kam bo'lsa, bu juda noqulay:
Shunday qilib, biz ssh orqali o'tamiz va bu erda rdp dan foydalanamiz,
va umuman olganda, bastionlar bilan eng yaxshi amaliyot birinchi navbatda ssh tunnelidir va u orqali RDP.
O'rnatish oson Menimcha, bu aniq.
Ulanish tezligi va masofaviy mashina bilan ishlash Grafik qobiq yo'q, bu ikkala server resurslarini va uzatilgan ma'lumotlar miqdorini tejaydi.
Kamchiliklari:
RDP ni to'liq almashtirmaydi. Afsuski, konsoldan hamma narsani qilish mumkin emas. Men GUI talab qilinadigan vaziyatlarni nazarda tutyapman.