2 votes

Comment entrer le mot de passe automatiquement dans .command

Mon fichier .command ressemble donc à ceci

ssh someuser@someip.com

Lorsque j'exécute ce programme, il me demande le mot de passe. Comment faire pour que le terminal entre le mot de passe au lieu que je doive le taper ? J'ai essayé ceci :

ssh someuser@someip.com
password

Mais cela ne fonctionne pas.

1voto

Oskar Points 1242

Vous pouvez stocker les clés ssh ou votre mot de passe dans le fichier ~/.ssh/config (cf. man ssh_config pour plus de détails) mais ce serait un peu de la triche puisque ce n'est pas vraiment dans votre fichier .command.

Vous pourriez bien sûr script l'ajout (et éventuellement la suppression) des entrées nécessaires pour modifier les clés ssh ou les changements de fichiers de configuration.

Je ferais une simple attente script - pour attendre l'invite de mot de passe et ensuite entrer votre mot de passe.

#!/usr/bin/expect -f
set bad_idea cleartext_passwords_are_insecure
set timeout -1
# now connect using ssh
spawn ssh user@example.com
expect "*?assword:*"
send -- "$bad_idea\r"
send -- "\r"
expect elf

Il n'est pas nécessaire d'utiliser une variable $bad_idea et vous pouvez simplement envoyer le mot de passe avant le message d'erreur. \r

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X