Показать полную графическую версию : proftpd + ftpasswd
Здравствуйте уважаемые участники дискуссии.
Задумал я в ProFTPd (версия 1.3.3e установлен на FreeBSD 8.2) настроить виртуальных пользователей. Нашел статью в Интернете, которая описывает создание таких пользователей, в частности добавил в файл proftpd.conf такие строки:
AuthUserFile /etc/ftpd.passwd
по этому пути создал указанный файл.
потом создал директорию:
#mkdir /data/ftpdata/
#chown -R ftpsecure:ftpsecure /data/ftpdata (ftpsecure это пользователь и группа для запуска ProFTPd в непривелигированном режиме)
и поместил в нее файл .ftpaccess со следующим содержанием:
<Limit READ WRITE DIRS>
Order deny,allow
Allowuser test
</Limit>
Далее следуя примеру из статьи я попытался выполнить такую команду (примечание: 1002 1002 это соответственно UID пользователя/ GID группы ftpsecure:ftpsecure для запуска ProFTPd в непривелигированном режиме)
#ftpasswd --passwd --file=/etc/ftpd.passwd --name=test --shell=/bin/false --home=/data/ftpdata --uid=1002 --gid=1002
при выполнении этой команды система ругается матом:
ftpasswd: command not found
Помогите пожалуйста разобраться что я делаю не так?
И еще я хотел бы спросить - можно ли организовать работу сервера с системными пользователями? Можно ли для каждого пользователя назначить одну домашнюю директорию в этом случае? Устанавливать права нужно с помощью директив в .ftpaccess и не использовать шелл? И как выполнять резервное копирование/перенос системных пользователей на другой сервер?
Кстати сейчас разбирался с файлом .ftpaccess заходил через WinSCP (FTP), этот файл там виден! Какая же это безопасность если любой пользователь сможет прочитать содержимое этого файла?
Молчите? Слов нет? Я так и думал. Ни в одной статье, ни в одном мануале нормально не сказано как работать с ProFTPd. "Крутые программисты" не удосужатся даже написать нормальные мануалы. То что файл .ftpaccess виден в директории куда заходит пользователь это вообще здорово, что тут еще сказать. Гордые фанатики UNIX систем презрительно относятся к новичкам, бросая пренебрежительно"кури мануалы". Я уже столько их накурился что голова болит. Но так и не выяснил как нормально организовать работу с пользователями в ProFTPd, остальное я уже понял (в том числе как раздавать права системным пользователям). Одно чудо пишет, что нужно для создания виртуальных пользователей использовать ftpasswd. Я обшарил всю систему - не нашел такого файла а следовательно и команда эта не выполняется. И все упорно пишут, пишут, копируют друг у друга, исправляют на свой лад, а толку нету и никогда не будет. Потому - что бесплатное ПО, про которое вопят красноглазики это куча потерянных нервов и времени.
Молчите? Слов нет? »
Много ли сюда человек заглянуло между 09:38 и 12:38? Много ли из них занимаются ftp-серверами?
Теперь к делу.
Вот неплохая статья, я когда-то по ней настраивал работу с многими пользователями
http://dng.kiev.ua/node/15
использовать ftpasswd. Я обшарил всю систему - не нашел такого файла а следовательно и команда эта не выполняется. »
Не из под рута действительно не виден. Под рутом эта команда доступна (в том числи и дополняется по tab). Сия утилита есть файл /usr/sbin/ftpasswd
Не из под рута действительно не виден. Под рутом эта команда доступна (в том числи и дополняется по tab). Сия утилита есть файл /usr/sbin/ftpasswd »
Тащемта это сторонний перловый скрипт, не входящий в состав собственно ProFTPd. Он тут http://www.castaglia.org/proftpd/#ContribTools
Спасибо Вам огромное ребята, разобрался. И даже получилось так как мне надо! Это так здорово, даже русские буквы отображаются в FTP! Осталось еще прикрутить шифрование SSL, ClamAv и решить маленькую проблему (в этот раз она действительно маленькая) Вот мой пример формирования FTP директорий (естественно временный, у меня не совсем еще мозги набекрень съехали чтобы назначать папке /data/ftpdata/ на работающем сервере группу wheel!):
<directory /data/ftpdata>
<limit READ DIRS>
Order allow,deny
AllowGroup wheel
DenyAll
</limit>
<limit WRITE>
DenyAll
</limit>
</directory>
<directory /data/ftpdata/folder1>
<limit READ DIRS>
Order allow,deny
AllowUser Pavel
DenyAll
</limit>
<limit WRITE>
DenyAll
</limit>
</directory>
<directory /data/ftpdata/folder2>
<limit READ DIRS>
Order allow,deny
AllowUser Pavel
DenyAll
</limit>
<limit WRITE>
DenyAll
</limit>
</directory>
но есть еще две проблемы - одна маленькая другая достаточно серьезная - дело в том, что на сервере предполагается выкладывать Документы в *.PDF, *.doc, *.docx (особенно в PDF)
В папке FTP все нормально отображается (например Витамины.doc) но при попытке скачивания через браузер говорит
550 /Folder1/кракозябры вместо русского названия (ну с этим я разберусь) Forbidden command argument
Но когда я попробовал скачать через проводник, все это открывается в Internet Explorer пишет что не может найти страницу. А в адресной строке..... Отображается имя пользователя и незашифрованный пароль (караул!)!!!
res://ieframe.dll/dnserrordiagoff.htm#ftp://Pavel:(здесь незашифрованный пароль!!!)@195.19.1XX.XXX/folder1/%C2%E8%F2%E0%EC%E8%ED%FB.doc
Причем самое удивительное что название документа шифруется!!! Что это - баг со стороны мелкософта или мне нужно срочно прикручивать SLL шифрование к ProFTPD? А то ведь незашифрованный пароль ясное дело это не есть хорошо. Социальная инженерия рулит.
Причем архивы скачиваются нормально. Как мне сделать так, чтобы скачивались документы с вышеуказанными расширениями? Не есть выход складывать по одному документу в архив.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.