При обновлении vsftpd возникла проблема с подключением к серверу по FTP, стала выдаваться следующая ошибка:
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
Проблема связана с тем, что с версии 2.3.5 root-директория не должна быть доступна для записи.
В сети есть следующие советы:
- Задать корневую директорию в параметре
local_root=
конфигурационного файла/etc/vsftpd.conf
. - В том же конфигурационном файле включить опцию
passwd_chroot_enable=yes
и в файле/etc/passwd
изменить домашнюю директорию пользователя с/home/user
на/home/./user
. - Согласно официальному FAQ для версии 2.3.5 выставить значение
allow_writable_root=yes
, для версии 3.0.0 значениеallow_writeable_chroot=yes
.
Я поступил просто — откатился до версии 2.3.2. Скачать версию для amd64 можно так:
wget http://ftp.br.debian.org/debian/pool/main/v/vsftpd/vsftpd_2.3.2-3+squeeze2_amd64.deb
Для i386 так:
wget http://ftp.br.debian.org/debian/pool/main/v/vsftpd/vsftpd_2.3.2-3+squeeze2_i386.deb
Установить так:
dpkg --install vsftpd_2.3.2-3+squeeze2_amd64.deb
или
dpkg --install vsftpd_2.3.2-3+squeeze2_i386.deb
соответственно.
Далее перезапускаем sftpd:
sudo /etc/init.d/sftpd restart