Установка и настройка vsftpd
- 17-04-2012, 18:41 - greenlogles
- Просмотров: 35
- Комментариев: 0
- Linux
Небольшая заметка как установить и настроить vsftpd демон. Поехали.
Поставлена задача: выдать доступ по ftp к определенному каталогу, авторизация по login/password.
Все операции производятся от пользователя root. Устанавливаем стандартным образом:
apt-get install vsftpd
Файл настроек находится /etc/vsftpd.conf Для решения поставленной задачи был написан следующий конфиг:
#config vsftpd
listen=YES
# Вход для зарегистрированных в системе пользователей
local_enable=YES
#chroot_local_user=YES
# включить список пользователей, которым заблокирован выход выше домашнего каталога
chroot_list_enable=YES
# в следующем файле указываются пользователи, которые запиратся в домашнем каталоге
chroot_list_file=/etc/vsftpd.chroot_list
# проверка на наличие шелла пользователя (из /etc/passwd) в файле /etc/shells
check_shell=NO
# разрешить закачку файлов
write_enable=YES
# включение логирования uploads/downloads файлов
xferlog_enable=YES
# использовать порт 20 для передачи данных
connect_from_port_20=YES
# изменение владельца закачанных файлов на указанного нижу
chown_uploads=YES
chown_username=nobody
# закрыть доступ к файлам, подходящим под следующий шаблон
deny_file={mod_order.*,configuration.php}
# и некоторые другие стандартные записи, которые в данном случае не важны
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
Далее добавляем нужного нам пользователя:
adduser -s /sbin/nologin -d /home/pub/www.user abc
где /sbin/nologin - запрет на использование ssh, /home/pub/www.user - домашний каталог пользователя, abc - имя пользователя Пароль можно задать командой
passwd abc
с последующим его вводом.
Как оказалось, на некоторых системах неправильно работает ключ check_shell=NO. Нашел решение - внести в конец файла /etc/shellsстроку
/sbin/nologin
Перезагружаем vsftpd:
/etc/init.d/vsftpd restart
и проверяем проверяем работу сервиса.
Приложение: Файл /etc/vsftpd.chroot_list содержит список пользователей, которые запираются в домашнем каталоге.