Bonjour,
J'ai un serveur debian où j'ai crée un user.
Je souhaite que cet user est accès à un seul dossier bien spécifique : /var/www/user afin qu'il puisse apporter des modifications sur un serveur web.
Par contre je voudrais qu'il ne puisse pas remonter l'arborescence. Savez-vous comment appliquer cela ?
Il faut chrooter (ou Jailer) ton user dans ce répertoire. La méthode a suivre dépend de comment ton user se connecte au serveur (tu peux le faire dans Openssh, dans la conf de ton serveur ftp, dans son shell, etc ..)
fabb24
Posté le 25-09-2018 à 11:25:00
merci pour ta réponse.
L'user se connectera via ftp uniquement.
J'ai fini par réussir ce que je souhait faite en réalisant ça :
création de l’user "user1"
ajout de "user1" au groupe sftp
Modification du fichier /etc/ssh/sshd_config en ajoutant :
Match Group sftp
ChrootDirectory /home/%u
ForceCommand internal-sftp
AllowTCPForwarding no
X11Forwarding no
modification des droits du dossier /home/user1 qu’il appartienne à root:root
Création du dossier /home/user1/files avec root puis modification des droits pour qu’il appartienne à user1:user1 De cette manière l’utilisateur user1 peut se connecter en SFTP et est "emprisonné " dans le dossier /home/user1. Il ne peut pas remonter l’arborescence , il ne peut rien copier dans /home/user1 et il ne peut pas renommer le dossier /home/user1/files. Par contre à l’intérieur du dossier /home/user1/files il fait ce qu’il veut.
Ensuite pour que les fichiers qu’il ajoute à son dossier puissent être accessibles via le site web, j’ai créé un lien symbolique :
ln -s /home/user1/files /var/www/files
De cette manière les fichiers que user1 ajoute dans son dossier son directement accessibles via le site web.