- Interactive mission selector with metadata-driven design - 5 educational missions (basics + advanced) - AI assistant roles (Deepbit, Bugsy, Schnippsi, Tobi) - SnakeCam gesture recognition system - Token tracking utilities - CLAUDE.md documentation - .gitignore for logs and secrets
73 lines
1.9 KiB
Bash
Executable File
73 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# 🔐 SSH Security Basics
|
|
# Lehrt: SSH-Verbindungen, Keys, Agent
|
|
|
|
cat << 'EOF'
|
|
|
|
🔐 SSH Security Basics
|
|
|
|
Lass uns sichere Verbindungen zu anderen Maschinen aufbauen!
|
|
SSH (Secure Shell) ist DAS Tool für Remote-Administration.
|
|
|
|
EOF
|
|
|
|
echo "🎓 Lektion 1: SSH Key-Paare verstehen"
|
|
echo ""
|
|
echo "Ein SSH-Key besteht aus zwei Teilen:"
|
|
echo " 🔑 Private Key (geheim, nur bei dir!)"
|
|
echo " 🗝️ Public Key (darf geteilt werden)"
|
|
echo ""
|
|
|
|
echo "📂 Typische SSH-Struktur:"
|
|
ls -lh ~/.ssh/ 2>/dev/null || echo "⚠️ Noch kein ~/.ssh/ Verzeichnis vorhanden"
|
|
echo ""
|
|
|
|
echo "🎓 Lektion 2: SSH-Agent prüfen"
|
|
echo ""
|
|
echo "Der SSH-Agent verwaltet deine Keys im Speicher."
|
|
echo " Befehl: ssh-add -l"
|
|
echo ""
|
|
read -p "Drücke Enter zum Ausführen..." -r
|
|
ssh-add -l 2>/dev/null || echo "⚠️ Kein SSH-Agent läuft oder keine Keys geladen"
|
|
|
|
echo ""
|
|
echo "🎓 Lektion 3: Neue SSH-Verbindung (Simulation)"
|
|
echo ""
|
|
echo "Syntax: ssh user@hostname"
|
|
echo "Beispiel: ssh pi@raspberrypi.local"
|
|
echo ""
|
|
echo "💡 Nützliche SSH-Optionen:"
|
|
echo " - ssh -v user@host (verbose, zeigt Debug-Info)"
|
|
echo " - ssh -p 2222 user@host (non-standard Port)"
|
|
echo " - ssh -i key.pem user@host (nutze spezifischen Key)"
|
|
echo ""
|
|
|
|
echo "🎓 Lektion 4: SSH Config verstehen"
|
|
echo ""
|
|
if [[ -f ~/.ssh/config ]]; then
|
|
echo "✅ Du hast eine SSH-Config:"
|
|
head -n 10 ~/.ssh/config 2>/dev/null
|
|
else
|
|
echo "⚠️ Keine ~/.ssh/config vorhanden"
|
|
echo ""
|
|
echo "Beispiel-Config:"
|
|
cat << 'CONFIGEOF'
|
|
Host raspi
|
|
HostName raspberrypi.local
|
|
User pi
|
|
Port 22
|
|
IdentityFile ~/.ssh/raspi_key
|
|
CONFIGEOF
|
|
fi
|
|
|
|
echo ""
|
|
echo "💡 Wichtige Sicherheits-Tipps:"
|
|
echo " 1. Nutze SSH-Keys statt Passwörter"
|
|
echo " 2. Schütze deinen Private Key (chmod 600)"
|
|
echo " 3. Aktiviere SSH-Agent-Forwarding nur wenn nötig"
|
|
echo " 4. Überprüfe Fingerprints bei neuen Hosts"
|
|
echo ""
|
|
|
|
echo "✅ Mission abgeschlossen! Du bist jetzt SSH-sicherer! 🔐"
|