Résumé: Certaines personnes préfèrent modifier leurs sites web à l’aide de la ligne de commande. Dans Plesk pour Linux, vous pouvez accorder aux utilisateurs du système de site web un accès SSH chrooté ou non chrooté au serveur Plesk.

Dans cette section, vous découvrirez comment activer l’accès SSH pour des sites spécifiques dans Plesk pour Linux.

Activer l’accès SSH pour un site web

Par défaut, les utilisateurs système des sites web ne sont pas autorisés à se connecter au serveur Plesk via SSH. Toute tentative de connexion à ce serveur entraînera l’ouverture et la fermeture immédiate d’une session SSH.

Vous pouvez accorder à l’utilisateur système d’un site web un accès SSH chrooté ou non chrooté au serveur Plesk. Vous pouvez aussi définir le shell que ses sessions SSH utiliseront, comme /bin/bash ou /bin/sh.

Note: Avant de procéder, vérifiez minutieusement les conséquences résultant de l’accès SSH par les utilisateurs système du site web au serveur Plesk.

Pour activer l’accès SSH pour un utilisateur système d’un site web :

  1. Connectez-vous à Plesk.
  2. Allez sous Sites web et domaine. Ensuite, cherchez le domaine concerné.
  3. Allez dans l’onglet Hébergement et DNS et cliquez sur Hébergement.
  4. Dans « Accès SSH », sélectionnez n’importe quelle option sauf « Interdit » et cliquez sur Enregistrer.

L’accès SSH est désormais activé pour l’utilisateur système de ce site web. Le shell sélectionné sous « Accès SSH » sera utilisé lors de la connexion.

Pour connaître l’adresse IP du serveur Plesk et le nom d’utilisateur du système du site web, allez dans l’onglet « Tableau de bord », puis cliquez sur Informations de connexion.

image connection info

L’utilisateur peut accéder au serveur Plesk via SSH à l’aide d’un client SSH, comme PuTTY. Il peut également utiliser l’extension de terminal SSH pour accéder à l’invite SSH depuis l’interface graphique de Plesk.

Choisir le shell

Le shell sélectionné sous « Accès SSH » détermine, en partie, ce que l’utilisateur système du site web peut ou ne peut pas faire après s’être connecté au serveur Plesk via SSH. Par exemple :

  • Le shell /bin/bash possède plus de capacités et de fonctionnalités que les autres shells. Les scripts qui peuvent s’exécuter dans /bin/bash risquent de ne pas pouvoir s’exécuter dans /bin/sh ou /bin/bash.
  • Le shell /bin/rbash``empêche l’utilisation de certaines commandes et fonctionnalités disponibles dans ``/bin/bash.

Voici quelques exemples parmi d’autres. Si vous hésitez quant au shell à utiliser, nous vous recommandons /bin/bash.

Note: La liste spécifique des shells disponibles peut différer en fonction du système d’exploitation spécifique du serveur Plesk, ainsi que de la version du système d’exploitation.

Shell chrooté versus non chrooté

Si l’option « /bin/bash (chrooté) » est sélectionnée sous « Accès SSH », l’utilisateur système du site web sera limité au répertoire home du site web lors de la connexion au serveur Plesk via SSH. Autrement dit, son répertoire / sera défini sur le répertoire home du site web et non sur le répertoire racine du système de fichiers. Il s’agit de l’option la plus sûre et la plus restreinte.

bash-5.2$ ls /
bin  dev  error_docs  etc  httpdocs  lib  lib64  logs  tmp  usr  var

La sélection d’un autre shell permettra à l’utilisateur du système de site web d’accéder à une plus grande partie du système de fichiers du serveur Plesk. Son répertoire / sera défini sur le répertoire racine du système de fichiers. Les autorisations du système de fichiers Linux continuent de gérer les restrictions et autorisations de l’utilisateur à voir, accéder et manipuler les fichiers et les répertoires. Par exemple : l’utilisateur ne pourra pas accéder au répertoire root ou aux répertoires d’autres sites web hébergés.

example.com_sysuser@example.com:/$ ls /
bin                boot  etc   lib                lib64       media  opt   root  sbin                snap  swap-hibinit  tmp  var
bin.usr-is-merged  dev   home  lib.usr-is-merged  lost+found  mnt    proc  run   sbin.usr-is-merged  srv   sys           usr
example.com_sysuser@example.com:~$ ls /root
ls: cannot open directory '/root': Permission denied

Note: L’activation de l’accès SSH non chrooté pour un utilisateur système de site web affectera les tâches planifiées configurées de ce site web :

  • Si l’option « Interdit » ou l’option « /bin/bash (chrooté) » est sélectionnée sous « Accès SSH », alors le répertoire / est défini sur le répertoire home du site web lorsqu’une tâche planifiée s’exécute.
  • Si une autre option est sélectionnée sous « Accès SSH », le répertoire / est défini sur le répertoire racine du système de fichiers lorsqu’une tâche planifiée s’exécute.

Assurez-vous de modifier les tâches planifiées configurées du site web en conséquence lorsque vous octroyez ou révoquez l’accès SSH d’un utilisateur système du site web.

Désactiver l’accès SSH pour un site web

Vous pouvez révoquer à tout moment l’autorisation pour un utilisateur d’un système de site web de se connecter au serveur Plesk via SSH.

Pour désactiver l’accès SSH pour un utilisateur système d’un site web :

  1. Connectez-vous à Plesk.
  2. Allez sous Sites web et domaine. Ensuite, cherchez le domaine concerné.
  3. Allez dans l’onglet Hébergement et DNS et cliquez sur Hébergement.
  4. Dans « Accès SSH », sélectionnez l’option « Interdit » et cliquez sur Enregistrer.

L’accès SSH est désormais désactivé pour l’utilisateur système de ce site web. Toutes les sessions SSH actuellement ouvertes resteront ouvertes, mais aucune nouvelle session SSH ne pourra être ouverte pour cet utilisateur.