Andreas Moor

Linux Systemadministration

SSH-Zugriff auf Fedora Server einrichten – von Anfang an erklärt (für Einsteiger)

Was ist SSH – und warum brauchen wir es?

SSH steht für Secure Shell – ein Netzwerkprotokoll, das eine verschlüsselte Verbindung zu einem entfernten Rechner ermöglicht. Es wird vor allem verwendet, um Server oder andere Linux-Systeme per Terminal aus der Ferne zu verwalten.

Typische Anwendungsfälle:

  • Sich auf einem Server anmelden (z. B. über das Heimnetz)
  • Dateien übertragen (z. B. mit scp oder rsync)
  • Remote-Wartung, Systemupdates, Logfile-Analyse
  • Automatisierte Backups oder Deployments

Beispiel:
Du hast einen kleinen Server im Nebenraum oder im Keller. Statt dort Monitor und Tastatur anzuschließen, kannst du dich über dein WLAN bequem per SSH vom Laptop aus einloggen.

Passwort oder Schlüssel?

SSH erlaubt zwei Authentifizierungsarten:

1. Benutzername + Passwort

  • Einfach, aber unsicher
  • Angreifbar durch Brute-Force-Versuche
  • Muss bei jeder Verbindung neu eingegeben werden

2. Public-Key-Authentifizierung (empfohlen)

Du erzeugst ein Schlüsselpaar:

TeilBedeutung
Privater SchlüsselBleibt geheim auf deinem Client-Gerät
Öffentlicher SchlüsselWird auf dem Server gespeichert

Funktionsweise:
Der Server kennt deinen Public Key. Wenn du dich verbindest, beweist dein privater Schlüssel mathematisch, dass du dazugehörst – ganz ohne Passwort.

Vorteile:

  • Deutlich sicherer als Passwörter
  • Ermöglicht automatische Logins (z. B. für Skripte)
  • Optional mit Passphrase zusätzlich geschützt

Warum funktioniert SSH auf Fedora Server nicht „einfach so“?

Zwar ist SSH auf Fedora Server standardmäßig installiert und aktiviert, aber die Konfiguration setzt darauf, dass du selbst aktiv wirst:

  • Viele zentrale Optionen sind auskommentiert (z. B. Port, ListenAddress, PubkeyAuthentication)
  • Der Dienst sshd läuft, aber lauscht nicht immer auf dem Netzwerk-Port
  • Selbst wenn du deinen Schlüssel korrekt überträgst, wird er ignoriert, wenn die Konfiguration nicht passt

Ziel dieses Artikels

Du lernst, wie du:

  • ein SSH-Schlüsselpaar erzeugst
  • den Public Key auf den Server bringst
  • die Rechte und Konfigurationsdateien korrekt setzt
  • dich sicher und passwortlos einloggen kannst

Voraussetzungen

  • Fedora Server ist installiert und läuft
  • Du hast physischen Zugriff auf den Server (z. B. Tastatur + Bildschirm)
  • Dein Client-Rechner hat ein Terminal (Linux, macOS oder Windows mit WSL)
  • Optional: USB-Stick, falls du den Schlüssel nicht übers Netzwerk übertragen kannst

1. SSH-Schlüssel auf dem Client erzeugen

ssh-keygen -t ed25519 -C "mein-laptop"

Erklärung:

  • ssh-keygen startet die Erstellung eines Schlüsselpaares
  • -t ed25519 wählt einen modernen, sicheren Algorithmus
  • -C fügt einen Kommentar hinzu

Standardpfad ist ~/.ssh/id_ed25519. Eine Passphrase erhöht die Sicherheit.

2. Den öffentlichen Schlüssel anzeigen

cat ~/.ssh/id_ed25519.pub

3. IP-Adresse des Servers herausfinden

ip a

Beispielausgabe: inet 192.168.178.85/24

4. Den Public Key auf den Server übertragen

Möglichkeit A: Per Netzwerk

ssh-copy-id andy@192.168.178.85

Möglichkeit B: Per USB-Stick

cat ~/.ssh/id_ed25519.pub > /run/media/$USER/STICKNAME/id_ed25519.pub

Dann auf dem Server:


mkdir -p ~/.ssh
chmod 700 ~/.ssh
cat /run/media/andy/STICKNAME/id_ed25519.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
chown -R andy:andy ~/.ssh

5. SSH-Server konfigurieren

sudo nano /etc/ssh/sshd_config

Aktiviere oder ergänze:


Port 22
AddressFamily any
ListenAddress 0.0.0.0
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
sudo systemctl restart sshd

6. Lauscht der Server jetzt auf Port 22?

ss -tnlp | grep :22

Erwartete Ausgabe:

LISTEN 0 128 0.0.0.0:22 ...

7. Verbindung vom Client testen

ssh andy@192.168.178.85

8. Optional: Passwort-Login abschalten

PasswordAuthentication no
sudo systemctl restart sshd

Zusammenfassung

Fedora Server installiert SSH automatisch, aber überlässt dir bewusst die Feinkonfiguration. Damit SSH zuverlässig funktioniert, brauchst du:

  • ein gültiges Schlüsselpaar
  • korrekt gesetzte Datei- und Ordnerrechte
  • eine aktivierte Serverkonfiguration (PubkeyAuthentication yes)
  • eine laufende SSH-Instanz, die auf dem Netzwerk lauscht

Wenn du diesen Prozess einmal durchläufst, gewinnst du nicht nur Zugang zum Server – sondern auch ein fundamentales Verständnis für Authentifizierung, Verschlüsselung und Linux-Administration.

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert