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.
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:
- Entwickler – Deployment von Code, Git-Operationen, Composer/npm direkt auf dem Server
- Systemadministratoren – Serverkonfiguration, Pakete installieren, Logs pruefen
- WordPress-Administratoren – WP-CLI nutzen, Wartungsmodus aktivieren, Datenbank-Dumps erstellen
- DevOps/CI-CD-Pipelines – Automatisierte Deployments ueber SSH-Keys
- Fortgeschrittene Nutzer – Wer hinter FTP-Grenzen geht und volle Kontrolle will
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:
- PuTTY – Klassiker, kostenlos, weit verbreitet. Gut fuer Einsteiger.
- WinSCP – Kombiniert SSH-Terminal mit grafischem SFTP-Browser
- MobaXterm – Umfangreiche Terminal-Suite mit SSH, SFTP, X11 und mehr
- Terminus – Moderner, plattformuebergreifender SSH-Client mit gutem UI
-
1SSH-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.
-
2SSH in Terminal oder Client oeffnen Terminal oeffnen (Linux/macOS) oder PuTTY/PowerShell (Windows). Hostname und Port eingeben.
-
3Server-Fingerprint pruefen und bestaetigen Beim ersten Verbindungsaufbau erscheint der Host-Key-Fingerprint. Vergleiche ihn mit den Angaben deines Anbieters und bestatige mit "yes".
-
4Passwort 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.
-
5Shell-Prompt erscheint – du bist verbunden Du siehst jetzt das Terminal des Servers und kannst Befehle ausfuehren. Mit
exitoder 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.
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.
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
ls -la– Alle Dateien mit Berechtigungen auflistencp -r quelle/ ziel/– Verzeichnis rekursiv kopierenmv datei.php /var/www/html/– Datei verschieben/umbenennenchmod 644 datei.php– Dateiberechtigungen setzenchown www-data:www-data /var/www/html/– Eigentuemer setzenfind . -name "*.log" -delete– Dateien suchen und loeschentar -czf backup.tar.gz /var/www/– Verzeichnis archivieren
PHP und Web-Anwendungen
php -v– PHP-Version pruefenphp artisan migrate– Laravel-Migrationen ausfuehrencomposer install– PHP-Abhaengigkeiten installierenwp plugin update --all– Alle WordPress-Plugins aktualisieren (WP-CLI)wp db export backup.sql– WordPress-Datenbank exportieren (WP-CLI)
Logs und Monitoring
tail -f /var/log/nginx/error.log– Nginx-Fehlerlog in Echtzeit verfolgengrep "500" /var/log/apache2/access.log– 500-Fehler suchentopoderhtop– Laufende Prozesse und Systemauslastung anzeigendf -h– Festplattenbelegung pruefenfree -h– RAM-Nutzung anzeigen
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.
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 |
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 user@host– Verbindenssh -p 2222 user@host– Verbinden mit spezifischem Portssh-keygen -t ed25519– SSH-Schluesselpaar generierenssh-copy-id user@host– Public Key auf Server kopierenscp datei.txt user@host:/ziel/– Datei zum Server kopierenscp user@host:/datei.txt ./– Datei vom Server herunterladenexitoder Strg+D – SSH-Verbindung beenden
Hosting mit SSH-Zugang finden
Vergleiche Hosting-Anbieter nach SSH-Unterstuetzung, Preis und Leistung.
Anbieter vergleichen Domain suchen