## Einloggen per »ssh« Um sich auf einem anderen Linux-/Unix-Rechner einzuloggen, verwendet man das Programm »ssh«, wie im folgenden Beispiel gezeigt: ```bash # ssh -X nutzer@rechnername ``` Ist »nutzer« identisch zum aktuellen Account, kann diese Angabe entfallen. Mit »-X« wird die Weiterleitung der grafischen Ausgabe des Zielrechners eingeschaltet. Nach diesem Aufruf wird nach dem Passwort, welches auf dem entfernten Rechner gilt, gefragt. Bei sehr häufiger An- und Abmeldung ist die immer wiederkehrende Passwortabfrage störend. Sie kann wie folgt vermieden werden. ### Neues Paar von ssh-Schlüsseln (privaten und offiziellen Schlüssel) erzeugen Dies ist nur nötig, wenn nicht bereits früher geschehen. ``` ssh-keygen -t rsa -N "" ``` Auf die Frage ``` Enter file in which to save the key (/home/???/.ssh/id_rsa): ``` sollte dieser standardmäßige Platz mit <enter> bestätigt werden. ### Kopieren des offiziellen Schlüssels zum Zielrechner ``` ssh-copy-id nutzer@rechnername ``` Hier muss ein letztes Mal das Passwort eingegeben werden. ### Test des Einloggens ohne Passworteingabe ```bash # ssh nutzer@rechnername ``` ## Verteilen des ssh-Schlüssels auf viele Rechner Wie oben beschrieben, kann das Programm `ssh-copy-id` benutzt werden, um den eigenen offiziellen Schlüssel zu einem entfernten Rechner zu kopieren, um sich dort künftig ohne Eingabe des Passwortes einloggen zu können. Das ist insbesondere dann von großem Vorteil, wenn ein Script automatisch auf einem entfernten Rechner Aufgaben erfüllen soll (Softwareverteilung mit `rsync` ggf. per cron-Job gesteuert u.ä). Derartige Aufgaben müssen u.U. auf vielen Rechnern gleichartig erfüllt werden, was eine umfangreiche Schlüsselverteilung erfordert. Im Folgenden wird ein Weg gezeigt, um dies zu vereinfachen. ### Installation des Programms `ssh-deploy-key` Als »root« auszuführen: ```bash git clone https://bitbucket.org/travis_bear/ssh-deploy-key.git cd ssh-deploy-key git checkout master python setup.py install ``` Wenn nicht bereits vorhanden, muss auch noch die Python-Bibliothek `NaCl` installiert werden: ``` zypper in python2-PyNaCl python-devel ``` ### Beispiel zur Anwendung ``` ssh-deploy-key a73434 a73435 i75422 ``` Der eigene offizielle Schlüssel, also der des Aufrufenden (z.B. des Nutzers »root«), wird nacheinander auf drei entfernte Rechner verteilt, sodass das Einloggen dort keiner Passworteingabe mehr bedarf. Nähere Hinweise zu `ssh-deploy-key` erhält man unter den folgenden Adressen https://ssh-deploy-key.readthedocs.io/en/latest/using.html und https://bitbucket.org/travis_bear/ssh-deploy-key sowie per ``` ssh-deploy-key --help ```