IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

créer une user ftp en php


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2007
    Messages : 130
    Points : 51
    Points
    51
    Par défaut créer une user ftp en php
    bonjour, je suis sur un projet de panel de gestion d'hebergement, j'arrive bien a créer le repertoire de destination mais je cherche a créer un login et password pour que le mebre y est accès vie un client ftp. je nage un peu, merci pour votre aide (suis sur un dedié)

    merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Je ne te comprends pas trés bien, tu es administrateur d'un serveur dédié, que vient faire php, dans la gestion des FTP pour chaque nom de domaine que tu va accueillir.
    Tu as les outils du serveur pour faire ta "mise en place" ,j'ais du mal a comprendre que tu géres un serveur complet, sans autres connaissances.

  3. #3
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 690
    Points : 20 211
    Points
    20 211
    Par défaut
    Citation Envoyé par asus02 Voir le message
    bonjour, je suis sur un projet de panel de gestion d'hebergement, j'arrive bien a créer le repertoire de destination mais je cherche a créer un login et password pour que le mebre y est accès vie un client ftp. je nage un peu, merci pour votre aide (suis sur un dedié)

    merci
    Sans plus d'info difficile de t'aider. Serveur linux ? windows ? quel est le serveur FTP utilisé ?

    A priori en lisant la doc de ton serveur FTP tu trouvera sans doute comment créer un utilisateur et donc rien de bien compliqué en php une fois cette infos trouvée
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2007
    Messages : 130
    Points : 51
    Points
    51
    Par défaut
    en faite je commence sur un serveur dedié, et j'arrive a creer un repertoire pour mes membres mais je voudrais créer un user ftp qui pointe vers le repertoir en question, je suis sous linux squeeze. merci de vos réponse mais sachez que je suis novice. merci de votre patiente

    on ma parler de useradd + shell_exec mais je n'y pige que dale, desolé, pourrier vous m'eclairer !! merci

  5. #5
    Invité
    Invité(e)
    Par défaut
    Désolée, mais apprendre a gérer un serveur c'est au minimum 6 mois de formation, cela ne peut se traiter ici.

  6. #6
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2007
    Messages : 130
    Points : 51
    Points
    51
    Par défaut
    un pti coup de pousse soyez sympa, je debute et j'assimile vite, merci

    il ne me manque que cette partie a gérer le reste est ok , juste créer un user ftp vers un répertoire spécifique ...

  7. #7
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 690
    Points : 20 211
    Points
    20 211
    Par défaut
    Citation Envoyé par asus02 Voir le message
    on ma parler de useradd + shell_exec mais je n'y pige que dale, desolé, pourrier vous m'eclairer !! merci
    useradd est une solution (c'est la commande qui permet de créer un utilisateur système) mais encoreu ne fois ça va dépendre du serveur ftp utilisé. Certains serveur ftp utilise les utilisateur système du group ftp par exemple alors que d'autre gère leur propre liste d'utilisateur.

    Trouve quel est ton serveur FTP (pureftpd,vsftpd,proftpd ...) et comment on y ajoute un utilisateur et on pourra t'aider avec le php
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2007
    Messages : 130
    Points : 51
    Points
    51
    Par défaut
    en fait je suis sur un serveur dedié donc administrateur du systeme (linux squezze 6) et vsftp, pour créer mon repertoire a mon client je passe en php de cete facon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    //// création du repertoire
     
    $DESTINATION_FOLDER = "clients";
    if (!is_dir($DESTINATION_FOLDER.'/'.$nic_handle))
        if (!mkdir($DESTINATION_FOLDER.'/'.$nic_handle))
            echo 'Impossible de créer le dossier';
     
    /// copie du fichier
    $fichierAcopier = 'index.html';
    $emplacementFinal = $DESTINATION_FOLDER . '/' . $nic_handle . '/';
    copy($fichierAcopier, $emplacementFinal . $fichierAcopier);
    ce que je cherche a faire c'est en même temps créer un compte ftp avec cet identifiant $nic_handle et un mot de passe mais uniquement avec accès a ce répertoire.

    on m'a parler de adduser + shell(exec) mais j'ai cherché un peut sur le net et comme je suis novice j'ai du mal a saisir, je pense avoir compris pour créer l'user avec son passe mais comment le faire pointer sur un répertoire en particulier et non pas au ftp entier.

    merci

  9. #9
    Invité
    Invité(e)
    Par défaut
    Je supposes que tu as voulu écrire "squeeze 6 vsftpd"
    Justement va chercher sur google "gerer user squeeze 6 et vsftpd"

    et arrétes de mélanger la gestion d'un répertoire avec FTP !

  10. #10
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 690
    Points : 20 211
    Points
    20 211
    Par défaut
    Citation Envoyé par asus02 Voir le message
    on m'a parler de adduser + shell(exec) mais j'ai cherché un peut sur le net et comme je suis novice j'ai du mal a saisir, je pense avoir compris pour créer l'user avec son passe mais comment le faire pointer sur un répertoire en particulier et non pas au ftp entier.
    merci
    vsftpd à 2 modes de fonctionnement. Soit utilisateur system auquel cas les utilisateurs de ton serveur on des comptes ftp et donc leur dossier locaux correspondent probablement au dossier du ftp (voir la doc pour ça). Soit utilisateur virtuel auquel cas tu gère la liste d'utilisateur via des fichiers particulier.

    Si c'est le premier mode qui est configurer il suffit effectivement de créer un utilisateur avec adduser. Pour faire cela avec php il faut il ne suffit pas d'appeler la fonction via shell() ou exec() car cela nécessite des droits particuliers.

    Bref c'est faisable mais ça demande
    - de la config de serveur ftp
    - de la config du système pour laisser php executer cette commande
    - de solide connaissance en systeme pour ne pas compromettre la sécurité du serveur.

    Pour info une doc qui parle de vsftpd en français et des différents mode : http://doc.ubuntu-fr.org/vsftpd

    pour l'autre mode de fonctionnement c'est pareil il faudra reconfigurer le serveur ftp et gérer les différents fichiers de config via php.

    Sinon je sais que proftpd sais gérer une liste d'utilisateur via une base mysql. nettement plus simple à gérer via php
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  11. #11
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par grunk Voir le message
    Sinon je sais que proftpd sais gérer une liste d'utilisateur via une base mysql. nettement plus simple à gérer via php
    Je sais que ce n'est pas incidieu de ta part, mais ,pour prolonger mes rares interventions, je préciserais que phpmyadmin est entiérement écrit en php
    pour faire un paralléle.
    mon propos étant d'insiter a utiliser les outils

  12. #12
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2007
    Messages : 130
    Points : 51
    Points
    51
    Par défaut
    j'ai suvie ce tuto http://www.xenetis.org/a_29_installe...ian_lenny.html

    maintenant je bloque sur la création d'user via php

    j'ai bien fais un repertoire qui me créer un user sur la table mais ca ne fonctionne pas en ftp :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
    require_once('config3.php');
    $shell="/bin/sh";
    $passe="trounoutte";
    $nom="asus02";
    $mot_de_passe= md5($passe);
    $uid="106";
    $gid="33";
    $repertoire="/var/www/mbrs/clients/clients/n1kwb2bb/";
     
     
    mysql_query("INSERT INTO utilisateur VALUES ('$nom', '$mot_de_passe',' $uid', '$gid', '$repertoire', '$shell')") or die ('Erreur : '.mysql_error());
    ?>

  13. #13
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2007
    Messages : 130
    Points : 51
    Points
    51
    Par défaut
    alors essaie concluant en faisant
    adduser --home /var/www/mbrs/clients/clients/n1kwb2bb olivxii

    par contre l'user créer peut remonter dans le ftp alors qu'il devrais rester sur son répertoire

    je tombe bien sur le bon répertoire, maintenant comment réaliser cette opération en php ?

    merci

  14. #14
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 690
    Points : 20 211
    Points
    20 211
    Par défaut
    As tu désinstallé vsftpd avant d'installer proftpd ?
    As tu configuré proftpd pour fonctionner avec une base d'utilisateur plutôt que les utilisateurs locaux ?

    Si tu n'as pas désinstallé vsftpd c'est normal que ça ne marche pas puisque que c'est lui qui doit avoir la main sur le protocole ftp et non proftpd.

    Pour les utilisateurs qui peuvent remonter en dehors de leur répertoire c'est parce que tu utilise un utilisateur système (et pas un dans la bdd mysql) qui n'est pas chrooté.

    Je sais que ce n'est pas incidieu de ta part, mais ,pour prolonger mes rares interventions, je préciserais que phpmyadmin est entiérement écrit en php
    pour faire un paralléle.
    Comprend pas le rapport avec ce que j'ai proposé ?
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Comment créer une liste dynamique en PHP ?
    Par geeka dans le forum Langage
    Réponses: 3
    Dernier message: 20/04/2015, 16h45
  2. Trier une racine FTP en PHP
    Par Casio dans le forum Langage
    Réponses: 1
    Dernier message: 13/11/2013, 11h36
  3. [AC-2010] ACCESS VBA Créer une connexion FTP
    Par Décibel dans le forum VBA Access
    Réponses: 5
    Dernier message: 05/09/2012, 19h46
  4. Réponses: 4
    Dernier message: 01/11/2008, 10h41
  5. Réponses: 0
    Dernier message: 24/03/2006, 09h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo