Votre navigateur n'est pas à jour !

Merci de mettre à jour votre navigateur pour utiliser mon blog. Mettre à jour mon navigateur maintenant

×

Windows - Utiliser SSH dans PowerShell

Date de publication 16 déc. 2015
Il existe une librairie .net, SSH.net, qui permet d'implémenter SSH directement dans Windows. Le module que nous allons voir aujourd'hui utilise cette librairie dans PowerShell. Cela va nous permettre de nous passer de Putty par exemple.

Récupérez le zip SSH-Session et une fois déarchivé le mettre dans un des dossiers listé par cette commande
$env:PSModulePath -split ';'

Lancez ensuite
Get-ExecutionPolicy

Si le mode est restricted il faut changer le mode en Bypass sinon on ne pourra pas importer le module SshSession
Set-ExecutionPolicy -ExecutionPolicy Bypass

Pour se connecter
New-SshSession -Computer 192.168.1.123 -Port 22 -User david 

Pour lancer une commande sur la machine distante
Invoke-SshCommand -Computer 192.168.1.123 -Command 'uname -a' -q 

Ou alors pour entrer dans une session de la machine
Enter-SshSession -ComputerName 192.168.1.123 

Le souci est que la pseudo allocation tty n'est pas possible. En effet, quand je saisie dans mon terminal connecté au serveur
sudo shutdown -r now 

J'obtiens
pas de tty présent et pas de programme askpass spécifié

TTY signifie TeleTYpewriter ou simplement un terminal... En effet dans le monde Unix, tty est une commande pour afficher l'emplacement de ce terminal.

Heureusement depuis quelsques mois Microsoft implémente OpenSSH pour Windows, rendu disponible sous GitHub

Il vous suffit ensuite d'utiliser SSH comme cela
ssh 192.168.1.123 -p 22 -l david


Et maitenant libre à vous de lancer des commandes en sudo !
blog comments powered by Disqus