Configurer un PureFTPd avec un backend MySQL sous Ubuntu

En trois étapes :

Premièrement, l'installation à partir des packages :

$ sudo apt-get install pure-ftpd-mysql

Deuxièmement, création de l'user, de la base et de la table kivonbien sur un serveur MySQL :

CREATE DATABASE pureftpd;
GRANT SELECT ON pureftpd.* TO 'pureftpd'@'localhost' IDENTIFIED BY 'XXXXXX';
CREATE TABLE `ftpd` (
 `User` varchar(16) NOT NULL default '',
 `status` enum('0','1') NOT NULL default '0',
 `Password` varchar(64) NOT NULL default '',
 `Uid` varchar(11) NOT NULL default '-1',
 `Gid` varchar(11) NOT NULL default '-1',
 `Dir` varchar(128) NOT NULL default '',
 `ULBandwidth` smallint(5) NOT NULL default '0',
 `DLBandwidth` smallint(5) NOT NULL default '0',
 `comment` tinytext NOT NULL,
 `ipaccess` varchar(15) NOT NULL default '*',
 `QuotaSize` smallint(5) NOT NULL default '0',
 `QuotaFiles` int(11) NOT NULL default '0',
 PRIMARY KEY  (`User`),
 UNIQUE KEY `User` (`User`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

Troisièmement on paramètre le PureFTPd. D'abord dans /etc/pure-ftpd/db/mysql.conf :

MYSQLSocket      /var/run/mysqld/mysqld.sock
MYSQLUser       pureftpd
MYSQLPassword   XXXXXXXX
MYSQLDatabase   pureftpd
MYSQLCrypt      md5
MYSQLGetPW      SELECT Password FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MYSQLGetUID     SELECT Uid FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MYSQLGetGID     SELECT Gid FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MYSQLGetDir     SELECT Dir FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MySQLGetBandwidthUL SELECT ULBandwidth FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MySQLGetBandwidthDL SELECT DLBandwidth FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MySQLGetQTASZ   SELECT QuotaSize FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")
MySQLGetQTAFS   SELECT QuotaFiles FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "\R")

Et ensuite on n'oublie pas de créer le fichier /etc/pure-ftpd/conf/ChrootEveryone avec comme valeur "yes".

Si je ne me suis pas planté, c'est tout (pour le moment).

(PS : ceci est un post perdu !)

Reprendre les transferts avec ProFTPd

J'ai passé au moins 5 minutes à googler pour trouver ça :

AllowStoreRestart       on

(à mettre dans les options générales)

C'est quand même con que ce soit pas activé par défaut. Genre quand un bénévole t'envoie un fichier de 118 Mo et que tu vois pas pourquoi FileZilla il veut pas reprendre, tu te sens con. Tu vois ? Be aware.

Quand Trinity hacke, elle utilise nmap

Je découvre de plus en plus la puissance de ce petit outil... Même Trinity l'utilise, c'est dire !

Trinity et son portable