1. Was ist SSH und warum ist es wichtig?

SSH steht fuer Secure Shell – ein Netzwerkprotokoll, das eine verschluesselte Verbindung zwischen zwei Computern herstellt. Ueber SSH kannst du dich von deinem lokalen Computer aus auf einem entfernten Server einloggen und dort Befehle ausfuehren – als waerst du direkt vor dem Server-Terminal.

Vor SSH gab es Telnet, das Verbindungen im Klartext uebertrug – inklusive Benutzernamen und Passwort. SSH hat Telnet vollstaendig abgeloest und ist heute der Standard fuer sichere Remote-Verbindungen auf Linux- und Unix-Servern. Port 22 ist der Standard-SSH-Port.

SSH vs. FTP vs. SFTP

FTP uebertraegt Dateien unverschluesselt – sicherheitstechnisch veraltet. SFTP (SSH File Transfer Protocol) ist FTP ueber eine SSH-Verbindung – sicher und weit verbreitet. SSH selbst gibt dir interaktiven Shell-Zugang: Du kannst Dateien verschieben, Prozesse starten, Konfigurationsdateien bearbeiten und Skripte ausfuehren. Alle drei nutzen unterschiedliche Ports: FTP = 21, SFTP = 22 (wie SSH), FTPS = 990.

Wer braucht SSH-Zugang?

SSH ist besonders wertvoll fuer:

2. SSH-Verbindung aufbauen: Schritt fuer Schritt

Fuer eine SSH-Verbindung brauchst du drei Dinge: den Hostnamen (oder IP-Adresse) des Servers, deinen Benutzernamen und entweder ein Passwort oder einen SSH-Key. Hosting-Anbieter stellen diese Informationen im Kundencenter bereit.

Verbindung unter Linux und macOS (Terminal)

Auf Linux und macOS ist SSH im Terminal bereits integriert. Der grundlegende Befehl lautet:

ssh benutzername@hostname

Mit Port-Angabe (falls nicht Standard-Port 22):

ssh -p 2222 benutzername@hostname

Beim ersten Verbindungsaufbau wirst du gefragt, ob du dem Server-Fingerprint vertraust. Pruefe diesen Fingerprint idealerweise gegen die Angaben deines Hosting-Anbieters und bestatige mit yes. Der Fingerprint wird dann in ~/.ssh/known_hosts gespeichert.

Verbindung unter Windows

Windows 10 und 11 haben einen integrierten OpenSSH-Client in der PowerShell und der Eingabeaufforderung – du kannst dieselben Befehle wie unter Linux/macOS verwenden. Alternativ gibt es grafische SSH-Clients:

  1. 1
    SSH-Zugangsdaten im Kundencenter holen Hostname (oft identisch mit deiner Domain oder einer server-spezifischen Adresse), Benutzername und Passwort oder den Hinweis auf SSH-Key-Authentifizierung findest du im Hosting-Control-Panel deines Anbieters.
  2. 2
    SSH in Terminal oder Client oeffnen Terminal oeffnen (Linux/macOS) oder PuTTY/PowerShell (Windows). Hostname und Port eingeben.
  3. 3
    Server-Fingerprint pruefen und bestaetigen Beim ersten Verbindungsaufbau erscheint der Host-Key-Fingerprint. Vergleiche ihn mit den Angaben deines Anbieters und bestatige mit "yes".
  4. 4
    Passwort eingeben oder Key nutzen Bei Passwort-Authentifizierung: Passwort eintippen (kein Echo sichtbar). Bei Key-Authentifizierung: Verbindung wird automatisch aufgebaut, wenn dein Public Key auf dem Server hinterlegt ist.
  5. 5
    Shell-Prompt erscheint – du bist verbunden Du siehst jetzt das Terminal des Servers und kannst Befehle ausfuehren. Mit exit oder Strg+D beendest du die Verbindung sauber.

3. SSH-Key-Authentifizierung: Sicherer als Passwort

SSH-Keys sind kryptografische Schluesslepaare – ein privater Schluessel (bleibt auf deinem Computer) und ein oeffentlicher Schluessel (wird auf dem Server hinterlegt). Verbindungen werden durch eine kryptografische Challenge verifiziert, ohne das Passwort ueber das Netz zu senden. Das macht SSH-Keys sicherer als Passwort-Authentifizierung.

SSH-Schluessel generieren

ssh-keygen -t ed25519 -C "deine@email.de"

ed25519 ist der aktuelle Empfehlung fuer neue Schluessel (schnell, klein, sicher). Alternativ: rsa -b 4096 fuer maximale Kompatibilitaet mit aelteren Systemen. Das Programm fragt nach einem Speicherort (Standard: ~/.ssh/id_ed25519) und einer optionalen Passphrase fuer den privaten Schluessel – empfehlenswert fuer zusaetzliche Sicherheit.

Oeffentlichen Schluessel auf Server kopieren

ssh-copy-id -i ~/.ssh/id_ed25519.pub benutzername@hostname

Alternativ manuell: Inhalt von ~/.ssh/id_ed25519.pub in die Datei ~/.ssh/authorized_keys auf dem Server einfuegen (eine Zeile pro Schluessel). Viele Hosting-Anbieter erlauben das direkte Hochladen von SSH-Public-Keys im Kundencenter.

Tipp: SSH-Config fuer bequeme Verbindungen

Erstelle die Datei ~/.ssh/config mit Eintraegen fuer deine Server – dann reicht ssh meinserver statt des langen Befehls:

Host meinserver
  HostName server.example.com
  User benutzername
  Port 2222
  IdentityFile ~/.ssh/id_ed25519

4. Welche Hosting-Anbieter bieten SSH-Zugang?

Nicht alle Hosting-Pakete kommen mit SSH – viele Einsteiger-Pakete im Shared Hosting beschraenken sich auf FTP und ein Web-Panel. Hier ist ein Ueberblick, wer SSH anbietet:

Anbieter SSH im Shared Hosting SSH bei VPS/Server SSH-Key-Unterstuetzung Preis ab
Hetzner Inklusive Inklusive (Root) Ja 1,99 EUR/Monat
IONOS Ab Comfort-Tarif Inklusive Ja 4,00 EUR/Monat
Strato Ab PowerWeb-Tarif Inklusive Ja 4,00 EUR/Monat
Hostinger Ab Business-Tarif Inklusive (Root) Ja 2,49 EUR/Monat
netcup Inklusive Inklusive (Root) Ja 1,99 EUR/Monat
ALL-INKL.COM Inklusive Kein VPS-Angebot Ja 5,95 EUR/Monat
DomainFactory Ab ManagedHosting S Inklusive Ja 3,99 EUR/Monat

Stand Mai 2026. Aktuelle Tarife direkt beim Anbieter pruefen.

Shared Hosting vs. VPS: Unterschied beim SSH-Zugang

Beim Shared Hosting bekommst du SSH-Zugang nur zu deinem eigenen Benutzerverzeichnis – kein Root-Zugriff, keine systemweiten Aenderungen. Beim VPS oder dedizierten Server hast du vollen Root-Zugang und kannst alles konfigurieren: Webserver, Datenbanken, Firewalls, neue Software installieren. Wenn du Pakete installieren oder Systemkonfigurationen aendern musst, brauchst du einen VPS oder dedizierten Server.

5. Was kannst du mit SSH alles machen?

SSH eroeffnet eine Welt jenseits des grafischen Web-Panels. Hier sind die haeufigsten und nuetzlichsten Anwendungsszenarien:

Datei- und Verzeichnisverwaltung

PHP und Web-Anwendungen

Logs und Monitoring

Git und Deployments

cd /var/www/meinprojekt
git pull origin main
composer install --no-dev
php artisan optimize

6. SSH absichern: Best Practices

Ein offener SSH-Port ist ein beliebtes Angriffsziel fuer automatisierte Brute-Force-Angriffe. Diese Best Practices reduzieren das Risiko erheblich:

1. Passwort-Login deaktivieren – nur SSH-Keys erlauben

In /etc/ssh/sshd_config (nur bei Root-/VPS-Zugang): PasswordAuthentication no. Dann systemctl restart sshd. Stellt sicher, dass dein SSH-Key funktioniert, bevor du Passwort-Login deaktivierst!

2. Standard-Port 22 aendern

Port 2222 (oder eine andere freie Portnummer) in sshd_config reduziert automatisierte Scans erheblich. Kein echter Schutz gegen gezielten Angriff, aber eliminiert 99 % des automatischen Brute-Force-Traffics.

3. Fail2Ban installieren

Fail2Ban sperrt IP-Adressen automatisch, die zu viele fehlgeschlagene Login-Versuche haben: apt install fail2ban. Die Standardkonfiguration schuetzt SSH bereits wirkungsvoll.

4. Root-Login deaktivieren

PermitRootLogin no in sshd_config. Nutze stattdessen einen normalen Benutzer und wechsle mit sudo su - zu Root, wenn noetig. Das erschwert gezielte Angriffe auf den Root-Account.

Nie den privaten SSH-Key teilen oder hochladen

Der private Schluessel (Standard: id_ed25519 ohne .pub-Endung) bleibt immer auf deinem lokalen Geraet. Teile ihn mit niemandem – auch nicht mit dem Hosting-Support. Was du auf dem Server hinterlegst, ist der oeffentliche Schluessel (id_ed25519.pub). Wenn dein privater Schluessel kompromittiert wird, losche den zugehoerigen Public Key sofort vom Server und generiere ein neues Schluesselpaar.

7. SFTP: Dateien sicher uebertragen

SFTP (SSH File Transfer Protocol) laeuft ueber dieselbe SSH-Verbindung und uebertraegt Dateien sicher verschluesselt. Grafische SFTP-Clients erleichtern das Handling erheblich:

Client Plattform Highlight Kosten
FileZilla Win/Mac/Linux Weit verbreitet, einfach zu bedienen Kostenlos
WinSCP Windows SFTP + SSH-Terminal kombiniert Kostenlos
Cyberduck Win/Mac Modernes UI, Cloud-Storage-Integration Kostenlos (Spende)
Transmit Mac Schnell, iOS-Integration 45 USD einmalig
VS Code (Remote-SSH) Win/Mac/Linux Direktes Bearbeiten von Server-Dateien in VS Code Kostenlos
Tipp: VS Code Remote-SSH fuer Entwickler

Mit der VS Code Extension "Remote - SSH" kannst du Dateien auf deinem Server direkt in VS Code bearbeiten – mit vollem Syntax-Highlighting, IntelliSense und Terminal-Zugang. Kein manuelles Hoch- und Runterladen mehr. Genial fuer schnelle Entwicklungsworkflows auf Remote-Servern.

8. Fazit: SSH ist unverzichtbar fuer ernsthafte Serververwaltung

SSH ist kein Feature fuer Experten – es ist das Werkzeug, das dir volle Kontrolle ueber deinen Server gibt. Wer ueber FTP und das Web-Panel hinausgehen moechte, kommt an SSH nicht vorbei. Die gute Nachricht: Der Einstieg ist einfacher als gedacht.

Fuer einfache Websites genuegt Shared Hosting mit SSH-Zugang fuer Deployments und Wartung. Wer volle Root-Kontrolle, Server-Konfiguration und eigene Software braucht, ist bei einem VPS besser aufgehoben. Hetzner und netcup bieten beides zu sehr guenstigen Preisen – mit vollem SSH-Zugang ab dem ersten Tag.

SSH-Cheatsheet: Die wichtigsten Befehle
  • ssh user@host – Verbinden
  • ssh -p 2222 user@host – Verbinden mit spezifischem Port
  • ssh-keygen -t ed25519 – SSH-Schluesselpaar generieren
  • ssh-copy-id user@host – Public Key auf Server kopieren
  • scp datei.txt user@host:/ziel/ – Datei zum Server kopieren
  • scp user@host:/datei.txt ./ – Datei vom Server herunterladen
  • exit oder Strg+D – SSH-Verbindung beenden

Hosting mit SSH-Zugang finden

Vergleiche Hosting-Anbieter nach SSH-Unterstuetzung, Preis und Leistung.

Anbieter vergleichen Domain suchen