2018-06-22

Désactiver ssh à un utilisateur, mais garder le sftp actif

Je ne sais plus trop où j'ai trouvé ça, mais je le met ici au cas où. Ça peut être pratique si on a un petit serveur et qu'on veut seulement donner un accès au sftp à quelqu'un sans avoir à installer un service à part.

Ajoutez simplement dans le fichier /etc/ssh/sshd_config

Match User NOM_UTILISATEUR
   ChrootDirectory %h
   ForceCommand internal-sftp
   AllowTcpForwarding no
   PermitTunnel no
   X11Forwarding no

Le %h, comme on peut s'en douter, est une variable qui désigne le dossier home de l'utilisateur.

Il est aussi possible de mettre /dev/null comme shell à l'utilisateur, mais c'est moins pratique que de modifier sshd_config notamment parce qu'on ne peut pas mettre un répertoire de « chroot ».