J'ai créé un nouveau compte utilisateur pour un ami sur Kubuntu 12.04. Quand il utilise, ssh
il obtient cette erreur:
Impossible d'ouvrir une connexion à votre agent d'authentification
Nous exécutons ssh
certains 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 ssh
commandes (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 -s
pour les shells de type Bourne tels que sh (1) ou ksh (1) et evalssh-agent -c
pour csh (1) et dérivés.
Après l'installation acct
et 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-agent
et X11/Xsession.d/90x11-common_ssh-agent:SSHAGENT=/usr/bin/ssh-agent
. J'essaierai acct
et lastcomm
ensuite. Merci
lastcomm
pour une session complète, pas seulement le ssh-agent
processus. Il s'agit de voir dans quel ordre les différents programmes sont lancés.
ssh-agent
est normalement démarré à partir de/etc/X11/Xsession.d/90x11-common_ssh-agent
. Cela peut être supprimé en supprimantuse-ssh-agent
de/etc/X11/Xsession
. Ces fichiers sont-ils corrects? L'agent est-il démarré puis tué ou n'a-t-il jamais commencé? (Installezacct
et exécutezlastcomm
après vous être connecté pour voir quels programmes ont été lancés.)