SSH gibt Ihnen eine Kommandozeilen-Shell zu Ihrem Webhosting, sodass Sie Ihre Dateien, Ihre WordPress-Installation und Ihre Projekte direkt auf dem Server verwalten können — ohne den Umweg über FTP oder das Kontrollpanel. Diese Anleitung zeigt Ihnen, wie Sie sich verbinden und welche Werkzeuge verfügbar sind.

SSH aktivieren

Der SSH-Zugang erfolgt über ein Shell-Konto, das mit Ihrem Webhosting verknüpft ist. Haben Sie noch kein Shell-Konto, legen Sie eines unter Shell-Benutzer im Kontrollpanel an oder wenden Sie sich an den Support. Benutzername und Passwort wählen Sie selbst (und können einen SSH-Schlüssel hinterlegen).

Ihre Serveradresse finden

Ihr Webhosting liegt auf einem der Webhosting-Server von Adminor, und die Serveradresse unterscheidet sich zwischen den Servern. Verwenden Sie immer die Adresse genau Ihres Servers — Sie finden sie auf eine der folgenden Weisen:

  • Im Kontrollpanel, unter Ihrem Webhosting oder Shell-Benutzer (das Feld für Server oder Hostname).
  • In der Willkommens-E-Mail, die Sie beim Anlegen des Kontos erhalten haben.
  • Unsicher? Wenden Sie sich an den Support, dann geben wir Ihnen die richtige Adresse.

In den folgenden Beispielen wird der Platzhalter ihr-server.xh.se verwendet — ersetzen Sie ihn durch Ihre tatsächliche Serveradresse. (Sie können sich auch über Ihre eigene Domain verbinden, sofern diese auf das Webhosting zeigt, aber der Hostname des Servers ist immer die sichere Wahl.)

Verbinden

EinstellungWert
ServerIhre Serveradresse, z. B. ihr-server.xh.se
Port22
BenutzernameIhr Shell-Benutzername
AuthentifizierungPasswort oder SSH-Schlüssel

Von Linux/macOS oder Windows (PowerShell/Terminal):

ssh [email protected]

Mit SSH-Schlüssel (empfohlen):

ssh -i ~/.ssh/ihr_schluessel [email protected]

Dieselben Zugangsdaten funktionieren für SFTP und scp, wenn Sie nur Dateien übertragen möchten:

sftp [email protected]
scp lokalfil.zip [email protected]:web/

Ihre Umgebung

Nach dem Einloggen landen Sie in Ihrem eigenen Home-Verzeichnis in einer isolierten Umgebung (chroot-jail). Das bedeutet:

  • Sie sehen nur Ihre eigenen Dateien, nicht die anderer Kunden oder des Systems.
  • Ihre Webdateien liegen im Verzeichnis web/ (das ist Ihr öffentlicher Web-Root).
  • Sie haben außerdem private/ (für Dateien außerhalb des Webs, z. B. Konfiguration) und tmp/.
  • Sie sind nicht root und können keine Systempakete installieren, aber die gängigsten Entwicklerwerkzeuge sind bereits vorhanden (siehe unten).
cd web        # zum Web-Root wechseln
ls -la        # Dateien auflisten

Die genaue Verzeichnisstruktur kann sich zwischen den Webhosting-Servern leicht unterscheiden. Sind Sie unsicher, wo Ihr Web-Root liegt, führen Sie direkt nach dem Login pwd aus und ls, um Ihre Verzeichnisse zu sehen — oder fragen Sie den Support.

Verfügbare Werkzeuge

Die folgenden Werkzeuge sind normalerweise in Ihrer Umgebung vorinstalliert. Das Angebot kann sich zwischen Servern leicht unterscheiden — führen Sie which <werkzeug> aus, um zu prüfen, ob ein Werkzeug vorhanden ist, zum Beispiel which git.

  • Editoren: nano, vim, joe
  • Versionsverwaltung: git, tig
  • PHP / WordPress: wp (WP-CLI), composer, php
  • Dateien und Übertragung: rsync, curl, wget, zip, unzip, scp, sftp
  • Terminal: tmux (mehrere Sitzungen / Sitzung beim Trennen erhalten)

Häufige Aufgaben

WordPress mit WP-CLI

WP-CLI wird aus Ihrem WordPress-Verzeichnis (meist web/) ausgeführt:

cd web
wp core version
wp plugin list
wp plugin update --all
wp search-replace 'http://gammal.se' 'https://ny.se' --dry-run
wp db export backup.sql

Datenbankverbindung: WP-CLI liest Ihre Datenbank-Zugangsdaten aus wp-config.php. Auf unseren WordPress-Installationen wird DB_HOST = '127.0.0.1' verwendet, was direkt funktioniert. Steht in Ihrer wp-config.php stattdessen DB_HOST = 'localhost' und WP-CLI erreicht die Datenbank nicht, ändern Sie die Zeile auf 127.0.0.1, dann funktioniert es.

Composer

cd web
composer install
composer require monolog/monolog
composer update

Composer holt Pakete von packagist.org und funktioniert direkt in Ihrer Umgebung.

Git-Deploy

cd web
git clone https://github.com/dittkonto/dittprojekt.git .
git pull            # neueste Änderungen holen

Packen / Entpacken und Synchronisieren

unzip arkiv.zip
zip -r backup.zip web/
rsync -av web/ private/backup-web/

tmux (Sitzung erhalten)

tmux              # eine Sitzung starten
# (mit Ctrl-b gefolgt von d trennen)
tmux attach       # später wieder verbinden

Einschränkungen

Die Umgebung ist aus Sicherheitsgründen bewusst eingeschränkt:

  • Kein root/sudo und keine Installation von Systempaketen.
  • Keine eigenen Dienste/Daemons oder Prozesse, die auf Ports lauschen. Verwenden Sie die Shell nicht, um langlebige Server zu betreiben.
  • Geplante Aufgaben (cron) werden im Kontrollpanel verwaltet, nicht über die Shell.
  • tmux funktioniert für den üblichen Gebrauch; erweiterte interaktive Funktionen können in der Jail-Umgebung eingeschränkt sein.
  • Sie greifen nur auf Ihre eigenen Dateien und Ihre eigene Datenbank zu.

Benötigen Sie volle Kontrolle — Root-Zugriff, eigene Dienste, beliebige Systempakete — ist ein VPS das richtige Produkt anstelle von Shared Webhosting.

Support

Läuft etwas nicht wie erwartet oder fehlt Ihnen ein Werkzeug? Wenden Sie sich an den Support, dann helfen wir Ihnen weiter.