Logo

Простая настройка vsftp

В этой статье рассмотрим простую настройку vsftp сервера. Разрешим заливать локальным пользователям заливать файлы. Чтобы пользователи не выходили за пределы домашнего каталога включим chroot окружение. А так же разрешим анонимным пользователям скачивать файлы из папки /var/ftp.
Настройка производилась на ubuntu server 12.04 но с других дистрибутивах она почти не отличается.

Устанавливаем пакет

apt-get install vsftpd

Редактируем файл /etc/vsftpd.conf

listen=YES
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
anon_root=/var/ftp

Чтобы предоставить доступ пользователям без shell доступа, отредактируем /etc/shells, добавив в список оболочку

/bin/false

Добавим пользователя со своим домашним каталогом и зададим пароль

useradd username -d /home/username -m -U -s /bin/false
passwd username

перезапускаем демона

service vsftpd restart

Если при попытке подключения возникает ошибка:

Ответ:    500 OOPS: vsftpd: refusing to run with writable root inside chroot()

То в версии 2.3.5 Крис Эванс (Chris Evans) ужесточил политику безопасности для предотвращения эксплуатации потенциальной уязвимости, которая есть в старых версиях библиотеки glibc. В итоге он запретил chroot() в каталог, в котором разрешена запись пользователю. Источник

Поэтому нужно изменить права на домашний каталог локального пользователя

sudo chmod a-w /home/username

Теперь можно подключаться любым ftp клиентом например рекомендую filezilla.

На этом экспресс настройка законченна.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *