Gentoo: ftp-сервер Pure-FTPd

Достаточно интересная вещь, мне очень понравился, лёгок в настройке и при этом поддерживает различные виды аутентификации

Установить как всегда просто
korp # emerge pure-ftpd

Добавляем в автозагрузку
korp # rc-update add pure-ftpd default

Запускаем
korp # /etc/init.d/pure-ftpd start

Дальше переходим к файлу настроек
korp # nano /etc/conf.d/pure-ftpd

Первым делом нам нужно изменить

IS_CONFIGURED="yes"

Далее нам необходимо заполнить директиву MISC_OTHER (полное описание всех ключей смотрите в руководстве)

Я использую следующие ключи:
-E (Только дляпользователей, прошедших проверку, -e для анонимного доступа.)
-j (Если домашний каталог пользователя не существует, автоматически создавать
его.)
-L : (В качестве защиты, Pure-FTPd не выводит по команде ls более 10000 файлов, в при рекурсивной ls -R -не глубже 5 директорий.)
-m (Не допускать скачку для анонимов, если нагрузка выше указанного уровня.)
-R (Запрещает пользователям выполнение команды chmod, права может изменить только root.)
-y : (Данная функция работает, если Pure-FTPd собран с флагом peruserlimits.)
-Z (Предоствращает перекрытие доступа к файлам самому себе, при неудачном использовании команды chmod.)

Теперь что касается работы Pure-FTPd с MySQL. Во-первых Pure-FTPd должен быть собран с флагом mysql.
Теперь нам необходимо скачать web-интерфейс для работы с пользователями и базой (Для этого у нас естественно должна быть установлена связка Apache+PHP+MySQL).
korp # cd /var/www/localhost/htdocs/
korp # wget http://machiel.generaal.net/files/pureftpd/ftp_v2.1.tar.gz
korp # tar xzf ftp_v2.1.tar.gz
А так же добавим русский язык
korp # cd ftp/language/
korp # wget http://machiel.generaal.net/files/pureftpd/languages/2.x/russian.php.txt
korp # mv russian.php.txt russian.php
http://localhost/ftp/ в вашем любимом браузере, и проходим по шагам не сложную систему инсталяции, которая создаст все необходимые таблицы в БД и создаст конфигурационный файл, который потом нужно будет перенести в /etc/pureftpd-mysql.conf
Далее
korp # nano /etc/conf.d/pure-ftpd

AUTH="-l mysql:/etc/pureftpd-mysql.conf"

После чего необходимо перезапустить сервер
korp # /etc/init.d/pure-ftpd restart

После чего необходимо удалить инсталяционный файл web-интерфейса
korp # rm /var/www/localhost/htdocs/ftp/install.php

Теперь заходим http://localhost/ftp/index.php и настраиваем пользователей и наслаждаемся работой сервера.

UPD в скрипте есть небольшая ошибочка, в файле language/index.php в начале файла после <? нужно дописать php.

Добавить комментарий