GNU/Linux >> Tutoriels Linux >  >> Linux

Ssh - Passer des mots de passe à un script ?

Je veux scp un fichier vers un hôte distant, et à partir de là, exécutez une commande sur le fichier et quittez la session distante. Si j'écris un script habituel, appelez scp puis ssh , je suis invité à entrer deux mots de passe. Existe-t-il un moyen de copier, ssh , et exécuter une commande sur une machine distante avec un seul mot de passe ?

Aussi, comment écrire des scripts qui doivent interagir avec l'utilisateur pour entrer des mots de passe ?

Je ne veux pas utiliser "lire" car ce n'est pas sûr. Je ne veux pas utiliser ssh sans mot de passe , car mon fichier de clé privée peut être compromis, ce qui est encore pire. J'ai lu quelque chose sur "s'attendre à" mais je ne sais pas si c'est le bon outil.

Réponse acceptée :

Je ne veux pas utiliser ssh sans mot de passe, car mon fichier de clé privée pourrait être compromis, ce qui est encore pire.

Non, c'est faux. Un fichier de clé privée offre plus de sécurité qu'un mot de passe. Utilisez un fichier de clé privée. Le fichier de clé privée est crypté avec un mot de passe; si quelqu'un obtient le fichier clé, il a toujours besoin de votre mot de passe. Si vous utilisiez l'authentification par mot de passe, toute personne obtenant le mot de passe serait libre.

Exécutez ssh-agent pendant toute la durée de votre session. Avant d'utiliser une clé particulière, entrez le mot de passe avec ssh-add (ou via une invite graphique). Ensuite, il n'y aura pas d'invite lorsque vous vous connecterez à l'aide de cette clé.


Linux
  1. Un peu de magie de copie de fichier SSH en ligne de commande

  2. Comment configurer des clés SSH

  3. Activer l'authentification par clé publique SSH

  4. Passer des variables dans la commande ssh distante

  5. Un fichier .sh peut-il être un malware ?

Comment générer une clé SSH dans Windows 10

Utilisation du fichier de configuration SSH

35 exemples de scripts bash

Comment configurer l'authentification basée sur la clé Ssh pour Github en utilisant le fichier ~/.ssh/config ?

Comment convertir la clé privée de PuTTY (.ppk) en clé SSH

Ajouter la clé publique au fichier known_hosts