Wie starte ich ssh-agent als systemd- Dienst? Es gibt einige Vorschläge im Netz, aber sie sind nicht vollständig.
Wie füge ich automatisch unverschlüsselte Schlüssel hinzu, wenn der Dienst ssh-agent erfolgreich gestartet wurde? Wahrscheinlich
~/.ssh/.session-keys
wäre es gut , Schlüssel aus der Liste von hinzuzufügen .Wie
SSH_AUTH_SOCK
stelle ich danach eine Anmeldesitzung ein? Der korrekteste Weg ist, es vom ssh-agent- Dienst zum systemd-logind- Dienst zu verschieben (ich habe keine Ahnung, ob es jemals möglich ist). Der einfach naive Weg ist es, ihn zu addieren/etc/profile
.
14
Antworten:
Um einen systemd ssh-agent-Dienst zu erstellen, müssen Sie eine Datei in erstellen,
~/.config/systemd/user/ssh-agent.service
da ssh-agent vom Benutzer isoliert ist.Hinzufügen
SSH_AUTH_SOCK DEFAULT="${XDG_RUNTIME_DIR}/ssh-agent.socket"
zu~/.pam_environment
.Aktivieren und starten Sie diesen Dienst schließlich.
Und wenn Sie eine ssh-Version höher als 7.2 verwenden.
echo 'AddKeysToAgent yes' >> ~/.ssh/config
Dadurch wird der ssh-Client angewiesen, den Schlüssel immer einem ausgeführten Agenten hinzuzufügen, sodass er nicht vorher mit ssh hinzugefügt werden muss.
Beachten Sie, dass Sie beim Erstellen der
~/.ssh/config
Datei möglicherweise Folgendes ausführen müssen:chmod 600 ~/.ssh/config
oderchown $USER ~/.ssh/config
Andernfalls erhalten Sie möglicherweise den
Bad owner or permissions on ~/.ssh/config
Fehler.quelle
launchd
unter OS X ist so eingestellt, dass ssh-agent gestartet wird, wenn auf einen Unix-Socket zugegriffen wird (und dieSSH_AUTH_SOCK
Variable mit dem Pfad vorbelegt ist ...) (wieinetd
aber ein Unix-Socket). Dies scheint auch mit möglichsystemd
. (Ob ein systemweiter Dienst eine Option für einen Pro-Benutzer-Dienst ist, kann sich sehen lassen.)Failed to execute operation: Process org.freedesktop.systemd1 exited with status 1
wenn ichsystemctl --user enable ssh-agent
auf Centos7 laufenDies wird nicht unterstützt, wenn Sie Centos 7 verwenden, da das
--user
Flag von nicht unterstützt wirdsystemctl
. Lesen Sie diesen Centos-Fehlerbericht, Systemd User Support ist bei Lieferung defektquelle