Если у Вас уже установлен сервис vsftpd, то переходим сразу к пункту 2, иначе по порядку:
1. В дистрибутиве Debian, выполняем команду: apt-get install vsftpd
Все операции по его скачиванию и установке занимают около 1-3 минут, на вопрос установщика необходимо ответить «y».
2. Находим конфигурационный файл данного сервиса, он лежит в /etc/vsftpd.conf, редактируем его либо nano, либо встроенным в midnight commander редактором.
nano /etc/vsftpd.conf
Далее проверяем некоторые настройки описанные в нем:
— устанавливаем запрет на подключение анонимных пользователей, находим опцию «anonymous_enable» и прописываем ей значений «NO«.
— снимаем комментарий с опции «local_enable» и «write_enable«. (первая опция разрешает использовать для входа на сервер логин и пароль пользователям, которые зарегистрированы в системе/вторая разрешает пользователям выполнять любые FTP-команды записи)
— находим «chroot_local_user«, если этой надстройке установлено значение «Yes» (скорее всего стоит по умолчанию), все системные пользователи будут находиться в пределах chroot директории и не смогут получить доступ к другим директориям сервера.
Сохраняем все изменения, которые сделали. Для nano: жмем ctr+o -> Enter(сохраняем) -> ctrl+x(закрываем). Для midnight commander-а — жмем F2(сохраняем) затем F10(выход).
3. Когда все подготовили, создаем пользователя который будет пользоваться FTP: (заранее оговорюсь, что имя пользователя может быть любым, не обязательно писать user, как в данном примере! это пример!)
— выполняем в терминале команду adduser user
— далее утилита по созданию нового пользователя задаст Вам несколько вопросов, на которые вы введете ответы с клавиатуры (просьба заполнить побочные поля в роде номера телефона и пр. можно игнорировать и просто нажимать Enter), и в конце при сохранении пишем «yes»
— теперь добавим вновь созданного пользователя в группу ftpusers (название группы может быть любым другим, придуманным Вами самими, в данном случае — это пример!)
groupadd ftpusers
usermod -G ftpusers user
в директории /home уже создалась одноименная папка пользователя.
— сделаем в этой папке еще две папки для файлов и для логов.
mkdir /home/user/www
mkdir /home/user/logs
— далее сменим владельца данных папок т.к. текущие операции мы производили из под пользователя с root правами, соотв. и атрибуты назначились как для root
chown user:ftpusers /home/user/www
chown user:ftpusers /home/user/logs
chmod 555 /home/user
4. Перезапускаем наш сервис командой
service vsftpd restart
5. Пробуем подключаться с помощью FTP клиента (FileZilla,Winscp,Explorer) по ip-адресу или доменному имени хоста на котором производили данные действия, введя логин созданного пользователя и его пароль. После входа будут доступны созданные ранее папки.