Настройка ProFTPd с авторизацией MySQL
Настраиваем ProFTPd на хранение пользователей в базе данных MySQL.
По мотивам http://www.opennet.ru/base/net/virtual_proftpd_2.txt.html
Настройку анонимного доступа я делать не стал т.к. мне это не нужно. Для начала создадим базу данных ftp и пользователя MySql – proftpd.
mysql -u root -p
create database ftp;
GRANT SELECT, INSERT, UPDATE, DELETE ON ftp.* TO 'proftpd'@'localhost' IDENTIFIED BY 'password';
GRANT SELECT, INSERT, UPDATE, DELETE ON ftp.* TO 'proftpd'@'localhost.localdomain' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
quit;
Замените слово «password» на что нибудь свое – это будет пароль для доступа пользователя к базе.
Скачайте дамп базы данных и в командной строке введите:
mysql –u root –p < tables.sql
Этим самым мы создали все необходимые для работы таблицы в базе данных "ftp".
Далее сделаем резервные копии конфигурационных файлов:
cp /etc/proftpd/proftpd.conf /etc/proftpd/proftpd.conf.old
cp /etc/proftpd/sql.conf /etc/proftpd/sql.conf.old
Открываем файл конфигурации
gedit /etc/proftpd/proftpd.conf
добавляем туда строки
UseReverseDNS off
IdentLookups off
Они убирают тормоза при подключении к фтп по локальной сети.
Изменяем значения
UseIPv6 on # на off
ServerName "bla-bla-bla" # поставьте ваше
найдите и раскомментируйте строку
Include /etc/proftpd/sql.conf
С этим файлом всё - сохраняем и переходим к следующему, а на очереди у нас файл modules.conf
окрываем его в редакторе, находим и раскоментируем строчки
LoadModule mod_sql.c
LoadModule mod_sql_mysql.c
сохраняем и выходим, на очереди самый сложный этап - файл sql.conf
Дабы ничего не пропустить, предлагаю его скачать. Открываем скачанный файл и меняем в строке
SQLConnectInfo ftp@localhost proftpd password
слово "password" на то, что вы ввели ранее при создании пользователя базы ftp.
Далее делаем рестарт:
service proftpd restart
смотрим на что ругается, и при необходимости исправляем ошибки.
Теперь можно редактировать базу - создать пользователей и, при необходимости, ввести квоты.

Не плохо бы для полной красоты еще и занести хотя бы одного пользователя)