J'utilise des scripts expect pour automatiser les connexions (en particulier parce que je dois passer par une boîte de jumb et entrer un chroot et beaucoup de mots de passe doivent être entrés) et j'ai fait quelques "ajustements" à la configuration de cssh. Donc, j'ai ce "script principal" dans mon dossier bin qui, étant donné un "nom / alias de serveur", il m'emmène sur le serveur que je veux et où je veux.
Dans le fichier ~ / .clusterssh / config, j'ai défini le paramètre "ssh" pour pointer vers mon script, "ssh_args" doit également être défini sur un argument inoffensif / faux, car cssh a sa liste d'arguments par défaut, si elle est laissée vide en fait la liste par défaut finira par être au script.
Ainsi, le script (dans chaque fenêtre / terminal) recevra ces arguments et 1 des arguments donnés au CSS, le script qu'il récupère à partir d'un fichier pour le serveur donné, les informations d'identification définies et les étapes à suivre pour arriver où Je veux, puis il appelle le "code attendu" avec toutes ces données.
~ / .clusterssh / config
ssh=/home/user/bin/qs.sh
ssh_args=-a
qs.sh
#!/bin/bash
export PATH=~/bin:$PATH
shift
case $1 in
q4|q5|q6|q7|q8|q9)
essh user1@axt$1
### essh it's some little bash script that does the things I said before and in the end it launches the expect
;;
q1|q2|q3)
essh axtr@axt$1
;;
*)
echo "GOOH"
esac
donc je l'appelle généralement avec quelque chose comme ça
# cssh q4 q5 q6 q7
ça marche aussi avec les "alias de cluster" ayant le cluster "qAll q4 q5 q6 q7" je peux appeler avec cssh qAll
J'espère que cela aide quelqu'un d'autre.
pssh
? Avez-vous besoin d'un programme parallèle ou simplement d'un programme pour gérer plusieurs serveurs SSH?