Устанавливаем ProFTPd и ограничиваем пользователя в каталоге

Устанавливаем ProFTPd

apt-get install proftpd

Выбираем как будет запускаться сервер через inited, вручную или самостоятельно при загрузке системы. Обратите внимание что чисто интуитивно кажется что должно быть наоборот, но это не так.
Пробежимся по основным строкам в конфигурационном файле нашего сервера. Конфиг расположен в /etc/proftpd/proftpd.conf
Имя сервера

ServerName "Debian"

Таймауты (сброс соединения), при отсутствии обмена данными , при остановке, при бездействии

TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200

Порт который слушает наш сервер

Port 21

Максимальное количество соединений

MaxInstances 30

В принципе, сервер вполне работоспособен как говорится из коробки.
Однако как вы заметили нет ни одной записи которая давала бы ссылку на список пользователей которым разрешено цепляться к нашему серверу. А все потому, что к proFTPd вполне себе могут подключатся пользователи системы.
Проверить это легко, попробуйте прямо с компьютера подключится к localhost под своей учетной записью через любой клиент, например Filezilla.
Получилось? Но видите ли, есть один очень большой недостаток, пользователь имеет доступ ко всем каталогам нашего компьютера, а это не очень хорошо, вернее очень плохо.
Для того чтобы пользователь не имел доступ к каталогам мы создадим специального unix пользователя для FTP, а делается это так:

adduser test --home /var/ftp --shell /bin/data

После выполнения команды два раза введите пароль нового пользователя, а дальше просто клацайте Enter, до того момента пока не появится вопрос о том корректны ли введенные данные о пользователе, если есть желание,можете заполнить поля.
Все, наш пользователь добавлен, попробуйте войти от его имени через FTP и вы увидите что пользователь ограничен каталогом /var/ftp.
Но как так получилось? Все очень просто, нам помогли ключи —home и —shell первый задает домашнюю директорию пользователя, а второй оболочку операционной системы указав /bin/no мы не дали пользователю никакой оболочки.
Кстати в созданную нами директорию /var/ftp мы можем добавлять бесконечное число пользователей, только не забудьте сменить ей права. Делается это так

chmod 777 -R /var/ftp

Ключ -R позволяет обойти все каталоги и директории внутри указанного нами пути
Удалить пользователя можно командой

userdel -r test

Ключ -r удаляет и домашнюю директорию пользователя, если вам нужно просто удалить пользователя, опустите этот параметр.

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.