VSFTPD un répertoire pour chaque user!!!

Résolu
Bonjour,

Salut à tous,

Je suis en train d'installer vsftpd sur ma ubuntu. Tout c'est bien passé j'ai accès à un mon répertoire ftp qui se trouve sur un disque secondaire (disque data).

Maintenant dans ce répertoire nommé ftp, je possède 3 répertoires un pour moi, un pour les utilisateurs lamda que l'on va appeler public et un pour un autre user spécifique que l'on va appeler mark

Ce que je voudrais réussir a faire c'est à me donner accès a mon répertoire et public. et ne pas avoir accès a celui de mark. idem je voudrais interdire a mark d'avoir accès a mon répertoire mais d'avoir accès a son répertoire et celui public.

Pourriez vous m'indiquer quels sont les paramétrages à effectuer pour gérer les droits au mieux dans mon ftp.

pour le moment tout le monde a accès au répertoire de tout le monde.
Autre chose depuis un poste windows je n'arrive pas à déposer des dcuments dans mon ftp.

Par contre depuis mon serveur linux il n'y a pas de problème je dépose tout ce que je veux.

merci d'avance pour toutes vos réponses qui seront les biens venues

Config <ubunutu 10>

15 réponses

Résumé de la discussion

Plusieurs échanges portent sur la configuration de vsftpd sous Ubuntu pour isoler les droits entre les répertoires personnels, publics et celui d’un utilisateur spécifique, afin d’interdire l’accès non autorisé. Réponse type suggère de créer un compte pour chaque utilisateur, sauvegarder le fichier de config vsftpd.conf, puis activer local_enable et write_enable, et définir un local_root adapté pour restreindre l’accès. D’autres approches proposent des permissions via groupes et chmod 770 ou 775, avec chgrp et usermod -a -G pour que chacun voie uniquement son répertoire et le répertoire public. Un problème sur un troisième disque, où les droits retombent à 777, suggère des paramètres de montage ou un système de fichiers nécessitant vérification des options et du montage pour préserver les droits.

Bobot (l’IA à votre service)
  1. Contributeur
    Re,

    Alors voila ce que je te propose de faire :

    1 - créer un compte utilisateur sur le linux pour chacun d'eux.
    2 - faire une copie de sauvegarde du fichier : vsftpd.conf

    3 - voici les lignes à modifier dans ce fichier pour commercer après on affinera :

    local_enable=YES
    write_enable=YES
    local_umask=000
    ftpd_banner=Bienvenue sur mon serveur FTP
    chroot_local_user=YES
    local_root=ftp/mon_repertoire

    Commence déjà avec ton compte tu verras que ça solutionnera ton problème d'écriture dans le répertoire.

    tiens moi au courant de tes avancés.

    @+

    2
    1. alors je n'ai pas changer ma conf j'ai réessayer avec filezila et effectivement j'arrive a déposé les fichiers mais maintenant je veux pouvoir dire que tel répertoire est dispo pour tel user.
      0
    2. Contributeur
      Bonsoir,

      Avez vous créé les users sur le Linux ?

      Si vous n'avez pas changé votre config du fichier .conf on ne pourra pas avancer !
      Pensez à faire une copie de ce fichier avant de le modifier.

      Faites au moins cette modification :
      local_enable=YES
      write_enable=YES
      local_umask=000
      ftpd_banner=Bienvenue sur mon serveur FTP
      chroot_local_user=YES
      local_root=/ftp/

      Après modification redemarrer le serveur ftp pour qu'il prenne en compte la modification.

      Logiquement vous devriez voir vos 3 répertoires

      1 - créer 3 groupes
      ftp_perso
      ftp_mark
      ftp_public


      2 - Vos 3 répertoires doivent avoir comme groupe la liste ci-dessus

      3 - Ajouter vos users respectivement à ces groupes.

      4 - Ajouter vous au groupe ftp_perso et ftp_public
      0
    3. oui tes modifs que je l'ai ai faite
      local_enable=YES
      write_enable=YES
      local_umask=000
      ftpd_banner=Bienvenue sur mon serveur FTP
      chroot_local_user=YES
      local_root=/ftp/

      sauf le local_mask que j'avais laisser a 022.

      en rentrant ce soir je créerai les groupe, je mets tout le monde a 777 en modifiant local_mask =000

      Je me suis mal exprimé quand je t'ai dis que je n'avais rien modifié c'est que tout était déja bon c'est pour ça que j'ai pas modifié sauf le local_umask.

      merci pour ton aide pour le moment en tout cas vraiment sympa!!!
      0
  2. Contributeur
    Bonsoir,

    "je mets tout le monde a 777 en modifiant local_mask =000"
    Oui effectivement mais c'est surtout le répertoire public qui nécessite cet umask

    Si vous êtes sur que votre répertoire public ne s'adressera qu'aux users connu sous le Linux alors passez le local_mask = 002, ce qui fera un chmod 775.

    @+

    Nul ne peut prétendre se connaître parfaitement car la conscience n'est que la partie émergée de l'iceberg. Sigmund Freud
    1
    1. Contributeur
      Bonjour,

      En ligne de commande le point 2 et 3 :

      2 - sudo chgrp nom_grp nom_rep

      3 - sudo usermod -a -G nom_du_grp nom_user

      @+
      1
      1. salut rescue,

        j'ai fait tout ce qu'il fallait mais j'ai un encore un petit soucis, tout le monde a encore accès. a tous les répertoires

        quand j'ai créé les répertoire pour chaque user sur le FTP j'avais mis les droits chmod 777, c'est peut etre cela qui gène non???
        0
    2. Contributeur
      Bonjour,

      Ben oui, mais vous pouvez vous rattraper en faisant un chmod 770 sur chaque répertoire et vérifié avec la commande ls pour bien voir les droits d'accès :

      ls -la /ftp

      Si c'est bien fait ça devrait vous afficher par exemple ceci :

      drwxrwx--- 1 root ftp_perso 4096 2011-09-07 14:44 perso
      drwxrwx--- 1 root ftp_mark 4096 2011-09-07 14:44 mark
      drwxrwx--- 1 root ftp_public 4096 2011-09-07 14:44 public

      @+

      Nul ne peut prétendre se connaître parfaitement car la conscience n'est que la partie émergée de l'iceberg. Sigmund Freud
      1
      1. Contributeur
        Bonjour,

        Il est où ce répertoire ftp ?

        Dans /var dans /home à la racine du deuxième disque ????

        @+

        Nul ne peut prétendre se connaître parfaitement car la conscience n'est que la partie émergée de l'iceberg. Sigmund Freud
        0
        1. sur la racine de mon disque primaire j'ai créé un répertoire ftp dans ce répertoire ftp j'ai créé un répertoire pour monter mon disque secondaire. dans mon disque secondaire j'ai créé un répertoire avec 3 dossiers un pour moi, un pour mark et un pour tout le monde
          0
      2. OK merci, je teste ça ce soir et je te donne les résulats. Merci
        0
        1. salut rescue

          je suis bloqué sur le point 2 pour donner a une groupe un répertoire.

          j'ai mis mes users dans les groupes respectifs maitenant je n'arrive pas a donner a un groupe un répertoire.

          tu peux m'éclairer la dessus?

          Merci d'avance.
          0
          1. Contributeur
            Bonsoir,

            Votre problème est il résolu oui ou non ?
            ça serait bien d'avoir une réponse !
            0
            1. Contributeur
              Bonjour,

              Super sympa chabin_972 !
              Il y a des gens qui aident il y a d'autres qui attendent de l'aide.

              Apparemment comme vous avez votre réponse vous vous en foutez complément de répondre si c'est ok ou pas.

              Je met en résolu notre discussion.

              Bravo pour votre bon sens de raisonnement communautaire.
              0
              1. Salut rescue,

                ben désolé pour le retard j'ai eu de gros soucis personnel et je n'avais pas pu retester la solution, hier soir j'ai pu enfin recommencer mes tests.

                J'ai remonté mon répertoire FTP en local sur mon disque local linux et tout marche parfaitement avec ton système de groupe par users, par contre quand je retourne sur mon disque esclave y'a un gros soucis au niveau des droits je n'arrive pas a les changer en faisait tout les chmod possible (ce disque a été monté a la base depuis une partition windows c'est peut etre cela qui gène).

                En tout cas maintenant j'ai telement fait des trucs que je ne peux plus passer en mode sudo ça me met un drole de message.

                Mais bon après je pense que c'est du à une mauvaise manip de ma part et pour en revenir a ton aide si je fais tout ce que tu as dit a la lettre en local, je te confirme que tout fonctionne super bien.

                merci maintenant faut que je répare mon mode sudo et que j'arrive a faire fonctionner le ftp avec mon disque esclave.

                Désolé encore pour l'attente :( , mais si je l'avais testé tout de suite et que ça marchait je te l'aurais dit.

                Merci encore!!!
                0
                1. Contributeur
                  Bonjour chabin_972,

                  Vous êtes pardonné merci d'avoir répondu.

                  Pour résoudre ton sudo

                  Voici le mien.

                  -------------------------------------
                  # /etc/sudoers
                  #
                  # This file MUST be edited with the 'visudo' command as root.
                  #
                  # See the man page for details on how to write a sudoers file.
                  #

                  Defaults env_reset

                  # Host alias specification

                  # User alias specification

                  # Cmnd alias specification

                  # User privilege specification
                  root ALL=(ALL) ALL

                  # Allow members of group sudo to execute any command after they have
                  # provided their password
                  # (Note that later entries override this, so you might need to move
                  # it further down)
                  %sudo ALL=(ALL) ALL
                  #
                  #includedir /etc/sudoers.d

                  # Members of the admin group may gain root privileges
                  %admin ALL=(ALL) ALL
                  -------------------------------

                  1 - Renomme le tiens il se trouve dans /etc/
                  2 - Créer un nouveau fichier sudoers
                  3 - Les droits doivent être.
                  -r--r----- 1 root root 642 2011-03-11 13:25 sudoers

                  Manipulation à faire avec le CD ubuntu en session live.

                  @+
                  0
                  1. merci pour cette aide pour le sudo, je dois créer le nouveau et je copie le votre à l'identique?
                    pour le droits je fais un chmod 440 si j'ai bien compris?

                    pour le moment j'ai fais que l'étape une j'ai renommé mon sudoers en sudoers.erreur.

                    Merci encore.
                    et vous pouvez me tutoyer si vous voulez ça me dérange pas.
                    0
                2. Contributeur
                  Bonjour,

                  Oui exactement.

                  @+
                  0
                  1. salut rescue

                    modification effectuer, sauf que maintenant j'ai ce message
                    chabin is not in the sudoers file. This incident will be reported.

                    je pense que je dois ajouter mon user (chabin) dans le sudoers tu peux me confirmer ça, comme ça je ferais la modif

                    merci
                    0
                  2. Contributeur
                    Bonjour,

                    A mon avis tu as du faire une fausse manipulation !
                    Il ne devrait pas te faire ce genre de message si tu as fait la manipulation en root avec le live CD.

                    Bon bref voici une recette :

                    - reboote ta machine en recovery mode

                    - sélectionne le shell root

                    - tape la commande suivante pour ajouter chabin au groupe admin : adduser chabin admin

                    - redémarre ta machine : reboot
                    0
                3. Bonjour,

                  Merci ça fonctionne de nouveau tu es vraiment très très fort merci merci
                  0
                  1. rescue,

                    je voudrais savoir, j'ai retesté mon ftp sur mon 3 eme disque;

                    sur ma racine /, j'ai créé un répertoire ftp en métant les droits 070 afin que juste mon groupe ftp_group puisse y avoir accès, je rattache donc se répertoire a mon groupe ftp_groupe. je fais un ll tout est OK on voit bien que les modifs que je viens d'effectuer sont bien faite.

                    le problème est que quand je mon 3eme disque dur dans ce répertoire ftp, les droits repasse obligatoire en 777 (rwxrwxrwx) et a ce moment, je ne peux plus gérer les droits du répertoire qui se trouve sur le 3eme disque et qui contient le répertoire pour chaque user du ftp, tu sais comment modifier ça?

                    merci d'avance
                    0
                    1. Contributeur
                      Bonjour,

                      Avec quel système de fichier est il formaté ce 3ème disque ?
                      EXT3, EXT4 !

                      Surtout pas en NTFS ou en FAT32. On fait du Linux pas du Windows.

                      @+
                      0
                      1. bonjour,

                        ce 3eme disque est en NTFS, zut je dois le reformater alors le but c'est que ce 3eme disque soit dispo pour mon système windows et linux

                        merci
                        0
                      2. Contributeur
                        Re,

                        Une partition Linux en ext3 ou ext4 peut très facilement se partager avec un Windows si l'utilisateur Windows à les bons droits.

                        Maintenant que tu sais le faire et que tu commences à devenir un pro des droits sous Linux ça devrait aller.

                        @+
                        0
                      3. ok merci je teste ça.

                        ça fait plaisir le "Maintenant que tu sais le faire et que tu commences à devenir un pro des droits sous Linux ça devrait aller. " :)

                        merci m'sieur
                        0
                      4. rescue je voulais juste t'avertir que comme mon sujet a été résolu (grace à toi), que je vais surement créer un nouveau sujet pour les éventuels futurs problèmes que je risque de rencontrer.

                        EN tout cas un GRAND MERCI.
                        0