SSH en PowerShell

Actualmente que nos encontramos en un mundo en donde cada vez más los sistemas a administrar son heterogeneos (hablando de las diferentes soluciones implementadas). Por ello hablar de SSH hoy por hoy es moneda corriente, también para los administradores Windows que no estaban muy acostumbrados a manejarse puramente de la consola. Por ello hoy hablar de SSH en PowerShell es algo que no podemos dejar pasar.

Dentro del mundo Windows existe un proyecto en particular, que cuenta con el apoyo de la comunidad de PowerShell, el cual es Open-SSH.

Open-SSH

Lo primero que debemos saber de Open-SSH es que es un proyecto Open Source, que se encuentra activo desde 1999. Lo bueno de este proyecto es que los que están acostumbrados a usar Linux, van a utilizar la misma sintaxis para trabajar con Open-SSH.

La instalación la vamos a realizar utilizando Chocolatey, si no lo tienen instalado les comparto una publicación anterior en este blog sobre ello: enlace.

Para instalar Open-SSH, debemos ejecutar en nuestra consola de PowerShell:

choco install openssh -y

SSH en PowerShell

Luego:

RefreshEnv

Para recargar las variables de entorno definidas.

Nota a tener en cuenta:

A pesar de que debe quedar la variable de entorno lista, en lo personal recomiendo revisarlas de la siguiente manera:

$env:path

Y buscar si se encuentra C:\Program Files\OpenSSH-Win64, en caso que no se encuentre, hay que agregarla a mano:

$new_path = "$env:PATH;C:\Program Files\OpenSSH-Win64"
$env:PATH=$new_path
[Environment]::SetEnvironmentVariable("path", $new_path, "Machine")

Y verificamos:

SSH en PowerShell

Usando SSH en PowerShell

Ahora que tenemos instalado Open-SSH en nuestro sistema y, otro dato no menor, podemos utilizarlo desde PowerShell, vamos a compartir algunos comando útiles de su uso.

En primer lugar debemos definir como conectarnos a un servidor:

ssh remoteServer

En caso de contar con una clave .pem para utilizar en la conexión:

ssh remoteServer -i "C:\Key.pem"

Happy scripting!

Comments