|
|
|
|
Salut a tous,
Je constate un comportement etrange en utilisant les liens symboliques vers les dossiers.
Je serais ravi que quelqu'un puisse m'eclairer.
J'ai cree un repertoire /var/www/test qui appartient a root et test. Ces derniers ont tous les droits sur le repertoire qui par contre est interdit a tout le monde. Moi meme (santiago), j'appartiens au groupe test. J'ai donc tous les droits sur /var/www/test.
$ ls -l /var/www/ total 8 drwxr-xr-x 2 root root 4096 2008-11-11 01:24 apache2-default drwxrws--x 2 root test 4096 2008-11-11 01:25 test
$ ln -s /var/www/test/ testln $ mkdir testmount $ sudo mount --bind /var/www/test/ testmt/ $ ls -l lrwxrwxrwx 1 santiago santiago 14 2008-11-11 01:25 testln -> /var/www/test/ drwxrws--x 2 root test 4096 2008-11-11 01:36 testmt $ cd testln/ $ pwd /home/santiago/testln $ cd ../testmt/ $ pwd /home/santiago/testmt
ftp> pwd 257 "/home/santiago" is current directory. ftp> ls 200 PORT command successful 150 Opening ASCII mode data connection for file list lrwxrwxrwx 1 santiago santiago 14 Nov 11 00:25 testln -> /var/www/test/ drwxrws--x 2 root test 4096 Nov 11 00:36 testmount 226 Transfer complete. ftp> cd testln/ 550 testln: No such file or directory ftp> cd testmount/ ftp> pwd 257 "/home/santiago/testmount" is current directory. ftp> cd /var/www/test ftp> pwd 257 "/var/www/test" is current directory.
A priori ça ne me choque pas que tu ne puisses pas suivre un lien symbolique. Intuitivement ça doit être pour éviter qu'un utilisateur ftp ne sorte du root directory du serveur ftp.
/mnt/vfat/ftp /home/ftp none bind 0 0 Dans cet exemple, je suppose que la racine du serveur ftp est /home/ftp. Je pense que tu aller plus loin et construire en plusieurs ligne de fstab toute ton arborescence si le contenu du serveur ftp est dispersé du moment que le répertoire cible dans lequel tu montes ton répertoire source existe. Ainsi tu évites complètement la création de lien symbolique. Pour plus de détails, je pense que tu devrais te promener sur le site de proftpd, sur lequel de nombreux cas d'utilisations sont décrits : http://www.proftpd.org/ Une autre approche complètement différente et qui m'a fait abandonné ftp, c'est ssh. En effet, à partir du moment ou la personne se connecte en ssh il n'y a plus vraiment de contraintes comme les liens symboliques etc. - L'inconvénient c'est que tu dois créer un compte sur la machine et éventuellement être vigilant sur les droits (en particulier si tu veux qu'on évite de fouiner dans ton /home). Il reste toujours possible de ne pas laisser de shell à ce genre d'utilisateurs (cf /etc/passwd). - L'avantage c'est que c'est simple à mettre en oeuvre et plus sûre que ftp. Le client doit de son côté utiliser un client ssh (par exemple winscp sous windows, fish:// dans konqueror ou dolphin sous KDE etc...) ou s'il est sous linux utiliser la commande scp. Bonne chance |
Salut mamiemando,
ftp> ls 200 PORT command successful 150 Opening ASCII mode data connection for file list lrwxrwxrwx 1 santiago santiago 19 Nov 12 15:15 testln -> /var/www/test/ 226 Transfer complete. ftp> cd testln 250 CWD command successful ftp> pwd 257 "/var/www/test" is current directory. 2) avec lftp (GNU/linux), les liens sont suivis de maniere transparente : lftp> ls lrwxrwxrwx 1 santiago santiago 19 Nov 12 15:15 testln -> /var/www/test/ lftp> cd testln cd ok, cwd=/home/santiago/testln lftp> pwd ftp://santiago@xxx/%2Fhome/santiago/testln Bien entendu, lorsque les liens sont suivis de maniere non transparente, se pose le probleme du home directory. Si l'utilisateur est cantonne a son home directory, les symbolic links externes ne seront pas suivis. Bonne journee Santiago Il y a 10 types de personnes dans le monde Ceux qui comprennent le binaire et les autres. |
Moi ce qui me convient le mieux, c'est le ssh, mais j'ai des collaborateurs a qui j'offre un espace d'hebergement sur mon serveur et 1) il ne savent pas utiliser ssh 2) je ne veux pas qu'ils se connectent via un shell.
|
Concrètement ils ont juste à installer winscp s'ils sont sous windows, sous linux c'est directement intégré comme je disais auparavant.
|
Mes collaborateurs ont deja tous un compte dont le shell est /bin/false.
|
Pour (1) il faut bien voir que winscp est très proche de filezilla ou tout autre client ftp.
(mando@aldur) (~/pouet) $ chmod 000 .. (mando@aldur) (~/pouet) $ cd .. bash: cd: ..: Permission non accordée Si le répertoire que tu chmod ne leur appartient pas tu peux mettre des droits moins réstrictif, car dans cet exemple seul root pourra accéder à "..". Bonne chance |