Troumad wrote: > Un camarade a trouv� la solution � mes questions (il me semble), je > vous passe l'adresse de la r�ponse s'il y a des gens int�ress�. Mais > mon niveau d'anglais, comme mon niveau en LINUX, ne m'ont pas permis > de bien comprendre.
Comme la question m'int�resse aussi, j'ai lu et traduit l'article en question. Le voila ci-dessous. Si tu as test� proftp, comment faire pour que l'utilisateur � distance ne voit *que* un r�pertoire donn� du host, et qu'il ne puisse pas remonter dans l'arborescence ? 9a se trouve dans proftpd.conf, mais o� ? "Comment puis-je permettre � un utilisateur d'utiliser scp ou sftp, mais ne pas autoriser ssh (c.a.d. d'obtenir un shell ou d'ex�cuter d'autres programmes) ? La r�ponse est que c'est un peu compliqu� � faire. scp1 et scp2 utilise ssh en sub process pour se connecter au host et ex�cute le serveur appropri� pour converser avec scp et sftp-server respectivement. Donc, la meilleure chose � faire est de resteindre l'utilisateur � ex�cuter le serveur de transfert de fichier. La fa�on la plus simple de le faire est de cr�er un compte uniquement � cet effet, en lui donnant un shell qui ne lui permet de faire que du transfert de fichiers. SSH utilise toujours le shell pour ex�cuter des programmes � distance, aussi c'est une restriction fiable. SSH appelle le shell avec l'option -c pour ex�cuter le programme. La modification devrait accepter ou bien scp avec les arguments appropri�s, ou sftp-server, suivant le cas. SSH2 est fourni avec ssh-dummy-shell pour la m�me t�che, ainsi il ne g�re naturellement que sftp. Si vous ne voulez pas limiter le compte utilisateur de cette fa�on, cela devient plus difficile. Vous pouvez �galement essayer une identification � cl� publique avec une commande forc�e. C'est simple avec SSH2 : # SSH2 [remote:~/.ssh2/authorization] key users_key.pub command /usr/local/bin/sftp-server Avec SSH1, c'est plus compliqu�, parce que le client passe des arguments � scp dans la commande � distance. Par exemple : client command runs this on server ---------------------------------------------- scp foo server:bar scp -t bar scp server:bar foo scp -f bar scp *.txt server:dir scp -d -t dir Ainsi, vous avez besoin d'un programme enveloppe pour le resteindre. Voila un exemple : # SSH1 [remote:~/.ssh/authorized_keys] command="/path/to/scp-wrapper" 1024 37 1440913682374... (voir le script Perl � http://www.snailbook.com/faq/scp-wrapper.txt) Mais chacune de ces solutions a un d�faut : l'autorisation et les cl�s autoris�es sont Writable par le compte utilisateur cible. Ces mesures sont ais�ment contourn�es en utilisant simplement scp pour modifier ces fichiers. Donc vous devez les prot�ger des modifications. Vous pouvez interdire l'�criture dans le r�pertoire de controle SSH du compte, ou vous pouvez changer son emplacement par ex. avec l'instruction ssh2 UserConfigDirectory. Par-del� ceci, cependant, il y a encore plus de trous. Par exemple, SSH ex�cute le shell de l'utilisateur pour ex�cuter la commande � distance, avec $SHELL -c "commande". Ainsi, vous pouvez tranquillement ex�cuter n'importe quelle commande avec scp, dans le fichier de d�marrage du shell � distance (par ex ~/.bashrc), et elles seront ex�cut�es la prochaine fois que vous lancez scp. Vous devez donc verrouiller le r�pertoire home distant de fa�on qu'il ne soit pas writable pour l'utilisateur, et cr�er un espace distinct pour y d�poser les fichiers."
Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft? Rendez-vous sur "http://www.mandrakestore.com"
