Rechercher : dans
Par :

Script shell pour envoyé un mot de pass

Dernière réponse le 14 fév 2007 à 10:47:59 cathan, le 13 jan 2007 à 13:38:36 
 Signaler ce message aux modérateurs

Bonjour all, j'ai crée un petit script pour accéder à ssh mais je nesais comment lui envoyé le mot de pass pour qu'il ne le demande plus à l'exécution du script? je vous donne le bout du code que j'ai envie de faire (effacer automatiquement le contenu du dossier documents le soir) :


ssh -l monpc 192.168.0.5
là je dois envoyé le mot de pass
rm -rf ~/documents/*
logout
exit

Merci à tous

Configuration: Linux
Mozilla 1.6

Meilleures réponses pour « script shell pour envoyé un mot de pass » dans :
Exécuter un script shell VoirExécution d'un script Pour pouvoir exécuter un script ou un programme en ligne de commande il y a plusieurs possibilités : 1. Le chemin absolu 2. Le chemin relatif 3. Modifier la variable PATH Note: Le Sha...

1

lami20j, le 13 jan 2007 à 15:59:14

Salut,

regarde ici ssh ecrire un script pour connexion ssh lami20j

Répondre à lami20j

2

cathan, le 16 jan 2007 à 08:55:20

Merci pour le lien, j'ai essayé de suivre et j'ai installé expect mais au lancement du script, il me dit que la commande spawn et send ne sont pas connu. est ce qu'il faut encore installé autre chose qu'expect ? merci

Répondre à cathan

3

cathan, le 29 jan 2007 à 15:04:41

Svp, un peu d'aide

Répondre à cathan

4

natas, le 29 jan 2007 à 15:17:08

Salut pour pouvoir te connecter sans mot de passe tu doit au préalable faire un echange de clé public ssh entre tes serveur « L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! » - Pierre Desproge

Répondre à natas

5

cathan, le 29 jan 2007 à 15:20:55

Merci pour ta réponse mais je veux me connecter en utilisant un mot de pass et je crois ça marche en suivant les liens plus haut mais avec moi il plante au niveau de spawn.

Répondre à cathan

6

lami20j, le 29 jan 2007 à 15:37:24

Salut,

que te donne

whereis expect
? lami20j

Répondre à lami20j

7

cathan, le 29 jan 2007 à 15:46:56

Merci encore.
expect et tcl sont bien installés.

/usr/bin/expect /usr/lib/expect5.44 /usr/share/man/man1/expect.1.gz

/usr/lib/tcl8.4 /usr/share/tcl8.4

j'ai regardé man expect mais c'est toujours pareil que ceux qui étaient dans les liens.

Répondre à cathan

8

cathan, le 30 jan 2007 à 08:00:28

Est ce que quelqu'un a encore une autre idée svp. Merci

Répondre à cathan

9

mamiemando, le 30 jan 2007 à 09:47:52

Euh es-tu sûr de ce que tu fais ? Parce que si tu mets un mot de passe dans ton script il sera en clair ce qui est très moyennement top d'un point de vue sécurité. A ta place j'établirais plutôt un système de clé ssh.

Bonne chance

Répondre à mamiemando

10

cathan, le 30 jan 2007 à 10:16:38

Je sais que ssh c'est pour une connexion sécurisée mais mon but c'est surtout d'apprendre, alors ça fait trop rien. surtout que c'est seulement sur mes machines même.Merci pour le conseil.

Répondre à cathan

11

lami20j, le 30 jan 2007 à 19:56:54

Salut,

peut être qu'il faut installer tcl8.4-dev lami20j

Répondre à lami20j

12

cathan, le 31 jan 2007 à 10:39:39

Merci, c'est possible mais j'ai pas trouver sur le net car tcl 8.4 est déja compris dans mon distrib (mdv 2007). j'ai insatllé expect.rpm, je l'ai désinstallé et j'essai d'installé expect-5.43.tar.gz mais au ./configure, il me dit que il n'y a aucun config de tcl alors que tclConfig.sh est bien présent.

Répondre à cathan

13

lami20j, le 31 jan 2007 à 11:21:24

Salut,

tcl 8.4 est déja compris dans mon distrib

Oui, dans la mienne aussi :-)
Mais il doit avoir aussi un tcl8.4-dev

urpmi tcl 
te donne quoi lami20j

Répondre à lami20j

14

cathan, le 31 jan 2007 à 11:31:10

Quand je fais whereis tcl8.4-dev, il me donne tcl8: /usr/lib/tcl8.4
urpmi tcl me donne Tous les paquetages sont déjà installés

Répondre à cathan

15

jipicy, le 31 jan 2007 à 11:35:11

Salut,

Tu pourrais nous afficher ton script (en masquant l'identifiant et la mot de passe) s'il te plaît, merci ;-))
Z'@+...che.

JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

16

cathan, le 31 jan 2007 à 11:45:30

J'ai arrangé le script comme ceux des liens :

#!/usr/bin/expect -f
set timeout 60
spawn ssh -l username server
expect "password: $"
send "password\n"
rm -rf /pc/documents/*

voilà. Mais les commandes send et spawn sont inconnus

Répondre à cathan

17

jipicy, le 31 jan 2007 à 11:57:25

Relis bien alors... ;-))
Z'@+...che.

JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

18

cathan, le 2 fév 2007 à 14:44:09

Merci, j'ai bien relu les liens et je ne vois de difference que le set forceinteractive, mais ça change rien car mon script s'arrête au niveau de spawn, send qui sont inconnus. Sauf s'il y a autre chose que j'ai oublié.

Répondre à cathan

19

natas, le 2 fév 2007 à 15:10:55

Essaye ça

#!/usr/bin/expect -f
set timeout 10
spawn ssh username@server
expect "password: \r"
send -- "ton_password\r"
rm -rf /pc/documents/* « L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! » - Pierre Desproge

Répondre à natas