ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)
Понедельник, 31 марта, 2025
Сегодня у нас 1 праздник:
Международный День Резервного Копирования (World Backup Day). Пользователи сайта социальных новостей reddit предложили сделать дату 31.03 Международным днём резервного копирования, аргументируя это тем, что никогда заранее нельзя узнать, какие сюрпризы преподнесёт 1.04

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

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

На этом уроке мы покажем вам, как легко создать 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

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

Exit mobile version