Sempre me frustrou conectarme a máquinas Windows. Non, non son nin un opoñente nin un partidario de Microsoft e os seus produtos. Cada produto existe para o seu propio propósito, pero non se trata diso.
Sempre foi tremendamente doloroso para min conectarme a servidores Windows, porque estas conexións están configuradas a través dun só lugar (ola WinRM con HTTPS) ou non funcionan de forma moi estable (ola RDP para máquinas virtuais no exterior).
Polo tanto, ao atoparse accidentalmente co proxecto Win32-OpenSSH, decidín compartir a miña experiencia de configuración. Quizais esta ferramenta aforrará a alguén moitos nervios.
E despois configuramos sshd_config, que situaremos C: Datos do programa. Por exemplo:
PasswordAuthentication no
PubkeyAuthentication yes
E crea un directorio no cartafol do usuario .ssh, e nel o ficheiro chaves_autorizadas. Anotamos alí as chaves públicas.
Aclaración importante: só o usuario en cuxo directorio se atopa o ficheiro debería ter dereito a escribir neste ficheiro.
Pero se tes problemas con isto, sempre podes desactivar a comprobación de dereitos na configuración:
StrictModes no
Por certo, en C:Arquivos de programasOpenSSH hai 2 guións (FixHostFilePermissions.ps1, FixUserFilePermissions.ps1), que deberían, pero non están obrigados a fixar dereitos, incluso con chaves_autorizadas, pero por algún motivo non se rexistran.
Non esquezas reiniciar o servizo ssh despois de aplicar os cambios.
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>
Pros/contras subxectivos.
Pros:
Enfoque estándar para conectarse a servidores. Cando hai poucas máquinas Windows, é moi inconveniente cando:
Entón, aquí imos a través de ssh, e aquí usamos rdp,
e, en xeral, a mellor práctica con bastións é primeiro un túnel ssh e RDP a través del.
Facilidade de configuración Creo que isto é obvio.
Velocidade de conexión e traballo cunha máquina remota Non hai shell gráfico, aforrando tanto os recursos do servidor como a cantidade de datos transmitidos.
Contras:
Non substitúe completamente RDP. Non todo se pode facer dende a consola, por desgraza. Refírome a situacións nas que se require unha GUI.