Búsqueda de sitios web

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)

Artículos relacionados