Tipps&Tricks: Login ohne Passwort mit OpenSSH Veröffentlicht am: 25.07.2004 10:41:22 Puffy the password slayer Sie loggen sich häufig mittels ssh auf entfernten Rechnern ein? Und Sie geben jedes Mal brav Usernamen und Passwort ein? Das muss nicht sein, denn mit nachfolgendem Tipp reicht zur Authentifizierung auch der Username aus und Sie bleiben trotzdem relativ geschützt! Sie müssen wissen, OpenSSH speichert für jeden User die persönlichen Einstellungen im Ordner ~/.ssh ab. Dort befinden sich unter anderem auch der private und der öffentliche Schlüssel. Besitzt der aktuelle User noch kein Schlüsselpaar, dann kann dies leicht mit „ssh-keygen –t dsa“ nachgeholt werden. Nach ein paar Returns liegt es dann im obigen Ordner. Interessant ist nun die Datei id_dsa.pub, bei der es sich um den öffentlichen Schlüssel handelt. Dieser authentifiziert den User, unter dem Sie eingeloggt sind, gegenüber SSH-Servern in Netzwerk. Als nächstes kopieren Sie das File (am besten mittels „scp id_dsa.pub username@remote-server:.ssh/“) auf den Server, zu dem Sie sich in Zukunft ohne Passwort hin verbinden möchten. Wiederum in den dortigen .ssh-Ordner. Nun landet der Inhalt noch mittels Shellkommando „cat id_dsa.pub >> authorized_keys“ in der zuletzt genannten Datei. Fortan prüft der SSH-Server (sofern er nicht sehr restriktiv konfiguriert wurde) beim Login eines beliebigen Users, ob die vom entfernten Rechner gesendete ID (id_dsa.pub) mit einer in ~/.ssh/authorized_keys übereinstimmt. Ist dies der Fall, überspringt er den Passwort-Dialog und der Anwender landet automatisch in der Shell. Sofern ist Vorsicht geboten: wird der lokale Account gehackt, haben die Bösewichte automatisch auch Zugriff auf den Remote-Server! Da dies allerdings auch zwischen unterschiedlichen Usernamen funktioniert, relativiert sich das Ganze wieder. Christian Sudec |