« ProFTPd » : différence entre les versions

De NCad Wiki
Aller à la navigation Aller à la recherche
Ligne 1 : Ligne 1 :
== Présentation ==
== Présentation ==


proFTPd est un serveur de fichier basé sur le protocole FTP (File Transfer Protocol).
'''proFTPd''' est un serveur de fichiers basé sur le protocole '''FTP ''(File Transfer Protocol)'''''.


== Installation ==
== Installation ==

Version du 23 mars 2013 à 13:43

Présentation

proFTPd est un serveur de fichiers basé sur le protocole FTP (File Transfer Protocol).

Installation

Service FTP

proFTPd est inclut dans les dépôts d'apt-get.

apt-get install proftpd


Il existe une interface graphique pour gérer le service. Cependant, nous n'aborderons pas ici comment utiliser cette interface.

Module Sql

Le module sql permet de déporter l'authentification sur une base de données SQL. Dans notre cas, nous utiliserons une base de type MySQL.

apt-get install proftpd-mod-mysql

Authentification Sql

Création des tables

Créer une base de données pour le service proFTPd. Lors de l'authentification, ce dernier ira consulter deux tables :

  • users
  • groups

Voici, la structure de ces tables et la requêtes Sql pour leur création :

CREATE TABLE users (
   userid VARCHAR(30) NOT NULL UNIQUE,
   passwd VARCHAR(80) NOT NULL,
   uid INTEGER UNIQUE,
   gid INTEGER,
   homedir VARCHAR(255),
   shell VARCHAR(255)
 )
CREATE TABLE groups (
   groupname VARCHAR(30) NOT NULL,
   gid INTEGER NOT NULL,
   members VARCHAR(255)
 )

Activation de l'authentification MySQL

Le service proFTPd doit disposer de trois modules pour gérer l'authentification via une base de données sql/mysql. Pour cela, éditer le fichier de configuration /etc/proftpd/modules.conf et décommenter les lignes suivantes :

LoadModule mod_sql.c
LoadModule mod_sql_mysql.c
LoadModule mod_sql_passwd.c

Paramètres d'accès à la base

Pour permettre au service proFTPd d'interroger la base de données MySQL, il faut lui indiquer les informations de connexion et les méthodes d'authentification dans le fichier /etc/proftpd/sql.conf :

<IfModule mod_sql.c>
SQLBackend mysql
SQLEngine on
SQLAuthenticate on
SQLAuthTypes Crypt Plaintext

# Paramètres de connexion à la base à adapter :
SQLConnectInfo user_proftpd@serveur_sql db_proftps passwd_proftpd
#

SQLUserInfo users userid passwd uid gid homedir shell
SQLGroupInfo groups groupname gid members

</IfModule>

Sources

http://www.proftpd.org/docs/howto/SQL.html