Kumokonekta sa Windows sa pamamagitan ng SSH tulad ng Linux
Palagi akong nabigo sa pamamagitan ng pagkonekta sa mga Windows machine. Hindi, hindi ako kalaban o tagasuporta ng Microsoft at ng kanilang mga produkto. Ang bawat produkto ay umiiral para sa sarili nitong layunin, ngunit hindi iyon ang tungkol dito.
Noon pa man ay napakasakit para sa akin na kumonekta sa mga server ng Windows, dahil ang mga koneksyon na ito ay maaaring i-configure sa isang lugar (hello WinRM na may HTTPS) o hindi gumagana nang napaka-stable (hello RDP sa mga virtual machine sa ibang bansa).
Samakatuwid, ang pagkakaroon ng hindi sinasadyang makita ang proyekto Win32-OpenSSH, nagpasya akong ibahagi ang aking karanasan sa pag-setup. Marahil ang tool na ito ay magliligtas sa isang tao ng maraming nerbiyos.
Paglilinaw: applet Bagong-NetFirewallRule ginagamit sa Windows Server 2012 at mas bago. Sa mga pinakalumang system (o desktop) maaari mong gamitin ang command:
Paglilinaw: Dapat kang tumukoy ng ganap na landas.
Ano ang susunod?
At pagkatapos ay itinakda namin ito sshd_config, na aming ilalagay C: Data ng Programa. Halimbawa:
PasswordAuthentication no
PubkeyAuthentication yes
At lumikha ng isang direktoryo sa folder ng gumagamit .ssh, at sa loob nito ang file authorized_keys. Isinulat namin ang mga pampublikong susi doon.
Mahalagang paglilinaw: tanging ang user kung saan ang direktoryo ay matatagpuan ang file ang dapat na may karapatang sumulat sa file na ito.
Ngunit kung mayroon kang mga problema sa ito, maaari mong palaging i-off ang right checking sa config:
StrictModes no
Siyanga pala, sa C:Program FilesOpenSSH mayroong 2 script (FixHostFilePermissions.ps1, FixUserFilePermissions.ps1), na dapat ngunit hindi obligadong ayusin ang mga karapatan, kasama ang sa authorized_keys, ngunit sa ilang kadahilanan ay hindi sila nagrerehistro.
Huwag kalimutang i-restart ang serbisyo sshd pagkatapos ilapat ang mga pagbabago.
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>
Subjective na mga kalamangan / kahinaan.
Pros:
Karaniwang diskarte sa pagkonekta sa mga server. Kapag kakaunti ang Windows machine, napakahirap kapag:
Kaya, dito tayo dumaan sa ssh, at dito ginagamit natin ang rdp,
at sa pangkalahatan, ang pinakamahusay na kasanayan sa mga balwarte ay una sa isang ssh tunnel, at RDP sa pamamagitan nito.
Madaling i-set up Sa tingin ko ito ay halata.
Bilis ng koneksyon at gumana sa isang malayuang makina Walang graphical na shell, na nagse-save ng parehong mga mapagkukunan ng server at ang dami ng ipinadalang data.
Cons:
Hindi ganap na pinapalitan ang RDP. Hindi lahat ay maaaring gawin mula sa console, sayang. Ang ibig kong sabihin ay mga sitwasyon kung saan kinakailangan ang isang GUI.