J'ai créé un nouveau compte utilisateur pour un ami sur Kubuntu 12.04. Quand il utilise, sshil obtient cette erreur:
Impossible d'ouvrir une connexion à votre agent d'authentification
Nous exécutons sshcertains scripts bash.
Après avoir regardé la grande variété de choses qui peuvent conduire à cette erreur, je suis tombé sur cette solution:
$ eval `ssh-agent -s`
$ ssh-add ~/.ssh/some_id_rsa
Il peut ensuite exécuter les sshcommandes (et les scripts bash) comme prévu.
Avant d'exécuter ces deux commandes, les variables env ne sont pas définies dans un terminal:
$ echo $SSH_AGENT_PID
$ echo $SSH_AUTH_SOCK
$
Après avoir exécuté les commandes, les variables env sont définies comme prévu. Cependant, ils ne restent pas définis (par exemple, dans un autre shell ou après le redémarrage).
Je veux savoir comment configurer son ordinateur pour qu'il n'ait pas à exécuter ces deux commandes pour définir les variables env. Je n'ai pas besoin de les exécuter sur mon ordinateur (jamais). Jusqu'à présent, je ne vois pas ce qui est différent entre nos machines.
Je vois ces informations dans la page de manuel, mais cela ne me dit pas comment Ubuntu configure normalement l'agent automatiquement ou ce qui se passe sur la machine de mon ami afin que cela ne fonctionne pas pour lui.
Il existe deux façons principales de configurer un agent: La première est que l'agent démarre une nouvelle sous-commande dans laquelle certaines variables d'environnement sont exportées, par exemple ssh-agent xterm &. La seconde est que l'agent imprime les commandes shell nécessaires (la syntaxe sh (1) ou csh (1) peut être générée) qui peut être évitée dans le shell appelant, par exemple eval
ssh-agent -spour les shells de type Bourne tels que sh (1) ou ksh (1) et evalssh-agent -cpour csh (1) et dérivés.
Après l'installation acctet le redémarrage, voici la sortie de lastcomm:
ssh-agent F newuser __ 0.12 secs Wed Aug 7 11:02
ssh-agent F newuser __ 0.00 secs Wed Aug 7 20:34
ssh-agent F newuser __ 0.02 secs Wed Aug 7 20:02
ssh-agent F newuser __ 0.01 secs Thu Aug 8 12:39
ssh-agent F newuser __ 0.02 secs Thu Aug 8 07:45
Depuis la page de manuel:
F - commande exécutée après un fork mais sans un exec suivant
Je ne sais pas si c'est important.
X11/Xsession.options:use-ssh-agentet X11/Xsession.d/90x11-common_ssh-agent:SSHAGENT=/usr/bin/ssh-agent. J'essaierai acctet lastcommensuite. Merci
lastcommpour une session complète, pas seulement le ssh-agentprocessus. Il s'agit de voir dans quel ordre les différents programmes sont lancés.
ssh-agentest normalement démarré à partir de/etc/X11/Xsession.d/90x11-common_ssh-agent. Cela peut être supprimé en supprimantuse-ssh-agentde/etc/X11/Xsession. Ces fichiers sont-ils corrects? L'agent est-il démarré puis tué ou n'a-t-il jamais commencé? (Installezacctet exécutezlastcommaprès vous être connecté pour voir quels programmes ont été lancés.)