proftp + proftp admin pour gestion des comptes via mysql - Logiciels - Linux et OS Alternatifs
Marsh Posté le 22-03-2009 à 20:25:46
Voici le mien, j'ai mis en place la même chose que toi et ça fonctionne.
Code :
|
Marsh Posté le 21-04-2009 à 14:31:27
Quelqu'un sait comment on fait pour gérer les comptes anonyme quand on utilise une authentification sql ? Parce que le compte anonyme n'est pas le même selon l'OS ou la navigateur...
Marsh Posté le 28-08-2009 à 12:19:51
Salut.
Moi aussi j'ai des soucis avec proftpd admin et mysql
Pour ce qui est de ton proftpd -l voici le mien :
Code :
|
Tu remarquera que le module SQL et Mysql n'y sont pas non plus.
je pense simplement que cette liste est la liste des modules qui ont été compilés avec proftpd, et non pas la liste des modules chargés.
Quoi qu'il en soit, si proftpd ne te renvoie pas d'erreur sur les instructions SQL de son fichier de conf, c'est qu'il a pu les interpréter, et donc qu'il a bel et bien chargé le module au redémarrage.
Si tu as un déni d'accès au login, ça n'est pas nécessairement dû au fait que PROFTPD ne trouve pas le bon couple user/password, ça peut être dû à tout plein d'autres chose, genre un shell pas valide (ce qui n'est pas ton cas vu que tu est en RequireValidShell off) ou alors un répertoire de connexion utilisateur qui n'existe pas, et c'était mon cas. (vérifie dans /ftp/ ou le répertoire que tu a config par défaut)
Dans la version 1.x de Proftpd admin, tu trouvera dans le /var/www/proftpdadmin/misc/user_script/create_user.sh les commandes qui sont balancées au shell lors de la création d'utilisateur. là tu verra qu'il n'y a pas de create dir...un exemple est donné dans le create_user_example.sh.
Problème, comme c'est Apache (ou ton serveur web) qui va lancer le script, il n'aura probablement pas les droits de mkdir et de chown.
Pour le MKDIR, on peut simplement faire un chown 777 sur le répertoire du ftp (par défaut /ftp/).
Sauf que là, ben on l'as dans le c*l parce qu'on a toujours le soucis que l'utilisateur ne pourra pas modifier son répertoire...Mais au moins il peut se connecter.
Voilà, je suis bloqué là et a moins de faire tourner Apache en root je vois pas comment faire.........(et j'ai pas vraiment envie de mettre apache en root quoi......)
Marsh Posté le 28-08-2009 à 13:06:14
Bon, j'avance à tâtons...
Pour plus de sécu, j'ai fait un petit chgrp www-data /ftp et un chmod 775 /ftp, ça évite que tout le monde ait accès au dossier.
Ensuite, j'ai tenté de faire un chmod 4755 /bin/chown, du coup le script arrive bien à créer le répertoire et à modifier les droits utilisateurs.
Par contre, l'utilisateur n'as toujours pas les droits d'écrire dans son dossier :s
Marsh Posté le 28-08-2009 à 16:19:18
Voilà, j'ai résolu tous mes problèmes.
Pour ce qui est de la création du répertoire de l'utilisateur, je me suis penché sur ProFTPd et j'ai trouvé ceci à rajouter dans la conf :
SQLHomedirOnDemand on
Spécifique pour SQL, ou plus globalement (semble fonctionner même sans SQL) :
CreateHome on
Le répertoire sera créé a la première connexion de l'utilisateurs avec les bon droits.
Par la suite, il m'a fallu un peu de temps pour comprendre pourquoi mes utilisateurs n'avaient pas les droits WRITE, en fouinant mon proftpd je me suis apperçu qu'il y avait des saloperies dedans, il était configuré pour que personne sauf les admins puissent uploader et que les autres ne pouvaient que downloader. comme cette conf n'était pas dans ce que je souhaitais, j'ai commenté toute cette partie.
Le dernier problème qui restait était que Proftpd Admin devait pouvoir supprimer l'arborescence complète de l'utilisateur que l'on souhaitait supprimer, je m'en suis sorti avec un petit sudo, dans /etc/sudoers :
www-data ALL=NOPASSWD: /bin/rm
ainsi que dans /var/www/misc/user_script/delete_user.sh en ajoutant sudo /bin/rm -vfr /ftp/$USER dans le script.
A présent, tout semble bien se dérouler, même si je n'aime pas vraiment qu'on donne le droit à www-data de supprimer tout ce dont il aurait envie...
Marsh Posté le 03-12-2009 à 12:09:50
Tient, une qpetite question sur ce topic sympa.
Je n'arrive pas à utiliser la commande CHMOD avec ProFTP. J'ai pourtant placé :
<Limit SITE_CHMOD>
AllowAll
</Limit>
Dans <global> et même plus spécifiquement dans un <directory> mais la commande refuse de se faire depuis un client. Petit détail j'utilise MySQL pour l'authentification des utilisateurs. Ça a peu être une incidence.
Vous avez des idées ?
Marsh Posté le 30-09-2008 à 13:18:58
Bonjour,
Je suis en train d'installer proftp sur une debian.
J'ai tout réussi, mais je n'arrive pas à m'identifier via mon client FTP.
J'ai bien le message de bienvenue, mais il ne reconnait pas mon login / mot de passe.
J'ai installé proftp afin de pouvoir gérer les comptes via mysql.
J'ai ajouté mon compte pour acceder au ftp via proFTPd Administrator. Ca a fonctionné (qd je regarde dans mysql, je vois le compte que je viens de créer)
Mais dans le log, à chaque tentative de connexion, j'ai l'erreur :
Sep 30 12:34:27 proftpd[10758] (vol75-10-82-244-226-119.fbx.proxad.net[:ffff:]): mod_delay/0.5: delaying for 6 usecs
Sep 30 12:34:27 proftpd[10758] (vol75-10-82-244-226-119.fbx.proxad.net[:ffff:]): no such user 'monlogin'
Sep 30 12:34:27 proftpd[10758] (vol75-10-82-244-226-119.fbx.proxad.net[:ffff:]): USER monlogin: no such user found from vol75-10-.fb$
Sep 30 12:34:27 proftpd[10758] (vol75-10-82-244-226-119.fbx.proxad.net[:ffff:]): FTP session closed.
S
J'en conclus que proftp ne voit pas mes comptes mysql.
Si je fais un proftpd -l, j'ai la liste suivante :
mod_core.c
mod_xfer.c
mod_auth_unix.c
mod_auth_file.c
mod_auth.c
mod_ls.c
mod_log.c
mod_site.c
mod_delay.c
mod_dso.c
mod_auth_pam.c
mod_readme.c
mod_cap.c
mod_ctrls.c
et dans cette liste il n'y a pas les mod_sql .
Pourtant, si j'édite modules.conf :
LoadModule mod_ctrls_admin.c
LoadModule mod_tls.c
LoadModule mod_sql.c
#LoadModule mod_ldap.c
LoadModule mod_sql_mysql.c
#LoadModule mod_sql_postgres.c
LoadModule mod_quotatab.c
LoadModule mod_quotatab_file.c
LoadModule mod_quotatab_ldap.c
LoadModule mod_quotatab_sql.c
LoadModule mod_radius.c
LoadModule mod_wrap.c
LoadModule mod_rewrite.c
# keep this module the last one
LoadModule mod_ifsession.c
Pourquoi les mod sql ne seraient pas chargés??
MErci pour votre aide !