Главное меню » Операционная система Debian » vsFTPD — Легкий FTP-сервер с виртуальными пользователями на Debian 8 Jessie

Время чтения: 3 мин.
На этом уроке мы покажем вам, как легко создать FTP-сервер с виртуальными пользователями с помощью демона vsFTP на Debian 8.Сначала необходимо обновить свой Debian VPS:apt-get update && apt-get upgrade
Если у вас нет веб — сервера Apache2 или если вы используете NGINX, то вам придется установить apache2-utils
которая необходима для генерации паролей для пользователей.
apt-get install apache2-utils
Установка службы vsFTPD:
apt-get install vsftpd libpam-pwdfile
Отредактируйте файл конфигурации vsFTPD и раскомментируйте строки ниже. Используйте редактор vim или nano
. Строки, которые не присутствуют в файле конфигурации, укажите внизу.
# vim /etc/vsftpd.conf
listen=YES
listen_ipv6=NO
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
nopriv_user=vsftpd
chroot_local_user=YES
allow_writeable_chroot=yes
guest_username=vsftpd
virtual_use_local_privs=YES
guest_enable=YES
user_sub_token=$USER
local_root=/var/www/$USER
hide_ids=YES
# Исключите это, если вы делаете это руководство на свой собственный сервер
seccomp_sandbox=NO
Далее, мы должны изменить наш файл /etc/pam.d/vsftpd
, чтобы проверить файл пользователей/паролей, которые мы собираемся создать.
Во-первых, создать резервную копию файла, а затем отредактировать существующий:
cp /etc/pam.d/vsftpd{,.bak}
vim /etc/pam.d/vsftpd
Удалите все из файла и добавите эти строки:
auth required pam_pwdfile.so pwdfile /etc/ftpd.passwd
account required pam_permit.so
Создайте главного пользователя, который будет использоваться виртуальными пользователями для проверки подлинности:
useradd --home /home/vsftpd --gid nogroup -m --shell /bin/false vsftpd
Как только это будет сделано, мы можем создать файл пользователей/паролей.
Примечание: пароли, используемые этим способом может быть до 8 символов. Если вы хотите прочитать vsFTPD c надежными паролями, вы можете поискать другой модуль pam.
htpasswd -cd /etc/ftpd.passwd andreyextest1
Добавьте другого пользователя и добавьте его в файл ftpd.passwd, флаг -c
здесь опущен.
htpasswd -d /etc/ftpd.passwd andreyextest2
Затем добавьте каталоги для пользователей, так как vsFTPD не будет создавать их автоматически.
## Для andreyextest1
mkdir /var/www/andreyextest1
chown vsftpd:nogroup /var/www/andreyextest1
chmod +w /var/www/andreyextest1
## Для andreyextest2
mkdir /var/www/andreyextest2
chown vsftpd:nogroup /var/www/andreyextest2
chmod +w /var/www/andreyextest2
И, наконец, запустите демон vsFTPD и установите его на автоматический запуск при загрузке системы.
systemctl start vsftpd && systemctl enable vsftpd
Проверьте состояние, чтобы убедиться, что запущена служба:
# systemctl status vsftpd
● vsftpd.service - vsftpd FTP server
Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled)
Active: active (running) since Sat 2016-12-03 11:07:30 CST; 23min ago
Main PID: 5316 (vsftpd)
CGroup: /system.slice/vsftpd.service
├─5316 /usr/sbin/vsftpd /etc/vsftpd.conf
├─5455 /usr/sbin/vsftpd /etc/vsftpd.conf
└─5457 /usr/sbin/vsftpd /etc/vsftpd.conf
Проверьте свои настройки
Используйте FileZilla, WinSCP или любой другой FTP-клиент для входа в систему VPS, используя имя пользователя и пароль, которые вы создали ранее. Создайте тестовый каталог и тестовый файл от клиентов.
Проверка сервера, что файлы успешно созданы:
ls -l /var/www/andreyextest1
ls -l /var/www/andreyextest2

Просмотров поста: 94
Редактор: AndreyEx
Если статья понравилась, то поделитесь ей в социальных сетях: