Clé d'hôte du serveur à stockage automatique dans le cache avec plink

21

J'ai essayé d'émettre des commandes à l'aide de plink pour récupérer des informations sur mon serveur externe. Notez que ces commandes plink sont exécutées à partir d'un binaire qui n'attend aucune entrée de l'utilisateur. Existe-t-il un indicateur qui me permettra de remplacer ce message d'erreur et de poursuivre la sortie du programme?

The server's host key is not cached in the registry. You
have no guarantee that the server is the computer you
think it is.
The server's rsa2 key fingerprint is:
ssh-rsa 2048 **:**:**:**:**:**:**:**:**:**:**:**:**:**:**:**
If you trust this host, enter "y" to add the key to
PuTTY's cache and carry on connecting.
If you want to carry on connecting just once, without
adding the key to the cache, enter "n".
If you do not trust this host, press Return to abandon the
connection.
Store key in cache? (y/n)

Merci!

Tad Oh
la source
Le vrai problème est que git ne donne pas correctement d'entrée à plink ou vice versa plink ne le prend pas correctement. Si vous lancez git clonedans, par exemple "git bash", l'entrée (O / n) va ensuite dans l'invite bash, et bash répond généralement par bash: y: command not found.
andrybak
Vous pouvez utiliser klink du projet de kitty . C'est la fourchette du mastic. Il y a la clé: -auto-store-sshkey.
paxlo

Réponses:

20

Essayez d'ajouter votre script avec:

echo y | plink -ssh root@REMOTE_IP_HERE "exit"

Cela dirigera le ypersonnage stdinjusqu'à ce plinkque vous obteniez la clé Store dans le cache? (y / n) , permettant à toutes les autres plinkcommandes de passer sans que l'utilisateur ait besoin de les saisir. La exitcommande fermera la session SSH après son établissement, permettant aux plinkcommandes suivantes de s'exécuter.

Voici un exemple de script qui écrit l'heure Unix du serveur externe dans un fichier local:

echo y | plink -ssh root@REMOTE_IP_HERE "exit"
plink -ssh root@REMOTE_IP_HERE "date -t" > remote_time.tmp

Référence de pipeline : http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-4.html

Daniel Li
la source
-1

peut-être que cela aidera:

plink -auto_store_sshkey -batch 192.211.158.256 -l user -pw password command
Falcluft
la source
1
-auto_store_sshkey est une "option inconnue" pour la version plink 0.63
Nathan
Inconnu à 0,66 aussi
Joril
... et inconnu à 0,70
Gerrat