Windows -Utiliser SSH dans PowerShell
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
Lancez ensuite
Si le mode est restricted il faut changer le mode en Bypass sinon on ne pourra pas importer le module SshSession
Pour se connecter
Pour lancer une commande sur la machine distante
Ou alors pour entrer dans une session de la machine
Le souci est que la pseudo allocation tty n'est pas possible. En effet, quand je saisie dans mon terminal connecté au serveur
J'obtiens
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
Et maitenant libre à vous de lancer des commandes en sudo !
blog comments powered by Disqus
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 !