Осваиваю FreeBSD и *nix, поставил на виртуалке FreeBSD 9.
В качестве FTP сервера накатил с портов proftpd.Имитирую для себя тестовую задачу отстроить для компании вебсервер с возможностью удаленного доступа нескольких посторонних людей для поддержки сайтов компании.
На сервере установлены с портов:
Apache
MySQL
PHP
ProFTPd
mc
Корневая папка вебсервера стандартная: /usr/local/www
Внутри ее создал две папки site1 и site2 для будущих тестовых сайтов, назначил в них виртуальные хосты апача и т.п. - в общем, все работает.
Задача - дать двум различным сторонним пользователям возможность полного доступа в эти две папки, каждому в свою. Поясню зачем это нужно. Брат работает в одной достаточно крупной компании, ей принадлежат несколько сайтов. Так вот, поскольку эти сайты создавались в разное время, создавали их на заказ разные люди. В итоге поддерживают их тоже разные люди/организации. Вот для этого и нужно разграничение прав пользователей ftp на разные папки, чтобы они не мешали друг-другу.
Решил исходя из простоты задачи использовать нативную аутентификацию пользователей средствами самой ОС (не исп. RADIUS, хранение пользователей в БД и подобное).
Создал двух новых пользователей через vipw: webadmin1 и webadmin2. Их группа - www, домашние папки у каждого - /usr/local/www/site1 и /usr/local/www/site2 соответственно.
Дал каждому из них права на папки сайтов: drwxr-xr-x webadmin1 www
Слегка поправил дефолтную конфигурацию ftpd, чтобы залочить пользователей ftp внутри их домашних папок:
DefaultRoot ~
После создания пользователей внутри папок сайтов появилась куча стандартных скрытых файлов пользователей, эти файлы я удалил, т.к. удаленный доступ этих пользователей окромя ftp - не предусмотрен.
Вопрос. Правильно ли все сделал ? Просто во всех мануалах описана типовая задача в духе как поднять ftpd, не более. Рассмотрение конкретно моей - почему-то нигде не нашел. Не пинайте сильно, наставьте на путь истинный.