Linux Administrator Guide: Per SSH auf einen Remote-Server einloggen (System Engineer Tutorial)
Herzlich willkommen zu Teil 3 der Reihe für angehende Linux-Administratoren und System Engineers. In diesem Tutorial lernst du die absolute Grundlage der Remote-Verwaltung: wie du dich sicher über das Netzwerk mittels SSH (Secure Shell) mit einem Linux-Server verbindest.
Als System Engineer ist das Terminal dein wichtigstes Werkzeug – und SSH ist die Brücke zu deiner Infrastruktur.
1. Was ist SSH und warum nutzen wir es?
SSH steht für Secure Shell. Es ist ein kryptografisches Netzwerkprotokoll, das genutzt wird, um eine verschlüsselte Verbindung zwischen einem Client (deinem Rechner) und einem Server aufzubauen.
Standardmäßig läuft SSH über Port 22 (TCP). Alle übertragenen Daten – einschließlich Passwörter und eingegebene Befehle – sind vollständig verschlüsselt.
2. Voraussetzungen
Bevor es losgeht, benötigst du folgende Informationen über deinen Zielserver:
- Die IP-Adresse oder den Domainnamen (FQDN) des Servers (z. B.
192.168.1.50oderserver01.example.com). - Einen gültigen Benutzernamen auf dem Server.
- Das zugehörige Passwort (oder einen SSH-Key).
- Ein Terminal auf deinem lokalen Rechner (Linux/macOS Terminal oder Windows PowerShell).
3. Der Standard-Login (Passwort-basiert)
Die grundlegende Syntax für den Verbindungsaufbau lautet:
ssh benutzername@ip-adresse
Beispiel:
Du möchtest dich als Benutzer sysadmin auf dem Server mit der IP 192.168.1.50 anmelden:
ssh sysadmin@192.168.1.50
Der "Host Key Fingerprint" (Wichtig beim ersten Login)
Verbindest du dich zum ersten Mal mit einem Server, erscheint eine Sicherheitsmeldung:
The authenticity of host '192.168.1.50 (192.168.1.50)' can't be established.
ED25519 key fingerprint is SHA256:abcd1234...
Are you sure you want to continue connecting (yes/no/[fingerprint])?
- Bedeutung: Dein Client kennt den Server noch nicht und fragt, ob du dem Server vertraust (Schutz vor Man-in-the-Middle-Angriffen).
- Aktion: Tippe
yesein und drückeEnter. - Der Server wird nun in deiner lokalen Datei
~/.ssh/known_hostsgespeichert. - Gib danach das Passwort des Remote-Benutzers ein (Hinweis: Bei der Eingabe werden im Terminal keine Sternchen angezeigt).
4. SSH über einen abweichenden Port
In Unternehmensumgebungen wird der Standard-Port 22 aus Sicherheitsgründen oft geändert, um automatisierte Angriffe zu reduzieren. Nutze den Parameter -p, um einen Port anzugeben:
ssh -p 2222 sysadmin@192.168.1.50
5. Profi-Methode: SSH-Key-Authentifizierung (Passwordless Login)
Als System Engineer nutzt man im Arbeitsalltag selten Passwörter, sondern SSH-Keys. Diese sind deutlich sicherer und ermöglichen Automatisierung (z. B. mit Ansible).
Schritt 1: Lokales Schlüsselpaar generieren (auf deinem PC)
Erstelle ein modernes und sicheres ED25519-Schlüsselpaar:
ssh-keygen -t ed25519 -C "admin@company.com"
Bestätige den Speicherort mit Enter und vergib optional eine Passphrase für zusätzlichen Schutz.
Schritt 2: Public Key auf den Server übertragen
Kopiere deinen öffentlichen Schlüssel mit dem Tool ssh-copy-id auf den Remote-Server:
ssh-copy-id sysadmin@192.168.1.50
Gib hier ein letztes Mal das Server-Passwort ein. Der Schlüssel wird auf dem Server in der Datei ~/.ssh/authorized_keys hinterlegt.
Schritt 3: Testen
Wenn du dich jetzt erneut verbindest, wirst du nicht mehr nach dem Benutzerpasswort gefragt:
ssh sysadmin@192.168.1.50
6. System Engineer Workflow: Die SSH-Config Datei
Ständig IP-Adressen, Ports und Nutzernamen zu tippen, ist ineffizient. Auf deinem lokalen Rechner kannst du dir Aliase anlegen.
Erstelle oder bearbeite die Datei ~/.ssh/config:
nano ~/.ssh/config
Füge folgenden Block ein:
Host webprod
HostName 192.168.1.50
User sysadmin
Port 2222
IdentityFile ~/.ssh/id_ed25519
Der Vorteil: Ab jetzt genügt dieser kurze Befehl, um dich mit allen definierten Parametern zu verbinden:
ssh webprod
7. Wichtige Sicherheits-Tipps für Administratoren
Wenn du einen neuen Linux-Server aufsetzt, solltest du serverseitig in der Datei /etc/ssh/sshd_config folgende Einstellungen prüfen:
- Root-Login verbieten:
PermitRootLogin no(Verhindert, dass sich der Superuser direkt anmeldet; man loggt sich als normaler User ein und nutztsudo). - Passwort-Authentifizierung deaktivieren:
PasswordAuthentication no(Erst aktivieren, wenn der SSH-Key-Login nachweislich funktioniert!). - Dienst neu laden:
Nach Änderungen immer den SSH-Daemon neu laden:
sudo systemctl restart sshd
Zusammenfassung & Ausblick
Du hast gelernt:
- Wie der Basis-Login per SSH funktioniert.
- Was der Host-Key-Fingerprint bedeutet.
- Wie du sichere SSH-Keys generierst und verteilst.
- Wie du deine Produktivität mit der Datei
~/.ssh/configsteigerst.
Im nächsten Teil unserer Administrator-Reihe widmen wir uns den Linux-Dateirechten und der Benutzerverwaltung auf dem Server.