# 🧭 Crumbpage 08: Key Generation für SSH

**Subtitle:** *Schlüssel statt Passwörter - Komfort trifft Sicherheit*  
**Pfad:** 8 von 11  
**Schwierigkeit:** ⭐⭐⭐⭐ (4/5)  
**Zeit:** ~2 Stunden  
**Voraussetzungen:** Pfad 7 (SSH Basics)

> *"Ein Passwort kann erraten werden. Ein kryptographischer Schlüssel ist wie ein DNA-Test."* 🌲

---

## 📋 Was du in diesem Pfad lernst

```
✓ Asymmetrische Verschlüsselung (Public/Private Key)
✓ Schlüsselpaar generieren (ssh-keygen)
✓ Schlüssel auf Server kopieren (ssh-copy-id)
✓ Login ohne Passwort
✓ Passphrase für den Key
```

---

## 🎯 Lernziele

Nach diesem Pfad kannst du:

- [ ] Ein SSH-Key-Pair erstellen
- [ ] Den Public Key auf einen Server installieren
- [ ] Dich ohne Passwort einloggen
- [ ] Verstehen, warum du deinen Private Key NIEMALS teilen darfst

---

## 🌱 Grundkonzepte

### Konzept 1: Das Schlüssel-Paar

Stell dir vor, du hast ein Schloss und einen Schlüssel.
- **Public Key (Schloss):** Kannst du jedem geben. "Hier, bau das an deine Tür."
- **Private Key (Schlüssel):** Behältst du. Nur du kannst Türen öffnen, an denen dein Schloss hängt.

### Konzept 2: Passphrase

Dein Private Key ist eine Datei. Wenn jemand die klaut, ist er du.
Deshalb schützen wir die Datei mit einem Passwort (Passphrase).
Doppelte Sicherheit: Du brauchst die Datei (Besitz) UND das Passwort (Wissen).

---

## 🔧 Praktische Befehle

### Befehl 1: `ssh-keygen` (Schmiede)

```bash
$ ssh-keygen -t ed25519 -C "deine@email.com"
# -t ed25519: Moderner, sicherer Algorithmus (besser als rsa)
# -C: Kommentar (damit du weißt, wem der Key gehört)
# Drücke Enter für Standard-Pfad.
# Wähle eine gute Passphrase!
```

### Befehl 2: `ssh-copy-id` (Verteilen)

```bash
$ ssh-copy-id user@server
# Kopiert deinen Public Key (~/.ssh/id_ed25519.pub)
# in die ~/.ssh/authorized_keys des Servers.
```

---

## 💡 Best Practices

### DO ✅

```bash
# 1. Nutze ED25519
# RSA ist okay, aber ED25519 ist State-of-the-Art.

# 2. Nutze eine Passphrase
# Ein ungeschützter Key ist ein Risiko.
```

### DON'T ❌

```bash
# 1. Private Key versenden
# NIEMALS per Mail, Slack oder Discord schicken.
# Er verlässt NIEMALS deinen Computer.

# 2. Public Key verstecken
# Der Public Key (.pub) ist öffentlich. Den kannst du plakatieren.
```

---

## 🎓 Hands-On Übungen

### Übung 1: Der Schmied

1. Generiere ein neues Schlüsselpaar.
2. Schau dir die Dateien an: `ls -l ~/.ssh/`
3. Lies den Public Key: `cat ~/.ssh/id_ed25519.pub` (Das ist okay!)

### Übung 2: Der magische Zugang

1. Kopiere den Key auf deine VM/Pi.
2. Logge dich aus (`exit`).
3. Logge dich wieder ein (`ssh user@server`).
4. Musstest du das Server-Passwort eingeben? Nein! (Vielleicht die Key-Passphrase).

---

## 🦉 Crystal Owl's Weisheit

> *"Wer Schlüssel nutzt, schläft ruhiger. Wer Passwörter nutzt, tippt mehr."*

---

**Navigation:**  
[← Zurück: SSH Basics](crumbpage-07-ssh-basics.md) | [Weiter: Storage →](crumbpage-09-storage.md)
