Kategorie:Linux: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
(Die Seite wurde geleert.)
Markierung: Geleert
Zeile 1: Zeile 1:
==Authentifizierung der Server mit Schlüsseln==


Server authentifiziert sich gegenüber dem Client mit seinem Hostkey.<br>
Ist der Ziel-Host dem Client noch nicht bekannt, erfolgt eine Warnmeldung.<br>
In der Meldung erscheint auch der Fingerprint des Hostkeys:
[root@scientific /]# ssh uvm1.nwa-net.de
The authenticity of host
uvm1.nwa-net.de (176.95.26.236)' can't be established.
ECDSA key fingerprint is SHA256:TbVCtl6TJHAHacrTdwh9gqzvx8fB5bzhi1lL/ByFbYE.
ECDSA key fingerprint is MD5:c8:db:4a:6f:99:7a:e9:9d:ca:82:c7:36:99:ac:14:c9.
Are you sure you want to continue connecting (yes/no)?
Bestätigt man mit yes, wird der Hostkey des Servers in die Datei ~./ssh/known_hosts des Benutzers eingetragen und die Verbindung hergestellt.<br>
Bei späteren Anmeldungen entfällt entsprechend die Warnmeldung.
Eine Liste der bekannten Hosts können Sie mithilfe des folgenden Kommandos bekommen:
[root@scientific /]# ssh-keygen -l -f ~/.ssh/known_hosts
256 SHA256:VOrsAcZc//9EiAATV2DfSN2jHONQBEuJpyrmW+Q3CWQ
user,192.168.178.2 (ECDSA)
256 SHA256:TbVCtl6TJHAHacrTdwh9gqzvx8fB5bzhi1lL/ByFbYE
uvm1.nwa-net.de,176.95.26.236 (ECDSA)
Ändert sich der Schlüssel eines Zielsystems, erfolgt die Warnmeldung:
$ ssh scientific
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:r+9OEu2EM5ubr0P5wl4lLgUo5n/8/AkX2exIiPqQ9rs.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /root/.ssh/known_hosts:15
ECDSA host key for scientific has changed and you have requested strict checking.
Host key verification failed.
Wenn es sich um keine echte man-in-the-middle-attack handelt, entfernt man mithilfe eines Editors den veralteten Schlüssel aus der known_hosts-Datei und baut die Verbindung erneut auf.
==/etc/ssh/ssh_known_hosts==
Die ssh_known_hosts ist ausdrücklich als Prüfungsthema genannt und wird deshalb ausführlich bearbeitet.<br>
Sie macht nichts anderes als die Datei ~/.ssh/known_hosts für jeden Benutzer, nur eben zentralisiert.
===Hostkeys===
OpenSSH erstellt in der Regel automatisch Hostkeys.
Sie dienen der Authentifizierung zwischen Server und Clientcomputer.
Die folgenden Dateien enthalten jeweils eine den privaten und die andere den öffentlichen Schlüssel:
ssh_host_dsa_key
ssh_host_dsa_key.pub
ssh_host_ecdsa_key
ssh_host_ecdsa_key.pub
ssh_host_ed25519_key
ssh_host_ed25519_key.pub
ssh_host_rsa_key
ssh_host_rsa_key.pub
Ohne Dateierweiterung = privater Schlüssel.<br>
Mit Erweiterung .pub = öffentlicher (public) Schlüssel.<br>
Die Konfigurationsdatei dazu ist sshd_config.
DSA gilt als veraltet und weist auch zumindest eine bekannte Schwäche auf. <br>
Sie sollten es nicht mehr verwenden. Ab der Version 7.0 von SSH wird es auch nicht mehr unterstützt.<br>
ECDSA ist Momentan bei den meisten Linux-Distributionen Standard.<br>
Es kommt mit kleineren Schlüsselgrößen aus, als etwa RSA, steht aber leider im Verdacht, die gleichen Schwächen aufzuweisen wie DSA. RSA ist ein gut etablierter Standard, der überall unterstützt wird.<br>
Es spricht also nichts gegen die Verwendung von RSA, außer dass RSA schon seit 1977 existiert.<br>
Ed25519 ähnelt technisch ECDSA, weist aber nicht dieselbe Schwäche auf.<br>
Es wird nur von sehr neuen SSH-Versionen unterstützt und es empfiehlt sich daher nicht, Ed25519 als Standalone-Lösung zu verwenden, wenn man auch ältere Clientsysteme im Einsatz hat.<br>
Das Programm ssh-keygen generiert neue Schlüssel.<br>
Optional muss die Pfadangabe zum entsprechenden Dateinamen des Users angeben werden.<br>
Option –t legt den Typ des zu generierenden Schlüssels fest.<br>
Zur Auswahl stehen rsa, dsa, ecdsa und ed25519.<br>
'''Beispiel:'''<br>
Ein neues Schlüsselpaar für RSA wird erstellt.<br>
Benutzereingaben sind fett gedruckt.<br>
Eine passphrase wurde nicht verwendet.
[root@scientific /]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
/etc/ssh/ssh_host_rsa_key
/etc/ssh/ssh_host_rsa_key already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /etc/ssh/ssh_host_rsa_key.
Your public key has been saved in /etc/ssh/ssh_host_rsa_key.pub.
The key fingerprint is:
SHA256:zinmLbZLTBxcCOWN52QBDniQVAE9GfD/MuuQHzk3QQ4 root@scientific
Die generierte Datei ssh_host_rsa_key.pub enthält den öffentlichen Schlüssel des Systems.<br>
Sie kann zur Verteilung an Clients verwendet werden.<br>
Die Datei ssh_host_rsa_key enthält den privaten Schlüssel des Servers und ist entsprechend geheim zu halten.<br>
Folgende Kommandos können vom Clientsystem verwendet werden um den öffentlichen Schlüssel zu importieren:
root@client:/# scp scientific:/etc/ssh/ssh_host_rsa_key.pub ./
root@client:/# cat ssh_host_rsa_key.pub >> /etc/ssh/ssh_known_hosts
root@client:/# rm ssh_host_rsa_key.pub
===Benutzerauthentifizierung mit Schlüsseln===

Version vom 17. Juli 2019, 13:52 Uhr

Unterkategorien

Diese Kategorie enthält die folgenden 25 Unterkategorien (25 insgesamt):

L

Seiten in der Kategorie „Linux“

Diese Kategorie enthält nur die folgende Seite.