Outils pour utilisateurs

Outils du site


proftp

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
proftp [2022/10/11 07:29] – [Fichiers de configuration] adminproftp [2022/10/11 07:35] (Version actuelle) – ancienne révision (2022/10/11 07:31) restaurée admin
Ligne 12: Ligne 12:
 Les principaux fichiers sont situés dans <wrap em>/etc/proftpd</wrap>:  Les principaux fichiers sont situés dans <wrap em>/etc/proftpd</wrap>: 
 ^Fichier ^Usage ^ ^Fichier ^Usage ^
-|proftpd.conf |Définit les principales caractéristiques techniques du service FTP : nom de la machine vu sur le réseau, durée de session, nombre de connexions simultanées, modules appelés (SGBD, sécurité, etc), répertoires partagés (pour compte anonyme ou compte authentifiés), éléments de sécurité, ports d'écoute, etc | +^proftpd.conf |Définit les principales caractéristiques techniques du service FTP : nom de la machine vu sur le réseau, durée de session, nombre de connexions simultanées, modules appelés (SGBD, sécurité, etc), répertoires partagés (pour compte anonyme ou compte authentifiés), éléments de sécurité, ports d'écoute, etc | 
-|sql.conf |Définit les options pour la mise en relation avec une base de données (MySQL ou PostGreSQL) : SGBD, mode d'authentification, compte de connexion à la base, tables utilisées | +^sql.conf |Définit les options pour la mise en relation avec une base de données (MySQL ou PostGreSQL) : SGBD, mode d'authentification, compte de connexion à la base, tables utilisées | 
-|ldap.conf |Définit les options de connexion à un annuaire par le protocole LDAP : nom de connexion, domaine, localisation du serveur, etc  | +^ldap.conf |Définit les options de connexion à un annuaire par le protocole LDAP : nom de connexion, domaine, localisation du serveur, etc  | 
-|tls.conf |Définit les options de configuration pour l'usage d'une connexion sécurisée : certificat, forcer l'authentification, etc | +^tls.conf |Définit les options de configuration pour l'usage d'une connexion sécurisée : certificat, forcer l'authentification, etc | 
-|modules.conf |Précise les modules à charger lors du démarrage du service : base de données, sécurité, quotas, etc | +^modules.conf |Précise les modules à charger lors du démarrage du service : base de données, sécurité, quotas, etc | 
-|virtuals.conf |Gestion d'hôtes virtuels (un serveur, plusieurs domaines) |+^virtuals.conf |Gestion d'hôtes virtuels (un serveur, plusieurs domaines) |
  
  
Ligne 88: Ligne 88:
 === Attribution de droits === === Attribution de droits ===
  
-La limitation des droits d'utilisation des dossiers s'effectue par la directive Limit : +La limitation des droits d'utilisation des dossiers s'effectue par la <wrap em>directive Limit</wrap> 
 <code apache> <code apache>
 <Limit liste_actions>  <Limit liste_actions> 
Ligne 137: Ligne 137:
 </code> </code>
  
 +===== Client FTP =====
 +
 +L'accès à un serveur FTP doit se faire par un client : 
 +  * le navigateur internet, qui est généralement limité à la récupération de contenu (mais IE permet l'envoi)
 +  * un client avec interface graphique : type Filezilla
 +  * la ligne de commande (ou du script)
 +  * des fonctions de langage de programmation : voir par exemple ici pour PHP.
 +
 +==== Connexion avec un serveur ====
 +
 +La connexion à un serveur utilise les éléments suivants : [utilisateur [:motpasse] @] adresse [:port].
 +Exemples : 
 +ftp://monCompte@192.168.0.152
 + \\  ftp://192.168.0.154:2121
 + \\  ftp://monCompte:monPWD@192.168.0.189:4400
 +
 +==== Eléments de la ligne de commande FTP ====
 + (voir plus de possibilités sur comment ça marche)
 +^  Commande  ^  Utilisation  ^  Exemples  ^
 +|ftp |Passe en mode ligne de commande et réalise éventuellement la connexion ftp |  <code lscript>ftp 192.168.0.156
 +ftp monCompte@192.168.0.152 </code> |
 +|open |Ouvre une connexion avec un serveur | <code lscript>open 192.168.0.156</code>  |
 +|ls | Liste le contenu d'un dossier ls  |  <code lscript> ls sousDossier </code> |
 +|pwd | (Print Working Directory) \\  Affiche le dossier courant  |
 +|mkd / rmd | Crée / Supprime un dossier |
 +|put / get | Envoie / Récupère un document  |  <code lscript>//envoie le fichier vers le serveur
 +put fichierChezMoi  
 +//envoie le fichier et le renomme 
 +put fich1 fich2 
 +// récupère le fichier du serveur 
 +get fichierDistant 
 +//récupère le fichier et le renomme  
 +get ficDist ficLoc</code> |
 +| ! |Exécute une commande sur la machine locale |<code lscript>//se déplace dans l'arborescence locale
 +!cd .. 
 +///crée un dossier en local
 +!md nomDossier  </code> |
 + 
 ===== PROFTP et authentification déportée ===== ===== PROFTP et authentification déportée =====
  
Ligne 154: Ligne 192:
   - Redémarrer le service //proftpd//   - Redémarrer le service //proftpd//
  </WRAP><WRAP clear/>  </WRAP><WRAP clear/>
- 
- 
-==== Prise en charge de l'authentification par MySQL ==== 
- 
-ProFTP peut être complété par un module de gestion de la prise en charge de l'authentification par une base de données. Pour MySQL, on installera le paquetage **//proftpd-mysql//**. 
-On procèdera aux paramétrages ci-dessous dans les fichiers correspondant. 
- 
-=== Fichier proftpd.conf === 
- 
-Dans ce fichier, on se contente d'inclure le paramétrage relatif à SQL présent dans un autre fichier.  
-<code apache> 
-#Include /etc/proftpd/ldap.conf   # si on utilise un serveur LDAP 
-Include /etc/proftpd/sql.conf   # à dé-commenter pour l'utilisation d'une base de données 
-</code> 
- 
-=== Fichier modules.conf === 
- 
-Le fichier indique les modules à charger parmi ceux présents dans le dossier ///usr/lib/proftpd// 
-Dans le cas de l'utilisation d'une base de données MySQL, on dé-commentera les lignes suivantes : 
-<code apache> 
-LoadModule mod_sql.c          # prise en charge de l'authentification par un SGBD 
-LoadModule mod_sql_mysql.c # nom du SGBD avec lequel on est en contact 
-</code> 
- 
-=== Fichier sql.conf === 
- 
-C'est ici qu'on décrira le type d'authentification, le nom des tables et les champs dans lesquels on ira vérifier les informations d'authentification transmises 
-<code apache> 
-<IfModule mod_sql.c> # paramétrage utilisé si le module SQL est  activé 
-SQLBackend mysql        # nom du SGBD qui contient les tables des comptes 
-#SQLEngine on 
-SQLAuthenticate users* groups* # indique le niveau de droits (utilisateurs, groupes, les deux) 
-SQLAuthTypes Crypt Plaintext # mode de gestion des mots de passe crypté et/ou en clair 
-#SQLAuthTypes Backend Crypt     # si on veut que ce soit MySQL qui fasse l'authentification 
-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'utilisateurs et champs étudiés  
-#SQLUserWhereClause "LoginAllowed = 'true'" # n'accepte que les comptes actifs 
-SQLGroupInfo ftpgroup groupname gid members #table/champs étudiés pour groupes  
-SQLLogFile /var/log/proftpd/mysql.log #  journaux liés aux échanges avec la base 
-</IfModule>  
-</code> 
- 
-Voir plus loin pour les éléments de création d’une base MySql pour cette configuration. 
  
 ==== Prise en charge de l'authentification par un annuaire ==== ==== Prise en charge de l'authentification par un annuaire ====
Ligne 250: Ligne 245:
 </code> </code>
  
-===== Client FTP =====+==== Prise en charge de l'authentification par MySQL ====
  
-L'accès à un serveur FTP doit se faire par un client :  +ProFTP peut être complété par un module de gestion de la prise en charge de l'authentification par une base de données. Pour MySQL, on installera le paquetage **//proftpd-mysql//**. 
-  * le navigateur internet, qui est généralement limité à la récupération de contenu (mais IE permet l'envoi) +On procèdera aux paramétrages ci-dessous dans les fichiers correspondant.
-  un client avec interface graphique : type Filezilla +
-  la ligne de commande (ou du script) +
-  * des fonctions de langage de programmation : voir par exemple ici pour PHP.+
  
 +=== Fichier proftpd.conf ===
  
-==== Connexion avec un serveur ====+Dans ce fichier, on se contente d'inclure le paramétrage relatif à SQL présent dans un autre fichier.  
 +<code apache> 
 +#Include /etc/proftpd/ldap.conf   # si on utilise un serveur LDAP 
 +Include /etc/proftpd/sql.conf   # à dé-commenter pour l'utilisation d'une base de données 
 +</code>
  
-La connexion à un serveur utilise les éléments suivants : [utilisateur [:motpasse] @] adresse [:port]+=== Fichier modules.conf === 
-Exemples :  + 
-ftp://monCompte@192.168.0.152 +Le fichier indique les modules à charger parmi ceux présents dans le dossier ///usr/lib/proftpd//.  
- \\  ftp://192.168.0.154:2121 +Dans le cas de l'utilisation d'une base de données MySQL, on dé-commentera les lignes suivantes : 
- \\  ftp://monCompte:monPWD@192.168.0.189:4400+<code apache> 
 +LoadModule mod_sql.c          # prise en charge de l'authentification par un SGBD 
 +LoadModule mod_sql_mysql.c # nom du SGBD avec lequel on est en contact 
 +</code>
  
-==== Eléments de la ligne de commande FTP ==== +=== Fichier sql.conf === 
- (voir plus de possibilités sur comment ça marche) + 
-^  Commande  ^  Utilisation  ^  Exemples +C'est ici qu'on décrira le type d'authentification, le nom des tables et les champs dans lesquels on ira vérifier les informations d'authentification transmises 
-|ftp |Passe en mode ligne de commande et réalise éventuellement la connexion ftp |  <code lscript>ftp 192.168.0.156 +<code apache
-ftp monCompte@192.168.0.152 </code> | +<IfModule mod_sql.c> # paramétrage utilisé si le module SQL est  activé 
-|open |Ouvre une connexion avec un serveur | <code lscript>open 192.168.0.156</code | +SQLBackend mysql        # nom du SGBD qui contient les tables des comptes 
-|ls  | Liste le contenu d'un dossier ls  |  <code lscript> ls sousDossier </code> | +#SQLEngine on 
-|pwd | (Print Working Directory) \\  Affiche le dossier courant  | +SQLAuthenticate users* groups* # indique le niveau de droits (utilisateurs, groupes, les deux
-|mkd rmd | Crée / Supprime un dossier | +SQLAuthTypes Crypt Plaintext # mode de gestion des mots de passe crypté et/ou en clair 
-|put / get | Envoie / Récupère un document  |  <code lscript>//envoie le fichier vers le serveur +#SQLAuthTypes Backend Crypt     # si on veut que ce soit MySQL qui fasse l'authentification 
-put fichierChezMoi   +SQLConnectInfo proftpDB@localhost root mproot # base, serveur et coordonnées d'un compte MySQL (à adapter) 
-//envoie le fichier et le renomme  +SQLUserInfo ftpuser userid passwd uid gid homedir shell # table contenant les comptes d'utilisateurs et champs étudiés  
-put fich1 fich2  +#SQLUserWhereClause "LoginAllowed = 'true'" # n'accepte que les comptes actifs 
-// récupère le fichier du serveur  +SQLGroupInfo ftpgroup groupname gid members #table/champs étudiés pour groupes  
-get fichierDistant  +SQLLogFile /var/log/proftpd/mysql.log #  journaux liés aux échanges avec la base 
-//récupère le fichier et le renomme   +</IfModule>  
-get ficDist ficLoc</code| +</code> 
-| ! |Exécute une commande sur la machine locale |<code lscript>//se déplace dans l'arborescence locale + 
-!cd ..  +Voir ci-dessous pour les éléments de création d’une base MySql pour cette configuration.
-///crée un dossier en local +
-!md nomDossier  </code>+
- +
  
 === Annexe === === Annexe ===
proftp.1665473344.txt.gz · Dernière modification : 2022/10/11 07:29 de admin