11.012012

Einfach und sicher im Netzwerk anmelden: ssh-agent Forwarding

Bei der täglichen Arbeit im betreuten Netzwerk möchte man nicht ständig sein Password eintippen – natürlich nutzt man die Anmeldung per Schlüssel, der ebenso natürlich mit einem exorbitant ekligen Passwort gesichert ist, das man einmal pro Arbeitstag seinem ssh-agent mitteilt.

Wenn die Systeme nicht von vornherein mit ein wenig Bequemlichkeit im Blick aufgesetzt wurden, wird es wieder unangenehm, wenn man von einem enfernten System zum nächsten springen möchte – die einfache Lösung auch dort einen ssh-agent laufen zu lassen, und etwa per keychain zwischen einzelnen Sitzungen zu teilen, scheidet aus Sicherheitserwägungen aus.

Die Lösung heißt AgentForwarding, das serverseitig durch OpenSSH als Vorgabe erlaubt ist; explizit wird es durch die Anweisung AllowAgentForwarding yes in der sshd_config erlaubt.

Auf der Seite des Client kann das Weiterleiten der Agenteninformationen entweder mit der Kommandozeilenoption -A angewiesen werden; oder aber man fügt die Zeile ForwardAgent yes in die ~/.ssh/config ein.

Abschliessend muss dann nur noch der öffentliche Schlüssel auf alle betroffenen Systeme in der ~/.ssh/authorized_keys eingetragen werden. Ein kleiner Aufwand, der sich lohnt. In der Folge werden Schlüßelauthentisierungsanfragen durch die komplette Kette der Systeme bis zum Agenten auf der lokalen Workstation des Administrators zurückgereicht und von diesem bestätigt.

http://www.joocom.de/blog/wp-content/uploads/wpid-agent_forwarding2.png