Forum Programmation.shell ssh-add ne trouve pas son papa

Posté par  . Licence CC By‑SA.
1
23
août
2017

bonjour à tous,
sur le pc de mon taf (mageia6-x64/kde5) je souhaite limiter le nombre de saisies de mes passphrases de clefs ssh à un (à l'ouverture de la session ssdm->plasma ou depuis un terminal)

Que ce soit par kwallet, ksshaskpass ou ssh-add, rien ne fonctionne.

ssh-add -l
Could not open a connection to your authentication agent.

on m'a conseillé pam-ssh mais je trouve ça un peu bourrin de mettre mon mot de passe pam local comme passphrase d'une unique clef ssh.

Si quelqu'un utilise ssh-add ou l'option "AddKeysToAgent yes" de sa conf ssh avec succès, je suis preneur

merci

  • # Agent

    Posté par  (site web personnel) . Évalué à 3.

    Soit exporter la config renvoyée par ssh-agent -s si un agent est déjà lancé. Soit lancer un agent ssh-agent bash par exemple.

    • [^] # Re: Agent

      Posté par  . Évalué à 1.

      j'ai l'impression que je ne sais pas exporter la config :

      [fabr@localhost ~]$ ssh-agent -s
      SSH_AUTH_SOCK=/tmp/ssh-d9YDdGvr8NmW/agent.11019; export SSH_AUTH_SOCK;
      SSH_AGENT_PID=11020; export SSH_AGENT_PID;
      echo Agent pid 11020;

      [fab@localhost ~]$ ssh-add .ssh/xxxx@xxxx
      Could not open a connection to your authentication agent.

      • [^] # Re: Agent

        Posté par  . Évalué à 3.

        Quand tu lances ssh-agent ainsi, il renvoie en sortie ce que tu dois exécuter pour que les variables soient prises en compte.

        Il faut que tu copies-colles la sortie de ssh-agent, ou que tu lances :

        eval $(ssh-agent -s)
        

        Par contre, ça ne sera pris en compte que dans la session en cours. Pour ma part, je le lance au démarrage du serveur graphique pour l'avoir tout le temps.

        • [^] # Re: Agent

          Posté par  (site web personnel) . Évalué à 2.

          C'est vrai que ça n'est vraiment pas aisé de mettre en place l'environnement ssh-agent.

          Quand tu dis le lancer au démarrage du serveur graphique, cela veut dire que tu n'as pas de mot de passe sur ta clef ssh ?

          De mon côté, voici ce que j'ai mis en place dans mon fichier .bashrc (fichier chargé à chaque démarrage de bash). En relisant la source, je vois que ça provient de la mailing-list de cygwin, mais le script fonctionne et sais se faire oublier une fois mis en place :)

          • [^] # Re: Agent

            Posté par  . Évalué à 1.

            merci à tous pour votre aide,
            je suis arrivé à mes fins en demandant à systemsettings5 de lancer le script suivant à l'ouverture de ma session (démarrage avant kde), .ssh/lanceagent.sh :

            if [ -z "$SSH_AUTH_SOCK" ] ; then eval `ssh-agent -s`; ssh-add; fi
            ssh-add /home/fabrice/.ssh/clef < /dev/null

            La première fois ksshaskpass m'a demandé ma demandé ma passphrase, depuis kwalletd la fournit directement à ssh-add, ça me convient parfaitement (même si les passphrases sont accessibles en ouvrant le gestionnaire de portefeuilles, raison de plus pour verrouiller ma session quand je quitte mon poste).

          • [^] # Re: Agent

            Posté par  . Évalué à 2.

            Quand tu dis le lancer au démarrage du serveur graphique, cela veut dire que tu n'as pas de mot de passe sur ta clef ssh ?

            Non, je veux dire que je lance ssh-agent au démarrage de X.
            Je lance X avec startx, j'ai mis eval $(ssh-agent -s) dans mon ~/.xinitrc. Tout ce que je lance dans ma session X prend alors en compte l'agent.

            J'ai aussi un ~/.ssh/config contenant :

            AddKeysToAgent yes
            

            Comme ça, il me demande la passphrase à la première connexion, et l'enregistre automatiquement (pas besoin de faire ssh-add).

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.