ProFTPD и анонимный upload

Полезные советы и программы от пользователей нашего форума.

Модератор: Модераторы разделов

Аватара пользователя
Dr. Agon Smith
Сообщения: 9
ОС: MacOS X, OpenBSD

ProFTPD и анонимный upload

Сообщение Dr. Agon Smith »

Всем доброго времени суток.
Вообщем тут стал ребром один вопрос. Имеется ProFTPD на котором есть upload каталог. В этот каталог валят все кому не лень и иногда бывает тяжело там разобраться и понять что от кого пришло. Так вот - появилась идея: сделать так чтобы ProFTPD в каталоге /upload/ создавал каталог с ip пользователя при его первом подключении (/upload/<ip>/), а пользователь когда делает cd /upload/ на самом деле попадал бы в /upload/<ip> , но не подозревая об этом. Те для пользователя путь "/upload/"=="/upload/<ip>". И в другие каталоги в реальном /upload он попасть не может и вообще их не видит.

Во как! ;) Подскажите пожалуйста можно ли это сделать стандартными средствами или прийдется свой модуль для ProFTPD писать?
Спасибо сказали:

Аватара пользователя
brandy
Сообщения: 41
ОС: Gentoo

Re: ProFTPD и анонимный upload

Сообщение brandy »

Если не лень прописывать настройки для каждого IP-адреса, т.е. если их не так много, то можно использовать модуль mod_ifsession - http://www.castaglia.org/proftpd/modules/mod_ifsession.html
С ним все это реально сделать.
Спасибо сказали:

Аватара пользователя
Dr. Agon Smith
Сообщения: 9
ОС: MacOS X, OpenBSD

Re: ProFTPD и анонимный upload

Сообщение Dr. Agon Smith »

brandy писал(а):
29.12.2006 10:10
Если не лень прописывать настройки для каждого IP-адреса, т.е. если их не так много,

в том то и проблема что их довольно много и не известно точно сколько и кто.
Спасибо сказали:

Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: ProFTPD и анонимный upload

Сообщение KiWi »

Типа ап с решением.
Модуль написан: http://ifl.l1557.ru/static/mod_upload.c
Конфигурится через UploadDir в конфиге.
Критика приветствуется.

P.S.: можно даже перенести в проекты форума, наверно. :D
Спасибо сказали:

Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: ProFTPD и анонимный upload

Сообщение KiWi »

Вот, меня услышали.

Пишу подробности.
Компиляется как и любой другой модуль для proftpd:
1. Копируем его в contrib/
2. В ./configure добавляем --with-modules=mod_upload

Настройка у модуля одна -- UploadDir.
Параметр -- имя директории(относительно / ftp), в которой и будет производится замена на UploadDir/<ip>.

Каталог UploadDir/<ip> создаётся после успешной команды PASS. Если каталог невозможно создать, то на ftp пускать вроде не должно.

Права на UploadDir надо прописывать отдельно.
Притом, в формате: UploadDir/*/* - чтобы невозможно было удалить диру UploadDir/<ip>.

Список команд, у которых переписываются пути, можно найти в комментариях в начале файла.
Сообщения об ошибках не переписываются.
Также, прошу обратить внимание, что у SITE пути не переписываются. Так что придётся отказаться и от SITE CHMOD.


Планы по дальнейшему развитию:
1. Немного переименовать модуль, ибо его можно использовать не только для upload'а.
2. Разобраться с SITE.
3. Сделать имя создаваемой директории конфигурабельным.
4. <ваше предложение здесь>
5. уже не совсем про proftpd -- написать скрипт/утилиту, чтобы просматривать файлы в 1 директории, а не бегать по всем IP'ам.
Спасибо сказали:

Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: ProFTPD и анонимный upload

Сообщение KiWi »

http://www.opennet.ru/base/net/virtual_proftpd.txt.html

Потихоньку mod_upload вылился в mod_vdir.
Брать лучше непосредственно из http://svn.repos.org.ru/amara/trunk/proftpd/mod_vdir/
Файлы: mod_vdir.c & vdir.patch (обычно -- они работают).

Приблизительные изменения выкладываются на: http://kiwi.l1557.ru/IFL/notes/

Пример конфига -- если кому-нибудь понадобится -- выложу.

P.S.: всё остальное лучше в личку.
Спасибо сказали: