2016-06-29 21 views
0

Ich möchte ssh passwordless-Login mit Authentifizierung-Schlüssel-Paare verwenden.ssh-Schlüssel einmal pro Login statt einmal pro Bash hinzufügen

Ich habe

eval `ssh-agent -s` 
ssh-add ~/.ssh/my_p_key 

zu ~/.profile. Dies funktioniert nicht. Wenn ich die ~/.bashrc verwende, funktioniert es gut.

Warum muss ich dies jedes Mal einstellen, wenn ich einen Bash anrufe, statt jedes Mal, wenn der Benutzer sich anmeldet. Ich konnte keine Erklärung finden.

Gibt es keine bessere Möglichkeit, dies zu konfigurieren?

+0

Welche Zeilen haben Sie hinzugefügt? Die Einstellung 'SSH_AGENT_PID' sollte ausreichen, sobald der Agent arbeitet und die Passphrase kennt. – choroba

+0

'' eval 'ssh-agent -s''' 'ssh-hinzufügen ~/.ssh/my_p_key' – Yaerox

+0

Wenn Sie' ~/.profile 'geändert haben, haben Sie sich erneut angemeldet, bevor Sie es noch einmal versuchen? – Jakuje

Antwort

0

The

eval `ssh-agent -s` 

setzt die Umgebung des Prozesses. Wenn Sie einen Fenstermanager z. Auf einer Linux-Maschine wird der Fenstermanager wahrscheinlich eine Möglichkeit haben, ein Programm wie z.B. Ihr ssh-agent beim Start und übergibt die Umgebung an alle Prozesse, die dort gestartet wurden, so dass all Ihre Terminalfenster/Tabs Ihnen eine passwortlose Anmeldung ermöglichen. Der genaue Standort, die Konfiguration und das Verhalten hängen vom verwendeten Desktop/Wm ab.

Wenn Sie sich auf einem Nicht-Windows-System befinden, können Sie sich die Ausgabe des Aufrufs von ssh-agent ansehen und sie in alle geöffneten Shells einfügen. Dies ist jedoch so kompliziert wie die Eingabe Ihres Kennworts. Die Ausgabe wird so etwas wie

SSH_AGENT_PID=4041 
SSH_AUTH_SOCK=/tmp/ssh-WZANnlaFiaBt/agent.3966 

und Sie können an allen Orten Zugang pw-weniger wahrscheinlich, an dem Sie diese

+0

Sie können auch nach einem laufenden ssh-agent suchen und die Variablen automatisch anhand ihrer PID setzen. – choroba

Verwandte Themen