PowerShell: use SSH para conectarse a hosts remotos (Posh-SSH)
Posh-SSH es un módulo de PowerShell para Windows 10. El módulo le permite establecer conexiones SSH a computadoras remotas. Como requisito previo, debe estar instalado Windows Management Framework 5. En este artículo voy a mostrar paso a paso cómo instalar Posh-SSH y establecer una conexión remota a una computadora que ejecuta Linux.
En Windows, las conexiones SSH son algo inusuales, porque PowerShell tiene su propia función, pero SSH es indispensable para acceder a dispositivos que no son Windows, como conmutadores, enrutadores y, por último, pero no menos importante, máquinas Linux.
Instalación
Ejecute Find-Module para buscar el nuevo módulo PowerShell Posh-SSH. Si no puede encontrarlo, instale .NET Framework 5.0 desde esta fuente: https://www.microsoft.com/en-us/download/details.aspx?id=50395
Find-Module Posh-SSH
Instálelo ejecutando un simple One-Liner.
Find-Module Posh-SSH | Install-Module
Una vez completado, siéntete libre de explorar los nuevos comandos Posh-SSH. Para el siguiente paso, sólo necesitamos dos de ellos.
Get-Command -Module Posh-SSH
Ejecutar SSH en Windows PowerShell
Ahora conéctese a un host remoto usando New-SSHSession.
New-SSHSession -ComputerName Server01
Ejecute Get-SSHSession para mostrar todas las conexiones actuales. Mi conexión tiene el ID de sesión 0. Necesitamos este ID de sesión en el siguiente paso.
Get-SSHSession
Los comandos remotos se ingresan ejecutando Invoke-SSHCommand y el ID de sesión.
Invoke-SSHCommand -SessionId 0 -Command cut -d: -f1 /etc/passwd
Pensamientos adicionales
Si le gusta más la función integrada de Windows PowerShell "PowerShell Remoting", eche un vistazo a mi artículo: PowerShell Remoting: Cómo conectarse a hosts remotos en un entorno de dominio y sin dominio (hosts de confianza)





