...
Diese Host-Schlüssel sind sozusagen das Ausweispapier des Servers, die bei Aktivierung des ssh-Servers in der eisfair-Konfigurationsschicht automatisch erzeugt werden, die Erweiterung pub kennzeichnet den öffentlichen Schlüssel.
Diese Schlüssel dürfen niemals für andere Zwecke z. B. als User-Athentifizierungs-Keys missbraucht werden.
Im Zuge der Härtung des eisfair-ssh-Systems durch das Base-Update 2.3.9 werden nur noch ed25519- und rsa-(4096 Bit)-Schlüssel - sofern nicht vorhanden - erzeugt. Eventuell noch vorhandene id_host_dsa, id_host_ecdsa und id_host (rsa1) Schlüssel werden nicht gelöscht, gelten aber als unsicher und sollten daher, wenn es keine gravierenden Gründe für deren Beibehaltung gibt, aus /etc/ssh gelöscht werden. Ein älterer id_host_rsa-Key mit weniger als 4096 Bit sollte aus den gleichen Gründen mit 4096 Bit neu erzeugt werden. Server-Host-Keys können im SSH Administrationsmenü neu erzeugt werden.
...
- Kopieren der *.pub-Schlüsseldateien vom Client in das Verzeichnis ~/externe_ssh_pub_keys, wobei statt der auf dem Herkunftsclient genutzten Dateinamen id_<typ>.pub auf dem eisfair-Server aussagekräftigere Namen wie max_an_client_1_<typ>.pub gewählt werden sollten, damit sich Schlüssel verschiedener Client-Rechner nicht gegenseitig in die Quere kommen.
- Auf dem eisfair-Server als User anmelden, in dessen Home die Schlüssel kopiert wurden.
Anschliessend die Schlüssel der authorized_keys-Datei hinzufügen:
Code Block language bash # cat ~/externe_ssh_pub_keys/<schlüsselname>.pub >> ~/.ssh/authorized_keys
Die importierten Schlüssel können nun wieder aus dem Verzeichnis ~/externe_ssh_pub_keys gelöscht werden.
Für den User root auf dem eisfair-Server darf die Einbindung der Schlüssel in die authorized_keys-Datei jedoch nicht manuell erfolgen, da diese Datei von Systemskripten erzeugt wird. Stattdessen sind die Schlüssel nach dem Übertragen auf den Server in die ssh-Konfiguration einzutragen und dann folgende Schritte ausführen:
- Kopieren der *.pub-Schlüsseldateien vom Client in das Verzeichnis /root/externe_ssh_pub_keys, wobei statt der auf dem Herkunftsclient genutzten Dateinamen id_<typ>.pub auf dem eisfair-Server aussagekräftigere Namen wie max_an_client_1_<typ>.pub gewählt werden sollten, damit sich Schlüssel verschiedener Client-Rechner nicht gegenseitig in die Quere kommen.
- Auf dem eisfair-Server als root anmelden.
Die ssh-Konfiguration öffnen und die Schlüssel eintragen:
Code Block language bash SSH_PUBLIC_KEY_N='2' SSH_PUBLIC_KEY_1_NAME='Max ED25519-Schluessel von Client 1' SSH_PUBLIC_KEY_1_ACTIVE='yes' SSH_PUBLIC_KEY_1='/root/externe_ssh_pub_keys/max_an_client_1_ed25519.pub' SSH_PUBLIC_KEY_2_NAME='Max RSA-Schluessel von Client 1' SSH_PUBLIC_KEY_2_ACTIVE='yes' SSH_PUBLIC_KEY_2='/root/externe_ssh_pub_keys/max_an_client_1_rsa.pub'
Hinweis: Diese Optionen der ssh-Konfiguration dienen nur dazu, die pub-Keys von auf Clients erzeugten Schlüsselpaaren zur Authentifizierung am eisfair-Server einzutragen und nicht die pub-Keys in den .ssh-Verzeichnissen lokaler eisfair-User (einschließlich root).
- Die auf den Server übertragenen Schlüssel dürfen nicht vom eisfair-Server gelöscht werden, da jeder erneute Aufruf der ssh-Konfiguration die authorized_keys für root neu erzeugt und daher jederzeit die in der Konfiguration eingetragenen Schlüssel vorhanden sein müssen.
...
Zunächst sind gemäß Abschnitt 2b auf dem eisfair-Server, der die Rolle des Clients spielt, die entsprechenden Schlüssel zu erzeugen und anschließend nach Abschnitt 2a in den zweiten eisfair-Server (Server-Rolle) zu importieren.
3: Erforderliche Rechte des Userverzeichnisses .ssh
Für eine ordnungsgemäße Funktion des ssh/sshd sind restriktive Rechte nur für den besitzenden User zu setzen. Das Verzeichnis ~/.ssh bzw. /root/.ssh muss die Rechte 0700, die Dateien in diesem Verzeichnis 0600 haben.
Code Block | ||
---|---|---|
| ||
# cd ~ # chmod 0700 .ssh # cd .ssh # chmod 0600 * |
Das generelle Abschaltung einer Passwort-Authentifizierung auf einem Server darf erst dann erfolgen, wenn die Authentifizierung mittels Key funktioniert, ansonsten sperrt man sich selbst aus dem Server aus.