proftp
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédente | |||
proftp [2022/10/11 07:33] – [Prise en charge de l'authentification par MySQL] admin | proftp [2022/10/11 07:35] (Version actuelle) – ancienne révision (2022/10/11 07:31) restaurée admin | ||
---|---|---|---|
Ligne 136: | Ligne 136: | ||
</ | </ | ||
</ | </ | ||
- | |||
- | ===== PROFTP et authentification déportée ===== | ||
- | |||
- | Par défaut, l' | ||
- | Il est possible de reporter sur un système plus souple cette authentification : un fichier de comptes et groupes (non traité), un annuaire, ou une base de données. | ||
- | Pour ce faire, on devra activer certains modules et renseigner certains paramètres dans les fichiers de configuration, | ||
- | |||
- | ==== Configuration avec MySQL pour l' | ||
- | <WRAP left round box 75%> | ||
- | - Si besoin, procéder à l' | ||
- | - Installer le paquetage de // | ||
- | - Créer la base pour //proftpd// sous MySQL, les tables // | ||
- | - Insérer dans la table //ftpuser// le compte de connexion de l' | ||
- | - Configurer le fichier // | ||
- | - Appeler // | ||
- | - Demander à charger les modules //sql// et //mysql// dans le fichier // | ||
- | - Redémarrer le service //proftpd// | ||
- | </ | ||
- | |||
- | |||
===== Client FTP ===== | ===== Client FTP ===== | ||
Ligne 164: | Ligne 144: | ||
* la ligne de commande (ou du script) | * la ligne de commande (ou du script) | ||
* des fonctions de langage de programmation : voir par exemple ici pour PHP. | * des fonctions de langage de programmation : voir par exemple ici pour PHP. | ||
- | |||
==== Connexion avec un serveur ==== | ==== Connexion avec un serveur ==== | ||
Ligne 196: | Ligne 175: | ||
!md nomDossier | !md nomDossier | ||
+ | ===== PROFTP et authentification déportée ===== | ||
+ | |||
+ | Par défaut, l' | ||
+ | Il est possible de reporter sur un système plus souple cette authentification : un fichier de comptes et groupes (non traité), un annuaire, ou une base de données. | ||
+ | Pour ce faire, on devra activer certains modules et renseigner certains paramètres dans les fichiers de configuration, | ||
+ | |||
+ | ==== Configuration avec MySQL pour l' | ||
+ | <WRAP left round box 75%> | ||
+ | - Si besoin, procéder à l' | ||
+ | - Installer le paquetage de // | ||
+ | - Créer la base pour //proftpd// sous MySQL, les tables // | ||
+ | - Insérer dans la table //ftpuser// le compte de connexion de l' | ||
+ | - Configurer le fichier // | ||
+ | - Appeler // | ||
+ | - Demander à charger les modules //sql// et //mysql// dans le fichier // | ||
+ | - Redémarrer le service //proftpd// | ||
+ | </ | ||
+ | |||
+ | ==== Prise en charge de l' | ||
+ | |||
+ | ProFTP peut être complété par un module de gestion de la prise en charge de l' | ||
+ | On procèdera aux paramétrages ci-dessous dans les fichiers correspondant. | ||
+ | |||
+ | === Fichier proftpd.conf === | ||
+ | |||
+ | Dans ce fichier, on inclue le paramétrage relatif à LDAP présent dans un autre fichier et on désactive la gestion par Linux. | ||
+ | <code apache> | ||
+ | Include / | ||
+ | #Include / | ||
+ | RequireValidShell | ||
+ | AuthPAM | ||
+ | AuthOrder | ||
+ | </ | ||
+ | |||
+ | |||
+ | === Fichier modules.conf === | ||
+ | |||
+ | Le fichier indique les modules à charger parmi ceux présents dans le dossier / | ||
+ | Dans le cas de l' | ||
+ | <code apache> | ||
+ | LoadModule mod_ldap.c # prise en charge de l' | ||
+ | </ | ||
+ | |||
+ | === Fichier ldap.conf === | ||
+ | |||
+ | C'est ici qu'on décrira l’adresse de l’annuaire, | ||
+ | <code apache> | ||
+ | < | ||
+ | LDAPServer ldap:// | ||
+ | LDAPBindDN " | ||
+ | LDAPAttr attributAnnuaire variable | ||
+ | LDAPUsers " | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | == Exemple de fichier LDAP == | ||
+ | <code apache> | ||
+ | < | ||
+ | # FQDN de l’annuaire (le serveur ProFTP doit pouvoir résoudre le domaine gsbeu.intra) | ||
+ | LDAPServer ldap:// | ||
+ | #Compte utilisé pour parcourir l’annuaire. Ne devrait pas être l’administrateur du domaine | ||
+ | #mais un compte avec les droits suffisants. | ||
+ | LDAPBindDN " | ||
+ | #renommage du champ LDAP cn sous l’intitulé SamAccountName | ||
+ | LDAPAttr cn SamAccountName | ||
+ | #chemin de recherche dans l’unité « services » en utilisant le compte soumis au serveur FTP | ||
+ | LDAPUsers " | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== Prise en charge de l' | ||
+ | |||
+ | ProFTP peut être complété par un module de gestion de la prise en charge de l' | ||
+ | On procèdera aux paramétrages ci-dessous dans les fichiers correspondant. | ||
+ | |||
+ | === Fichier proftpd.conf === | ||
+ | |||
+ | Dans ce fichier, on se contente d' | ||
+ | <code apache> | ||
+ | #Include / | ||
+ | Include / | ||
+ | </ | ||
+ | |||
+ | === Fichier modules.conf === | ||
+ | |||
+ | Le fichier indique les modules à charger parmi ceux présents dans le dossier /// | ||
+ | Dans le cas de l' | ||
+ | <code apache> | ||
+ | LoadModule mod_sql.c # prise en charge de l' | ||
+ | LoadModule mod_sql_mysql.c # nom du SGBD avec lequel on est en contact | ||
+ | </ | ||
+ | |||
+ | === Fichier sql.conf === | ||
+ | |||
+ | C'est ici qu'on décrira le type d' | ||
+ | <code apache> | ||
+ | < | ||
+ | SQLBackend mysql # nom du SGBD qui contient les tables des comptes | ||
+ | #SQLEngine on | ||
+ | SQLAuthenticate users* groups* # indique le niveau de droits (utilisateurs, | ||
+ | SQLAuthTypes Crypt Plaintext # mode de gestion des mots de passe crypté et/ou en clair | ||
+ | # | ||
+ | SQLConnectInfo proftpDB@localhost root mproot # base, serveur et coordonnées d'un compte MySQL (à adapter) | ||
+ | SQLUserInfo ftpuser userid passwd uid gid homedir shell # table contenant les comptes d' | ||
+ | # | ||
+ | SQLGroupInfo ftpgroup groupname gid members # | ||
+ | SQLLogFile / | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | Voir ci-dessous pour les éléments de création d’une base MySql pour cette configuration. | ||
=== Annexe === | === Annexe === |
proftp.1665473593.txt.gz · Dernière modification : 2022/10/11 07:33 de admin