Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung | |||
| home-harmening:sicherheit:ssh:ssh_key_generieren [2024/10/22 05:40] – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | home-harmening:sicherheit:ssh:ssh_key_generieren [2024/10/22 05:40] (aktuell) – ↷ Seite von home-harmening:sicherhiet:ssh:ssh_key_generieren nach home-harmening:sicherheit:ssh:ssh_key_generieren verschoben charmening | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ===== SSH Key generieren ===== | ||
| + | SSH sollte immer in Kombination mit Schlüsseln genutzt werden. | ||
| + | Ein SSH Schlüssel kann zur automatischen passwotlosen authentifizierung genutzt werden. Zusammen mit einem PassPhrase ist auch quasi eine zwei Faktor Authentifizerung. | ||
| + | \\ \\ | ||
| + | **Für einen administrativen Account sollte immer ein PassPhrase genutzt werden!** | ||
| + | \\ \\ | ||
| + | ==== Schlüsseltypen ==== | ||
| + | ** Kopiert von ** [[https:// | ||
| + | \\ \\ | ||
| + | === RSA === | ||
| + | RSA (Rivest-Shamir-Adleman) ist ein asymmetrischer Verschlüsselungsalgorithmus, | ||
| + | |||
| + | Beim RSA-Verschlüsselungsprozess werden zwei große Primzahlen (p und q) multipliziert, | ||
| + | |||
| + | **Da RSA jedoch mit extrem großen Zahlen arbeitet, muss es einen Schlüssel mit einer Länge von mindestens 3072 Bit generieren, um dem 128-Bit-Sicherheitsstandard zu entsprechen. | ||
| + | Arten von RSA-Schlüsseln** | ||
| + | |||
| + | RSA verwendet zwei Arten von kryptografischen Schlüsseln – öffentliche und private. Beide Schlüssel sind das Ergebnis komplexer mathematischer Gleichungen. Wenn Sie Zahlen mögen, finden Sie hier eine grobe Erklärung, wie jeder der Schlüssel berechnet wird: | ||
| + | |||
| + | Der öffentliche RSA-Schlüssel besteht aus der zusammengesetzten Zahl (n) und einem öffentlichen Exponenten (e). Der öffentliche Exponent ist eine Zahl, die zwei Bedingungen erfüllen muss. Erstens muss er eine Komprime zu ϕ(n) sein, wenn ϕ(n) (p−1)(q−1) ist. Zweitens sollte der öffentliche Exponent eine kleine Zahl sein, beispielsweise 65537. | ||
| + | Der private RSA-Schlüssel besteht aus der zusammengesetzten Zahl (n) und einer privaten Komponente (d). Die private Komponente (d) wird so gewählt, dass sie einen Rest von 1 ergibt, wenn sie mit dem öffentlichen Exponenten (e) multipliziert und durch ϕ(n) dividiert wird. | ||
| + | |||
| + | Sowohl der öffentliche als auch der private Schlüssel im RSA-Algorithmus enthalten die zusammengesetzte Zahl (n) – ein Element, das die beiden verbindet. Dieses Element ermöglicht es RSA, als asymmetrischer Algorithmus zu funktionieren, | ||
| + | Was ist ECDSA und wie funktioniert es? | ||
| + | \\ \\ | ||
| + | === ECDSA === | ||
| + | Der Elliptic Curve Digital Signature Algorithm (ECDSA) ist ein kryptografischer Algorithmus, | ||
| + | |||
| + | ECDSA arbeitet auf der Grundlage des diskreten Logarithmusproblems (DLP), dessen Lösung rechnerisch unmöglich ist. Im Wesentlichen wird ein Punkt P zufällig innerhalb der elliptischen Kurve (E) von ECDSA ausgewählt. Dann wird ein weiterer Punkt – Q – innerhalb derselben Kurve ausgewählt, | ||
| + | |||
| + | Obwohl ECDSA große Schlüssel verwendet, sind diese deutlich kleiner als bei RSA. Damit ECDSA den 128-Bit-Sicherheitsstandard erreicht, reicht es aus, 256-Bit-Schlüssel zu verwenden. Im Vergleich dazu benötigt RSA mindestens 3072-Bit-Schlüssel, | ||
| + | Arten von ECDSA-Schlüsseln | ||
| + | |||
| + | Der ECDSA besteht aus zwei kryptografischen Schlüsseln – einem öffentlichen und einem privaten. Jeder der Schlüssel steht für ein bestimmtes Element aus der DLP-Gleichung (Q=kP): | ||
| + | |||
| + | Der private ECDSA-Schlüssel steht für die zufällig ausgewählte Ganzzahl (k), die sich nicht ändert, solange das kryptografische Schlüsselpaar verwendet wird. | ||
| + | Der öffentliche ECDSA-Schlüssel stellt den Punkt Q dar und wird aus dem privaten Schlüssel (k) abgeleitet, wenn er in der Gleichung Q=kP verwendet wird. Dabei steht P für den vordefinierten Punkt innerhalb der elliptischen Kurve. | ||
| + | |||
| + | Die Schlüsselgenerierung in ECDSA erfordert viel komplexere mathematische Berechnungen als die bereitgestellte vereinfachte Version der DLP-Gleichung (Q=kP). Diese Vereinfachung hilft jedoch zu veranschaulichen, | ||
| + | \\ \\ | ||
| + | ==== SSH Key mit PassKey generieren ==== | ||
| + | < | ||
| + | PassPhrase festelegen! | ||
| + | |||
| + | |-t| Schlüsseltyp| | ||
| + | |-b| Bitlänge, quasi die Länge der Kurve| | ||
| + | |-E| Hash des Fingerprints| | ||
| + | |-a| Durch wieviele Runden KDF (key derivation function, currently bcrypt_pbkdf) ist der Key gegen Bruteforce geschützt| | ||
| + | \\ \\ | ||
| + | ==== Server Konfiguration ==== | ||
| + | Um einen Login per Schlüssel zu konfigurieren muss auf dem Server der public Key hinterlegt werden. | ||
| + | Entweder durch | ||
| + | < | ||
| + | oder man erstellt die Datei authorized_keys per Hand | ||
| + | < | ||
| + | Hier wird stumpf der Inhalt von der Datei id_ecdsa.pub hinein kopiert. | ||
| + | |||