VPS und Server

SSH und SFTP: Sicherer Zugriff auf den Webspace

Warum FTP ausgedient hat, wie Sie SFTP im Client einrichten, SSH-Schlüssel statt Passwörtern nutzen und den Zugang auf eigenen Servern härten.

Für den Dateizugriff auf Ihren Webspace sollten Sie SFTP nutzen, nicht klassisches FTP. SFTP läuft über eine verschlüsselte SSH-Verbindung, schützt Zugangsdaten und Dateien vor dem Mitlesen und lässt sich in jedem gängigen Dateiübertragungsprogramm einrichten. Wenn Ihr Tarif es erlaubt, öffnet SSH zusätzlich eine Kommandozeile auf dem Server, mit der Sie Werkzeuge wie WP-CLI, Composer oder Git nutzen. Diese Anleitung zeigt beides, vom ersten Login bis zur Absicherung auf eigenen Servern. Den Überblick über Server-Optionen finden Sie unter VPS und eigene Server.

FTP, FTPS, SFTP und SSH: Was ist was?

Protokoll Verschlüsselt Typischer Port Einsatz
FTP Nein, Passwort im Klartext 21 Veraltet, nur noch für Altsysteme
FTPS Ja, FTP mit TLS 21 bzw. 990, plus Datenports Wenn kein SSH verfügbar ist
SFTP Ja, über SSH 22 Standard für Dateiübertragung
SSH Ja 22 Kommandozeile auf dem Server, Tunnel, Git

Bei unverschlüsseltem FTP können Zugangsdaten in offenen WLANs oder auf kompromittierten Netzwerkgeräten mitgelesen werden. Gestohlene FTP-Passwörter sind seit Jahren ein bekannter Weg, Schadcode auf Websites zu bringen. Bietet Ihr Hoster nur FTP ohne Verschlüsselung an, ist das ein deutliches Warnsignal.

SFTP im Shared Hosting einrichten

Die Zugangsdaten finden Sie im Kundenmenü, meist unter Bezeichnungen wie „FTP-Zugänge“, „SSH/SFTP“ oder „Zugangsdaten“. Sie brauchen:

  • Server (Host): ein Hostname des Anbieters oder Ihre Domain
  • Port: meist 22, manche Anbieter nutzen einen abweichenden Port
  • Benutzername: oft eine Kundennummer oder ein selbst angelegter Zusatzbenutzer
  • Passwort oder Schlüssel: je nach Einstellung
  • Protokoll: im Client ausdrücklich SFTP wählen

Schritt für Schritt im Client

  1. Installieren Sie einen SFTP-fähigen Client. Verbreitet sind FileZilla und WinSCP unter Windows, Cyberduck unter macOS und Windows. Viele Code-Editoren können SFTP über Erweiterungen.
  2. Legen Sie im Servermanager des Clients eine neue Verbindung an und wählen Sie als Protokoll SFTP.
  3. Tragen Sie Host, Port und Benutzernamen ein. Speichern Sie das Passwort nur, wenn Ihr Rechner verschlüsselt und geschützt ist.
  4. Beim ersten Verbinden zeigt der Client den Fingerabdruck des Servers. Vergleichen Sie ihn, wenn möglich, mit der Angabe Ihres Hosters und bestätigen Sie erst dann.
  5. Nach dem Login sehen Sie das Stammverzeichnis Ihres Kontos. Die Website liegt meist in einem Unterordner, dessen Name im Kundenmenü als Dokumentenverzeichnis steht.

Zusätzliche Benutzer anlegen

Geben Sie nicht die Hauptzugangsdaten weiter, wenn eine Agentur oder ein Entwickler Zugriff braucht. Die meisten Hoster erlauben zusätzliche SFTP-Benutzer, die auf ein bestimmtes Verzeichnis beschränkt sind. Entfernen Sie diese Zugänge, sobald die Arbeit erledigt ist.

SSH-Schlüssel erzeugen und hinterlegen

Ein SSH-Schlüsselpaar besteht aus einem privaten Schlüssel, der auf Ihrem Rechner bleibt, und einem öffentlichen Schlüssel, den Sie beim Server hinterlegen. Unter macOS, Linux und aktuellen Windows-Versionen erzeugen Sie es im Terminal:

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

Der Befehl fragt nach einem Speicherort und einer Passphrase. Vergeben Sie eine Passphrase, damit ein gestohlener Schlüssel allein nicht reicht. Anschließend liegen zwei Dateien im Ordner .ssh Ihres Benutzerverzeichnisses: id_ed25519 (privat, niemals weitergeben) und id_ed25519.pub (öffentlich).

Den öffentlichen Schlüssel hinterlegen Sie auf einem von zwei Wegen:

  • Im Kundenmenü des Hosters: Viele Anbieter haben ein Feld für SSH-Schlüssel. Fügen Sie dort den Inhalt der .pub-Datei ein.
  • Auf dem eigenen Server: mit ssh-copy-id benutzer@server oder durch Eintragen in die Datei ~/.ssh/authorized_keys des Benutzers.

Danach melden Sie sich ohne Passwort an:

ssh [email protected]

Für häufig genutzte Server lohnt ein Eintrag in der Datei ~/.ssh/config mit Hostname, Benutzer, Port und Schlüssel. Dann genügt ein kurzer Name wie ssh kunde-live.

Was Sie mit SSH auf dem Webspace erledigen

Eine Kommandozeile auf dem Server spart bei vielen Aufgaben Zeit und Fehler:

Aufgabe Beispiel Vorteil gegenüber Oberfläche
Große Dateien packen und entpacken tar -czf backup.tar.gz public_html Kein Upload tausender Einzeldateien
Datenbank sichern mysqldump mit Zugangsdaten aus dem Kundenmenü Funktioniert auch bei großen Datenbanken
WordPress verwalten wp plugin update --all mit WP-CLI Updates und Suchen-Ersetzen in der Datenbank
Abhängigkeiten installieren composer install Für moderne PHP-Anwendungen nötig
Deployment git pull im Projektordner Nachvollziehbare Versionen statt Hochladen per Hand
Fehlersuche tail -f auf die Fehlerlogs Fehler live verfolgen

Ob diese Werkzeuge verfügbar sind, hängt vom Hoster ab. Im Shared Hosting läuft SSH meist in einer eingeschränkten Umgebung ohne Root-Rechte. Für Tests von Updates vor dem Livegang eignet sich eine Kopie der Website, mehr dazu im Ratgeber zur Staging-Umgebung.

SSH auf dem eigenen Server absichern

Auf einem VPS oder Root-Server ist der SSH-Dienst eines der ersten Ziele automatisierter Angriffe. Schon kurz nach der Bereitstellung tauchen in den Logs Anmeldeversuche mit gängigen Benutzernamen und Passwörtern auf. Diese Einstellungen sind Standard:

  • Eigenen Benutzer mit sudo-Rechten anlegen und den öffentlichen Schlüssel hinterlegen
  • Anmeldung mit Schlüssel testen, bevor Passwörter abgeschaltet werden
  • In der Datei /etc/ssh/sshd_config die Passwort-Anmeldung deaktivieren (PasswordAuthentication no)
  • Direkten Root-Login unterbinden (PermitRootLogin no)
  • Firewall aktivieren und nur benötigte Ports öffnen
  • Wiederholte Fehlversuche automatisch sperren, etwa mit fail2ban
  • Betriebssystem und OpenSSH aktuell halten, automatische Sicherheitsupdates einschalten
  • Zugänge ehemaliger Mitarbeiter und Dienstleister sofort entfernen

Wichtig: Lassen Sie beim Ändern der SSH-Konfiguration eine bestehende Sitzung offen und testen Sie die neue Anmeldung in einem zweiten Fenster. So sperren Sie sich bei einem Tippfehler nicht aus. Viele Anbieter bieten zusätzlich eine Notfallkonsole im Kundenmenü, über die Sie auch ohne SSH auf den Server kommen. Weitere Schutzmaßnahmen für Server und Websites bündelt die Seite Hosting-Sicherheit.

Dateirechte richtig setzen

Nach dem Hochladen per SFTP sollten Dateien und Ordner passende Rechte haben. Als grobe Orientierung auf Linux-Servern gilt für viele PHP-Anwendungen:

Objekt Übliche Rechte Bedeutung
Ordner 755 Besitzer darf schreiben, alle dürfen lesen und öffnen
Dateien 644 Besitzer darf schreiben, alle dürfen lesen
Konfigurationsdateien mit Zugangsdaten 600 oder 640 Nur Besitzer (und ggf. Gruppe) darf lesen

Rechte wie 777, also Schreibzugriff für alle, sind fast nie nötig und ein Risiko. Welche Werte genau passen, hängt davon ab, unter welchem Benutzer PHP läuft. Die Dokumentation Ihrer Anwendung und Ihres Hosters nennt die empfohlenen Einstellungen.

Typische Fehler und ihre Ursachen

  • „Connection refused“: Falscher Port, SSH im Tarif nicht aktiviert oder Firewall blockiert.
  • „Permission denied (publickey)“: Schlüssel nicht hinterlegt, falscher Benutzer oder der Client bietet einen anderen Schlüssel an.
  • „Host key verification failed“: Der Fingerabdruck des Servers hat sich geändert. Nach einem Server-Umzug ist das normal; ohne bekannten Grund sollten Sie nachfragen, bevor Sie den alten Eintrag löschen.
  • Hochgeladene Dateien erscheinen nicht: Falsches Verzeichnis, etwa außerhalb des Dokumentenverzeichnisses, oder ein Cache liefert noch die alte Version.
  • Verbindung bricht ab: Zeitüberschreitung bei Inaktivität. Im Client lässt sich ein Keep-Alive-Intervall einstellen.

SFTP im Arbeitsalltag: Editor, Git und Automatisierung

Wer regelmäßig an einer Website arbeitet, muss Dateien nicht jedes Mal von Hand hochladen. Viele Code-Editoren öffnen Dateien direkt über SFTP und speichern Änderungen auf dem Server. Das ist bequem, aber riskant, weil jeder Tippfehler sofort live ist. Sicherer ist ein Ablauf, bei dem Sie lokal oder auf einer Testkopie arbeiten und Änderungen gebündelt übertragen.

Dafür bieten sich zwei Wege an. Mit rsync über SSH übertragen Sie nur geänderte Dateien und können mit der Option für einen Probelauf vorher sehen, was passieren würde. Mit Git liegt der Code in einem Repository, und auf dem Server holen Sie per git pull eine geprüfte Version. Automatisierte Deployments aus einem Build-System nutzen dafür einen eigenen SSH-Schlüssel, der nur diese eine Aufgabe erfüllen darf. Legen Sie für solche Schlüssel einen eigenen Benutzer mit minimalen Rechten an, statt den Zugang Ihres Administratorkontos zu verwenden.

Fazit

SFTP ist der Standard für den Dateizugriff auf Webspace und Server, unverschlüsseltes FTP hat ausgedient. Mit SSH-Schlüsseln statt Passwörtern, eigenen Zugängen für Dienstleister und einer gehärteten SSH-Konfiguration auf eigenen Servern schließen Sie eines der häufigsten Einfallstore. Wer SSH im Tarif nutzen kann, gewinnt mit Werkzeugen wie Git, Composer und WP-CLI zudem deutlich an Tempo und Nachvollziehbarkeit.

Häufige Fragen

Fragen und Antworten

Was ist der Unterschied zwischen SFTP und FTPS?
SFTP ist ein eigenes Protokoll, das über SSH läuft und nur einen Port braucht. FTPS ist klassisches FTP mit zusätzlicher TLS-Verschlüsselung und nutzt mehrere Ports. Beide verschlüsseln die Übertragung. SFTP ist auf Servern mit SSH meist einfacher einzurichten und in Firewalls unkomplizierter.
Warum funktioniert meine SFTP-Verbindung nicht?
Häufige Ursachen sind ein falscher Port, ein FTP-Benutzer, der kein SFTP darf, ein nicht freigeschalteter SSH-Zugang im Tarif, eine Firewall, die Ihre IP-Adresse blockiert, oder ein Schlüssel im falschen Format. Prüfen Sie die Zugangsdaten im Kundenmenü und die Fehlermeldung im Protokoll des Clients.
Ist ein SSH-Schlüssel sicherer als ein Passwort?
Ja. Ein Schlüssel lässt sich praktisch nicht erraten, und der private Teil verlässt Ihren Rechner nie. Schützen Sie den privaten Schlüssel zusätzlich mit einer Passphrase und legen Sie für jedes Gerät einen eigenen Schlüssel an, damit Sie verlorene Geräte gezielt sperren können.
Sollte ich den SSH-Port 22 ändern?
Ein anderer Port reduziert automatisierte Anmeldeversuche in den Logs, ist aber kein Sicherheitsgewinn an sich. Wichtiger sind Anmeldung nur mit Schlüssel, kein direkter Root-Login, aktuelle Software und eine Sperre wiederholter Fehlversuche.

Zuletzt überarbeitet am 26. Oktober 2026 von der Redaktion HostingAS. Hinweise auf Fehler oder veraltete Angaben nehmen wir gern über das Kontaktformular entgegen.