Support Online-Hilfe (FAQ) Technisches Entwickler Welche Befehle kann ich mit SSH (chrooted) ausführen?
Welche Befehle kann ich mit SSH (chrooted) ausführen?
Der SSH Zugriff auf Ihr Webhosting ist mit den Abonnementen "Standard" und "Business" automatisch aktiviert.
Als Reseller können Sie den SSH-Zugriff für Ihre Kunden gemäss der folgenden Anleitung aktivieren:
→ FAQ: Wie aktiviere ich den SSH-Zugang für meine Kunden in Plesk (Reseller)?
1. Login / Verbindungsaufbau
- Verwenden Sie den SSL-Port 2121 und den Haupt-FTP-Benutzer der Domain:
# ssh <FTP-Hauptbenutzer>@<server> -p2121 ihrbenutzer@server.host.ch's password: user@server />
- Alternativ können Sie sich mit einem SSH-Client wie z.B. PuTTY, SecureCRT o.ä. verbinden.
- Der Haupt-FTP-Benutzer ist in Plesk mit einem Symbol markiert:
Tragen Sie Ihren Domainnamen ein um den Servernamen und weitere Informationen anzuzeigen:
2. Verfügbare Befehle
-
Die folgenden Befehle können mit dem eingeschränkten SSH-Zugriff (chrooted) ausgeführt werden.
Basis-Befehle awk, basename, cat, cd, chgrp, chmod, chown, cp, cut, date
echo, env, expr, file, gawk, grep, hostname, less, ln, ls
mkdir, more, mv, printenv, pwd, readlink, rm, sed, sleep
sort, stat, stty, tail, timeout, touch, tput, tr, uname, uniq
wc, which, xargs, zgrep, zlessNetzwerk / Dateiübermittlung curl, rsync, scp, ssh, ssh-keygen, ssh-keyscan, wget Editor vi, vim, nano Komprimierung / Archivierung gunzip, gzip, tar, unzip, zip, bunzip2, bzip2 Suche find, grep, diff Datenbank mysql, mysqldump Entwickler-Tools composer (Version 2), composer1 (Version 1), composer2 (Version 2)
git, patch, wp (WP-CLI)
PHP 7.4: /usr/bin/php bzw. php
PHP 8.0: /opt/php80/bin/php
PHP 8.1: /opt/php81/bin/php
PHP 8.2: /opt/php82/bin/php
3. Weitere Hinweise
MySQL Verbindungsaufbau
Hinweis:
Die Verbindung zum Datenbank-Server muss zwingend über 127.0.0.1 erfolgen.
- Hierfür muss an erster Stelle in Plesk der Zugriff von localhost und 127.0.0.1 erlaubt werden. Klicken Sie hierzu in Plesk unter "Datenbanken > Benutzerverwaltung" auf den entsprechenden Benutzer und aktivieren Sie dann unter "Zugriffssteuerung" die Option "Remoteverbindungen zulassen von" und tragen Sie im darunterliegenden Feld in zwei aufeinanderfolgenden Zeilen localhost und 127.0.0.1 ein.
- Beispiel:
user@server /> mysql -h 127.0.0.1 -u<BENUTZER> -p<PASSWORT> <DBNAME>
Composer
- Composer ist global installiert und kann wie folgt aufgerufen werden:
$ composer
- Beispiel:
$ composer create-project -s dev typo3/flow-base-distribution testprojekt
Eigener SSH-Key hinterlegen
- Um ohne Passwort zu verbinden, können Sie jederzeit Ihren Public SSH-Key auf dem Server hinterlegen. Erstellen Sie hierzu ein Verzeichnis ".ssh" auf Root-Ebene (/) und legen Sie den Key in der Datei authorized_keys ab:
user@server /> mkdir ~/.ssh && chmod 700 ~/.ssh user@server /.ssh> cd .ssh user@server /.ssh> vi authorized_keys user@server /.ssh> chmod 600 authorized_keys
Der Public SSH-Key muss auf einer einzelnen Zeile in der Datei authorized_keys hinzugefügt werden.
Die Dateien id_rsa und id_rsa.pub des Servers haben keinen Einfluss auf das Login von aussen und müssen nicht geändert werden.
Die Dateien id_rsa und id_rsa.pub des Servers haben keinen Einfluss auf das Login von aussen und müssen nicht geändert werden.
WordPress CLI / Drupal (drush / Drupal Console)
- Bei Ausführung von wp Commands wird folgender Fehler ausgegeben: Keine Datenbankverbindung möglich
Error: Error establishing a database connection
- bzw. bei drush
* connect the database through a socket. The socket file may be wrong or the php-cli may have no access to it in a jailed shell.
- Standardmässig hinterlegt die Applikation "localhost" als Datenbank-Host. Da die Shell-Umgebung mit TCP arbeitet, kann darauf nicht via Socket zugegriffen werden. Somit ist eine Anpassung in der Konfig-Datei erforderlich. Sie können entweder "localhost:3306" auf "127.0.0.1:3336" ändern oder die Konfig dynamisch gestalten.
- Beispiel WordPress (wp-config.php):
/** Tell WP-CLI to use TCP instead of socket connection */ if ( defined( 'WP_CLI' ) && WP_CLI ) { /** MySQL hostname for WP-CLI */ define('DB_HOST', '127.0.0.1:3306'); } else { /** MySQL hostname */ define('DB_HOST', 'localhost:3306'); }
4. PHP Version ändern
- Standardmässig wird PHP 7.2 beim Ausführen des Befehls "php" verwendet. Sie haben jedoch die Möglichkeit dies mit einem Alias nach Ihren Bedürfnissen anzupassen.
- Beispiel PHP 7.4:
alias php='/opt/php74/bin/php' echo "alias php='/opt/php74/bin/php'" >> /.bash_profile export PATH=/opt/php74/bin:$PATH echo "export PATH=/opt/php74/bin:\$PATH" >> /.bash_profile
Support Online-Hilfe (FAQ) Technisches Entwickler Welche Befehle kann ich mit SSH (chrooted) ausführen?