#!/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! 🔐"