- Blog/
SUDO mit ssh keyfile
Kürzlich stolperte ich über einen Beitrag über sudo mit Keyfile. Wunderbar, nie wieder ein Passwort für sudo eingeben (mein ssh key hat ein Passwort), wie cool ist das denn. Nachdem ich anfangs einige Schwierigkeiten hatte, möchte ich hier meinen Weg aufschreiben.
libpam-ssh-agent-auth installieren
aptitude install libpam-ssh-agent-auth
sudoers via visudo hinzufügen
Defaults env_keep += "SSH_AUTH_SOCK"
Folgendes zu /etc/pam.d/sudo hinzufügen
auth sufficient pam_ssh_agent_auth.so file=/etc/ssh/sudo_authorized_keys
Authorized keys kopieren
cp /home/your_user/.ssh/authorized_keys /etc/ssh/sudo_authorized_keys
chown root:root /etc/ssh/sudo_authorized_keys
Vergewissere dic, dass du die gleichen Identitäten in deinem lokalen ssh-Agenten hinzugefügt hast. Teste es mit
ssh-add -L
Er sollte die öffentlichen Schlüssel in deinem Agenten ausgeben und mindestens einer davon sollte mit dem öffentlichen Schlüssel auf dem Server in /etc/ssh/sudo_authorized_keys übereinstimmen. Wenn dies nicht der Fall ist, füge den Schlüssel mit folgendem Befehl hinzu
ssh-add ~/.ssh/your_keyfile
Vergesse auch nicht, die Schlüsselweiterleitung für diesen Server zu aktivieren (mein letzter Fehler). Füge dazu folgendes:
ForwardAgent yes
in ~/.ssh/config für entsprechende(n) host(s) hinzu.
Ssh danach neustarten:
systemctl restart ssh