Definieren Sie den Unix-Socket-Pfad für den ssh-agent

569
user3503143

Ich habe eine Anwendung, die eine X-Sitzung erstellt. Das Problem, das ich habe, betrifft den ssh-agent.

Nehmen wir an, ich habe ein Unix-Socket erstellt und dann eine x-Sitzung erstellt (in dieser Sitzung wird der ssh-agent gestartet). Meine Frage ist also:

Ist es möglich, x-session zu starten und meinen Socket-Pfad wie SSH_AUTH_SOCKfür ssh-agent festzulegen?

Ich habe versucht, meinen Socket-Pfad im SSH_AUTH_SOCKBefehl zum Erstellen von x-Sitzungen einzurichten, manuell zu überprüfen und der neue initProzess enthält meinen Socket- Pfad. Aber aus irgendeinem Grund wird beim Starten des Terminals (innerhalb dieser Sitzung) echo $SSH_AUTH_SOCKein anderer Pfad angezeigt. Es scheint, als ob ein anderer Prozess es überschreibt.

Gibt es eine Möglichkeit, $SSH_AUTH_SOCKvor dem Start von x-session vordefiniert zu werden ?

0

1 Antwort auf die Frage

0
eggo

Wenn Sie die Kontrolle über das xinitSkript ( ) haben, mit dem das Skript gestartet wird ssh-agent, können Sie den standardmäßigen Socketpfad mithilfe der -a PATHOption per Manpage überschreiben :

 -a bind_address Bind the agent to the UNIX-domain socket bind_address. The default is $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid>. 
Leider habe ich keine Kontrolle über das Xinit-Skript. user3503143 vor 6 Jahren 0