SSH ohne Passwort: Unterschied zwischen den Versionen
Aus Matts Wiki
Matt (Diskussion | Beiträge) |
Matt (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 3: | Zeile 3: | ||
Voraussetzung ist ein passwortgeschützter SSH-Zugriff zur Server-Maschine. | Voraussetzung ist ein passwortgeschützter SSH-Zugriff zur Server-Maschine. | ||
== Schlüssel erstellen == | |||
$ ssh-keygen # Neues RSA-Schlüsselpaar in ~/.ssh/ anlegen | $ ssh-keygen # Neues RSA-Schlüsselpaar in ~/.ssh/ anlegen | ||
'''Anmerkungen''' | '''Anmerkungen''' | ||
* Passwortabfrage von <code>ssh-keygen</code> kann leer gelassen werden, wenn es nur einen User in der Root-Gruppe gibt | * Passwortabfrage von <code>ssh-keygen</code> kann leer gelassen werden, wenn es nur einen User in der Root-Gruppe gibt | ||
* Sind mehrere Root-User vorhanden, oder handelt es sich nicht um einen Root-User, ist dies ein Sicherheitsrisiko. In diesem Falle sollte ein Passwort verwendet werden. Dieses kann im Schlüsselbund gedached werden. Vgl. [[SSH ohne Passwort|Passwort für Schlüssel im Schlüsselbund cachen]] | |||
| Zeile 35: | Zeile 36: | ||
+-----------------+ | +-----------------+ | ||
== Schlüssel zum remote Host kopieren == | |||
=== Per ssh-copy-id === | |||
$ ssh-copy-id user@remotehost.tld | $ ssh-copy-id user@remotehost.tld | ||
$ ssh-copy-id -i <id_rsa.pub> -p <port> user@remotehost.tld | $ ssh-copy-id -i <id_rsa.pub> -p <port> user@remotehost.tld | ||
| Zeile 48: | Zeile 50: | ||
$ less ~/.ssh/authorized_keys | $ less ~/.ssh/authorized_keys | ||
=== Passwort für Schlüssel cachen | === Manuell === | ||
* Passwort aus <code>~/.ssh/id_rsa.pub</code> in Zwischenablage kopieren | |||
* Auf Zielmaschine einloggen | |||
* Inhalt aus Zwischenablage am Ende der Datei <code>/home/<zieluser>/.ssh/authorized_keys</code> einfügen | |||
== Passwort für Schlüssel im Schlüsselbund cachen == | |||
Wenn der Schlüssel mit einem Passwort gesichert wurde, kann man mit folgendem Programm das Passwort für den Schlüssel puffern für eine automatische Eingabe: | Wenn der Schlüssel mit einem Passwort gesichert wurde, kann man mit folgendem Programm das Passwort für den Schlüssel puffern für eine automatische Eingabe: | ||
| Zeile 61: | Zeile 68: | ||
# Automatisch gestartete Anwendungen → GNOME-Schlüsselbunddienst: SSH-Agent | # Automatisch gestartete Anwendungen → GNOME-Schlüsselbunddienst: SSH-Agent | ||
== Known Host entfernen == | |||
Alte Hostnamen können aus den known_hosts entfernt werden mit: | Alte Hostnamen können aus den known_hosts entfernt werden mit: | ||
ssh-keygen -f "path-to-known_hosts" -R <hostname> | ssh-keygen -f "path-to-known_hosts" -R <hostname> | ||
ssh-keygen -f "path-to-known_hosts" -R <ipaddress> | ssh-keygen -f "path-to-known_hosts" -R <ipaddress> | ||
[[Kategorie:Linux]] | |||
[[Category:Debian]] | |||
[[ | [[Category:Kryptographie]] | ||
[[Category: | |||
[[Category:Kryptographie]] | |||
Version vom 2. Dezember 2016, 23:45 Uhr
Die nachfolgenden Schritte werden von der Client-Maschine aus ausgeführt.
Voraussetzung ist ein passwortgeschützter SSH-Zugriff zur Server-Maschine.
Schlüssel erstellen
$ ssh-keygen # Neues RSA-Schlüsselpaar in ~/.ssh/ anlegen
Anmerkungen
- Passwortabfrage von
ssh-keygenkann leer gelassen werden, wenn es nur einen User in der Root-Gruppe gibt - Sind mehrere Root-User vorhanden, oder handelt es sich nicht um einen Root-User, ist dies ein Sicherheitsrisiko. In diesem Falle sollte ein Passwort verwendet werden. Dieses kann im Schlüsselbund gedached werden. Vgl. Passwort für Schlüssel im Schlüsselbund cachen
Ergebnis:
Generating public/private rsa key pair. Enter file in which to save the key (/home/user/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/user/.ssh/id_rsa. Your public key has been saved in /home/user/.ssh/id_rsa.pub. The key fingerprint is: b2:ad:a0:80:85:ad:6c:16:bd:1c:e7:63:4f:a0:00:15 user@host The key's randomart image is: +--[ RSA 2048]----+ | E. | | . | |. | |.o. | |.ooo o. S | |oo+ * .+ | |++ +.+... | |o. ...+. | | . .. | +-----------------+
Schlüssel zum remote Host kopieren
Per ssh-copy-id
$ ssh-copy-id user@remotehost.tld $ ssh-copy-id -i <id_rsa.pub> -p <port> user@remotehost.tld
Einloggen ausprobieren
$ ssh user@remotehost.tld
Überprüfen, welche Schlüssel hinterlegt sind, um auszuschließen, dass weitere Schlüssel Zugriff haben:
$ less ~/.ssh/authorized_keys
Manuell
- Passwort aus
~/.ssh/id_rsa.pubin Zwischenablage kopieren - Auf Zielmaschine einloggen
- Inhalt aus Zwischenablage am Ende der Datei
/home/<zieluser>/.ssh/authorized_keyseinfügen
Passwort für Schlüssel im Schlüsselbund cachen
Wenn der Schlüssel mit einem Passwort gesichert wurde, kann man mit folgendem Programm das Passwort für den Schlüssel puffern für eine automatische Eingabe:
$ ssh-add -t 3600
Alternativ GNOME Keyring verwenden.
Für XFCE muss dieser in den Sitzungsoptionen aktiviert werden:
- Fortgeschritten → Laufzeitumgebung für GNOME beim Starten laden
- Automatisch gestartete Anwendungen → GNOME-Schlüsselbunddienst: Sicherheitsdienst
- Automatisch gestartete Anwendungen → GNOME-Schlüsselbunddienst: SSH-Agent
Known Host entfernen
Alte Hostnamen können aus den known_hosts entfernt werden mit:
ssh-keygen -f "path-to-known_hosts" -R <hostname> ssh-keygen -f "path-to-known_hosts" -R <ipaddress>
