Установка и настройка FTP сервера VSFTPD на Debian 8 Jessie.
Разберем как установить и настроить FTP-сервер VSFTPD
на на Debian 8 Jessie.
Перед установкой, обновляем систему до актуального состояния:
sudo apt-get update && sudo apt-get upgrade
Установка и настройка
Устанавливаем vsftpd
:
sudo apt-get install vsftpd
Настройка vsftpd
производится через конфигурационный файл /etc/vsftpd.conf
.
Конфигурация FTP-сервера, для работы с анонимными пользователями:
listen=YES anonymous_enable=YES anon_root=/srv/ftp use_localtime=YES connect_from_port_20=YES dirmessage_enable=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd xferlog_enable=YES xferlog_file=/var/log/vsftpd.log
Создаем ftp каталог
который указали в файле конфигурации vsftpd
и задаем права доступа:
mkdir -p /srv/ftp chown nobody:nogroup /srv/ chmod 775 /srv chmod 777 /srv/ftp
Перезапускаем vsftpd
:
sudo /etc/init.d/vsftpd restart
Локальные пользователи
Настройка доступа на FTP-сервер, только для локальных пользователей (чтение/запись):
listen=YES listen_ipv6=NO anonymous_enable=NO local_enable=YES local_root=/srv/ftp write_enable=YES chroot_local_user=YES allow_writeable_chroot=YES dirmessage_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES xferlog_file=/var/log/vsftpd.log log_ftp_protocol=YES dual_log_enable=YES xferlog_std_format=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd hide_ids=YES
Настройка доступа локальных пользователей
Для того чтобы разрешить доступ только указанным локальным пользователям, добавляем строки:
userlist_enable=YES userlist_file=/etc/vsftpd.userlist userlist_deny=YES
Создаем файл и вносим в него пользователей, кому необходим доступ:
sudo touch /etc/vsftpd.userlist
[stextbox id=’info’]ИНФОРМАЦИЯ. Чтобы использовать список пользователей для запрета доступа к FTP-серверу, в директиве userlist_deny
указываем NO
.
Так же можно запретить доступ пользователям используя файл /etc/ftpusers
, он содержит список пользователей, которым запрещен доступ на FTP-сервер, для запрета добавляем пользователей в файл.[/stextbox]
Использование пользовательских настроек
Рассмотрим пример, когда необходимо пользователям установить разные корневые директории:
Jakonda1 - /srv/ftp/jakonda1
Jakonda2 - /srv/ftp/jakonda2
Для реализации задачи, воспользуемся пользовательскими настройками, которые перекрывают параметры конфигурационного файла.
В конфигурационном файле /etc/vsftpd.conf
указываем директиву:
user_config_dir=/etc/vsftpd_users_conf
Создаем директорию, для хранения пользовательских настроек и создаем файлы с именами пользователей:
sudo mkdir /etc/vsftpd_users_conf sudo tocuh /etc/vsftpd_users_conf/jakonda1 sudo tocuh /etc/vsftpd_users_conf/jakonda2
Для пользователя jakonda1
задаем опции:
write_enable=YES local_root=/srv/ftp/jakonda1 chroot_local_user=YES allow_writeable_chroot=YES
Для пользователя jakonda2
задаем опции:
write_enable=YES local_root=/srv/ftp/jakonda2 chroot_local_user=YES allow_writeable_chroot=YES
Теперь при подключении, каждый пользователь будет попадать в свою директорию.
Обсуждение
Нет комментариев.