web-dev-qa-db-fra.com

Permettre aux utilisateurs FTP d'accéder à des répertoires situés en dehors de leur racine à l'aide de liens symboliques

J'ai essayé de donner aux utilisateurs virtuels de proftpd l'accès aux répertoires situés en dehors de leur chemin d'accès principal à l'aide de liens symboliques créés en tant que root via la console.

/var/ftp/users/test est la maison de l'utilisateur nommé test.
/var/ftp/files/documents est le répertoire qui contient les documents et /var/ftp/users/test/documents est le lien symbolique qui le désigne.

Mais lorsqu'un utilisateur se connecte au FTP et essaie de suivre le lien symbolique, il ne voit que cette erreur:

documents: No such file or directory

Qu'est-ce que je fais mal?

8

Les liens symboliques sont verrouillés dans la prison de la même manière que l'utilisateur; sinon, il serait possible pour l'utilisateur de sortir de la prison avec cd documents. (Non, les liens symboliques créés par une racine ne peuvent pas être traités spécialement, pour la même raison que cd -P symlink-to-dir; cd .. vous laisse au mauvais endroit; l'apparence de son fonctionnement normal est une illusion créée par le shell.) Utilisez un montage de liaison. à la place (mount --bind /var/ftp/files/documents /var/ftp/users/test/documents).

21
geekosaur