Bonjour,
je lance un grand concours de script expect ....
plein d'XP à gagner
deux problème :
- je veux avoir accès directement à un serveur sans saisir le login ni le mot de pass (de toute façon toute la boite les connaît)
en clair je lance "./monscript.expect" et je me retrouve sur cette machine
- en plus je veux pouvoir de cette machine (qui me sert de passerelle) lancer automatiquement et sans aucune saisie un autre telnet vers un autre serveur ...
si tu es un pro de expect tu peux répondre ...
d'avance merci
# rsh ou ssh ?
Posté par philz . Évalué à 1.
Et sinon, ssh peut faire la même chose en toute sécurité avec des clés d'authentification.
[^] # Re: rsh ou ssh ?
Posté par kolter (site web personnel, Mastodon) . Évalué à 1.
M.
[^] # Re: rsh ou ssh ?
Posté par franck (site web personnel) . Évalué à 2.
# autoexpect
Posté par Bruno Muller . Évalué à 2.
[^] # Re: autoexpect
Posté par franck (site web personnel) . Évalué à 2.
[^] # Re: autoexpect
Posté par Bruno Muller . Évalué à 2.
[^] # Re: autoexpect
Posté par franck (site web personnel) . Évalué à 2.
je regarde ...
[^] # Re: autoexpect
Posté par franck (site web personnel) . Évalué à 2.
à la fin du script généré il ferme la connection (oui j'ai retirer la ligne qui parle de exit :-) )
[^] # Re: autoexpect
Posté par Bruno Muller . Évalué à 3.
je suis désolé mais ça fait un bout de temps que je n'ai pas joué avec expect et je n'ai pas mes scipts sous la main, là...
[^] # Re: autoexpect
Posté par Bruno Muller . Évalué à 3.
il faut finir le script par un "interact" :)
# j'vé me faire lincher :D
Posté par Bertrand Jacquin (site web personnel) . Évalué à 1.
telnet host << EOF < "le fichier texte"
non ?
# script à améliorer ...
Posté par franck (site web personnel) . Évalué à 2.
set force_conservative 1 ;# set to 1 to force conservative mode even if
;# script wasn't run conservatively originally
if {$force_conservative} {
set send_slow {1 .1}
proc send {ignore arg} {
sleep .1
exp_send -s -- $arg
}
}
set timeout -1
spawn telnet monhost
match_max 100000
expect -exact "login: "
send -- "user\r"
expect -exact "assword: "
send -- "p@ssvv0rD\r"
interact
#expect -exact "exit\r"
# puisque c'est comme ça, je me lance aussi ;)
Posté par Anonyme . Évalué à -2.
et un rsh dans le .login (avec là encore le .rhost qui va bien) et je pense que c'est ok, non ?
Par contre ce user ne servira qu'à ça, évidemment :)
Si tu veux atteindre plusieurs machines, tu peux avoir comme nom d'utilisateur sur la machine intermédiaire le nom de la machine distante, le script pouvant s'appeler du nom de ladite machine distante !
Par exemple :
----8<----
penso@pipi ~# ./prout
Connected to gate.penso.org as prout
Connected to prout.linuxfr.org
Yo Fab, you're ze baiste
$ uname -o
SuSE Advanced Server
$ ^d
% ^d
penso@pipi ~# ./zobe
Connected to gate.penso.org as zobe
Connected to zobe.linuxfr.org
Kill d4 /\/\U553LZ
$
----8<----
Clair (ou Charles si tu préfères) ?
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.