Nyambung menyang Windows liwat SSH kaya Linux

Aku wis tansah frustasi karo nyambung menyang mesin Windows. Ora, aku dudu mungsuh utawa pendukung Microsoft lan produke. Saben produk ana kanggo tujuane dhewe, nanging dudu babagan iki.
Iku wis mesthi wis excruciatingly nglarani kanggo kula kanggo nyambung menyang server Windows, amarga sambungan iki salah siji diatur liwat sak panggonan (hello WinRM karo HTTPS) utawa ora bisa banget stably (hello RDP kanggo mesin virtual jaban rangkah).

Mulane, ora sengaja nemoni proyek kasebut Win32-OpenSSH, Aku mutusakΓ© kanggo nuduhake pengalaman persiyapan sandi. Mungkin alat iki bakal nylametake wong akeh saraf.

Nyambung menyang Windows liwat SSH kaya Linux

Pilihan instalasi:

  1. Kanthi tangan
  2. Liwat paket Chocolatey
  3. Via Ansible, contone peran jborean93.win_openssh

Sabanjure, aku bakal ngomong babagan titik pisanan, amarga kabeh luwih jelas karo liyane.

Aku pengin Wigati sing project iki isih ing tahap beta, supaya iku ora dianjurake kanggo nggunakake ing produksi.

Dadi, download rilis paling anyar, saiki saiki 7.9.0.0p1-beta. Ana versi kanggo sistem 32 lan 64 bit.

Mbukak bungkus ing C: Program FilesOpenSSH
Titik wajib kanggo operasi sing bener: mung SISTEM lan grup admin.

Nginstal layanan nggunakake skrip nginstal-sshd.ps1 dumunung ing direktori iki

powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1

Ngidini sambungan mlebu ing port 22:

New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22

Klarifikasi: applet New-NetFirewallRule digunakake ing Windows Server 2012 lan mengko. Ing sistem paling tuwa (utawa desktop) sampeyan bisa nggunakake printah:

netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22

Ayo miwiti layanan:

net start sshd

Nalika wiwitan, kunci host bakal digawe kanthi otomatis (yen ilang) ing %programdata%ssh

Kita bisa ngaktifake layanan otomatis nalika sistem diwiwiti kanthi prentah:

Set-Service sshd -StartupType Automatic

Sampeyan uga bisa ngganti cangkang perintah standar (sawise instalasi, standar yaiku cmd):

New-ItemProperty -Path "HKLM:SOFTWAREOpenSSH" -Name DefaultShell -Value "C:WindowsSystem32WindowsPowerShellv1.0powershell.exe" -PropertyType String -Force

Klarifikasi: Sampeyan kudu nemtokake path absolut.

Apa sabanjurΓ©?

Banjur kita nyetel sshd_config, sing bakal kita pasang C: Data Program. Contone:

PasswordAuthentication no
PubkeyAuthentication yes

Lan nggawe direktori ing folder pangguna .ssh, lan ing file kasebut sah_k. Kita nulis kunci umum ing kana.

Penjelasan penting: mung pangguna ing direktori file kasebut kudu duwe hak nulis menyang file iki.

Nanging yen sampeyan duwe masalah karo iki, sampeyan bisa tansah mateni hak mriksa ing config:

StrictModes no

Miturut cara, ing C: Program FilesOpenSSH ana 2 naskah (FixHostFilePermissions.ps1, FixUserFilePermissions.ps1), sing kudu nanging ora kapekso kanggo ndandani hak, kalebu karo sah_k, nanging sakperangan alesan padha ora ndhaftar.

Aja lali kanggo miwiti maneh layanan ssh sawise aplikasi owah-owahan.

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>

Pro / kontra subyektif.

Pros:

  • Pendekatan standar kanggo nyambungake menyang server.
    Yen ana sawetara mesin Windows, ora trep banget nalika:
    Dadi, kene kita pindhah liwat ssh, lan ing kene kita nggunakake rdp,
    lan umume, sing paling laku karo bastions pisanan trowongan ssh, lan RDP liwat.
  • Gampang kanggo nyetel
    Aku iki ketok.
  • Kacepetan sambungan lan nggarap mesin remot
    Ora ana cangkang grafis, nyimpen sumber daya server lan jumlah data sing dikirim.

Cons:

  • Ora rampung ngganti RDP.
    Ora kabeh bisa rampung saka console, sayangΓ©. Maksudku kahanan sing dibutuhake GUI.

Bahan sing digunakake ing artikel:
Link menyang project dhewe
Opsi instalasi disalin tanpa isin Dokumen sing bisa ditrapake.

Source: www.habr.com

Add a comment