Plesk permet en quelques clics de préparer un domaine avec site web, accessible simplement en FTP. Voyons donc comment sécuriser un peu plus cet accès en forçant la connexion en SFTP.

Modifier la configuration SSH de Plesk

La configuration SSH du sous-système SFTP est déjà existante, mais elle est commentée par défaut, là où sur des configurations standard, elle n’existe tout simplement pas. Ceci pour une raison simple : Plesk n’a besoin que d’un shell maison pour débloquer l’accès SFTP, il est donc inutile d’alourdir le process en créant tout un sous-système SFTP chrooté comme c’est le cas ici.

vi /etc/ssh/sshd_config

Décommentez la ligne commençant par « #Subsystem sftp » :

#Subsystem sftp /usr/lib/openssh/sftp-server

Il est possible que le shell ne corresponde pas, notez bien qu’on ne fait que retirer le # en début de ligne.

Subsystem sftp /usr/lib/openssh/sftp-server

Ensuite, sauvegardez le fichier et quittez l’éditeur, puis redémarrez le service ssh.

sshd -t && service ssh reload

Teste la syntaxe des fichiers de configuration SSH. Dans cette disposition, s’il y a une erreur de syntaxe dans les fichiers de config, la commande suivante ne s’exécutera pas.


Modification du shell de l’utilisateur principal FTP/SFTP

L’étape suivante consiste à affecter ce shell à l’utilisateur FTP associé à la création de l’abonnement et du domaine. Lorsque vous accédez au domaine ou au sous-domaine dont vous souhaitez changez l’accès FTP en SFTP, cliquez sur le bouton « Accès FTP ».

Cliquez ensuite sur l’utilisateur que vous souhaitez modifier pour accéder aux propriétés de cet utilisateur.

Dans le menu déroulant « Accéder au serveur via SSH », au lieu de « Interdit », sélectionnez le shell qui indique « chrooted ». Validez la modification, celle-ci prendra un peu de temps car Plesk crée un sous-système root (chrooted = changement du dossier racine) lui permettant de générer la connexion SFTP depuis ce sous-système. Celui-ci se présente ainsi comme suit :

drwx--x---+ 16 user_sftp_du_domaine psaserv 4096 2018-07-20 18:32 .
drwxr-xr-x+ 86 root root 4096 2018-07-20 18:21 ..
drwxr-xr-x+ 2 root root 4096 2018-07-20 18:14 bin
drwxr-xr-x+ 2 root root 4096 2018-07-20 18:14 dev
drwxr-xr-x+ 2 root psacln 4096 2018-07-20 15:01 error_docs
drwxr-xr-x+ 2 root root 4096 2018-07-20 18:14 etc
drwxr-xr-x+ 4 root root 4096 2018-07-20 18:14 home
drwxr-x---+ 6 root psacln 4096 2018-07-20 15:01 httpdocs
drwxr-xr-x+ 4 root root 4096 2018-07-20 18:14 lib
drwxr-xr-x+ 2 root root 4096 2018-07-20 18:14 lib64
drwx------+ 2 root psacln 4096 2018-07-20 15:01 logs
drwxrwxrwt+ 2 root root 4096 2018-07-20 18:14 tmp
drwxr-xr-x+ 3 root root 4096 2018-07-20 18:14 usr
drwxr-xr-x+ 3 root root 4096 2018-07-20 18:14 var

Veillez bien à ne pas modifier les droits des dossiers créés, ou tout accès sera impossible en SFTP !

Interdire l’accès FTP/SFTP sous Plesk

Note :

Lorsque vous n’aurez plus besoin de cet accès, vous pouvez interdire à nouveau l’accès SSH dans la configuration utilisateur, ce qui supprimera le sous-système créé dans le dossier. L’accès sera à nouveau possible en FTP.