SSH et connexions éxotiques

Tagged:

Perso c'est un peu mon soucis ... je passe de droite et de gauche dans des boites différentes avec des environnements et des methodes différentes ... (to be consultant or not to be ;))

D'ou mon billet sur la méthode pour me connecter un peu partout sans me poser de questions ;)

Bref la je cause de SSH et c'est la même chose ... entre les mot de pass fantaisistes les machines sans nom a la fin on s'y retrouve que très mal ... J'ai donc pris 5 minutes de mon temps pour me faire un truc en python qui règle mon problème !

#!/usr/bin/env python
import sys
 
machines = {
        'drazel' : ['192.168.0.2','lez','mdplez'],
        'ma1': ['machine1.mondomaine.com','monutilisateur','monmotdepasse']
}
 
l = len(sys.argv)
if l == 1:
        print "Liste des machines :"
        for machine in machines:
                print machine,
        print ""
        sys.exit(0)
elif l > 2:
        print "Trop de parametres"
        sys.exit(1)
 
try:
        machine = machines[sys.argv[1]]
except KeyError:
        print sys.argv[1] + " n'existe pas"
        sys.exit(2)
 
cmd = "ssh "+machine[1]+"@"+machine[0]
password = machine[2]
 
import pexpect,time
ssh = pexpect.spawn(cmd)
ssh.expect (['Password:','password:'])
time.sleep (0.1)
ssh.sendline(password)
ssh.interact()
ssh.expect(pexpect.EOF)

pour s'en servir en ligne de commande :

$ pssh
Liste des machines :
drazel ma1
$ pssh ma1

et on est connecté a ma1. L'avantage de cette méthode plutot que celle des clés, c'est que c'est bien plus rapide a mettre sur une autre machine que la sienne et de s'en servir pareil ;) Bon le script est loin d'être exempt de bugs mais il fonctionne et c'est tout ce dont j'avais besoin ;) ne vous privez pas de l'améliorer !

Comments

Ça poserait pas un léger problème de sécurité de mettre les pass de tous ses clients en clair comme ça ?

Perso je préfère le clé ssh, même si je dois mettre la même sur toutes mes machines je préfère ca qu'un fichier en clair avec mes mots de pass.
Mais l'idée d'un tel script est pas mal car c'est vrai que d'avoir plusieurs ssh a faire à la fin on s'y retrouve avec du mal ;)

pour ce genre de situation, j'apprécie konsole qui permet de configurer des sessions différentes. J'ai par exemple (en plus des sessions par défaut) une session ipython et plusieurs sessions SSH. Si il y a besoin d'un mot de passe, il peut être enregistré par le gestionnaire kwallet, mais la plupart de mes comptes ont une clé privée renseignée dans mon ~/.ssh/config

Vla l'autre qui viens exprimer une espèce de suprématie de KDE sur le reste du monde ;)
nan jrigole mais sérieusement, c'est vrai qu'on trouve souvent une cohérence et des produits bien aboutits dans le système KDE...

Pourquoi seulement dans KDE :(