Monter un répertoire partagé pour les utilisateurs chroot

2

J'ai rencontré un problème intéressant avec un montage qui n'a aucun sens pour moi. Fondamentalement, j'ai configuré un environnement chroot pour les utilisateurs SFTP, chacun ayant un répertoire chroot au format "/ sftp / nom d'utilisateur / fichiers". Il y a un utilisateur chroot appelé "downloads" dont le répertoire contiendra un tas de fichiers à télécharger. L'utilisateur "téléchargements" peut télécharger / télécharger des fichiers, mais je souhaite également partager le répertoire utilisateur de téléchargement "/ sftp / downloads / files" avec tous les autres utilisateurs, en leur donnant un accès en lecture seule à ce répertoire. D'après mes recherches, il semble que la meilleure façon de procéder consiste à utiliser la commande mount --bind comme suit:

mount --bind /sftp/downloads/files /sftp/user1/files
mount --bind /sftp/downloads/files /sftp/user2/files

Avant de lancer la commande mount, les répertoires suivants étaient en place: "/ sftp / username" étant la propriété de root et le répertoire "/ sftp / username / files" appartenant à l'utilisateur sftp correspondant, qui fait partie d'un groupe. appelé "sftpusers".

Voici une commande "ll" sur le répertoire / sftp:

drwxr-xr-x  3 root root 4096 Mar 24 15:20 downloads
drwxr-xr-x  3 root root 4096 Mar 24 08:00 user1
drwxr-xr-x  3 root root 4096 Mar 24 08:00 user2

Et voici les commandes "ll" sur chacun des répertoires / sftp / username:

ll /sftp/downloads
drwxr-xr-x 3 downloads sftpusers 4096 Mar 25 11:15 files

ll /sftp/user1
drwxr-xr-x 3 user1 sftpusers 4096 Mar 25 11:15 files

ll /sftp/user2
drwxr-xr-x 3 user2 sftpusers 4096 Mar 25 11:15 files

Voici ce qui arrive aux propriétaires de répertoires après avoir exécuté les commandes de montage que j'ai énumérées précédemment:

ll /sftp/downloads
drwxr-xr-x 3 user1 sftpusers 4096 Mar 25 11:15 files

ll /sftp/user1
drwxr-xr-x 3 user2 sftpusers 4096 Mar 25 11:15 files

ll /sftp/user2
drwxr-xr-x 3 downloads sftpusers 4096 Mar 25 11:15 files

C'est comme si la propriété de chacun des répertoires était échangée. Je suis capable d'aller changer la propriété du répertoire "downloads" / files, pour revenir à la propriété de downloads, mais ensuite, quand je vais réparer la propriété de "/ sftp / user1 / files", / sftp / downloads / files la propriété changera à nouveau pour appartenir à l'utilisateur1. Je ne peux pas comprendre pourquoi cela se produirait et je ne sais pas quoi faire.

linuxguru
la source
Vous devez monter le répertoire partagé dans un sous-répertoire spécifique à l'utilisateur dans chaque chroot-jail respectif au lieu de simplement le lier directement à chaque chroot-jail.
Sami Laine