Refusing to run with writable root inside chroot()?

Refusing to run with writable root inside chroot()? Техника

500 OOPS: vsftpd: refusing to run with writable root inside chroot()

500 OOPS: vsftpd: refusing to run with writable root inside chroot()
Ошибка: Critical error: Невозможно подключиться к серверу

в этом же гайде написано,

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

Ответ: 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
Ошибка: Critical error: Невозможно подключиться к серверу

Т.е. изначально следующие права на домашнюю папку:

drwxrwxr-x 3 backupserver backupserver 4096 окт. 8 16:25 backupserver

А при выполнении этой команды стало:

dr-xr-xr-x 3 backupserver backupserver 4096 окт. 8 16:25 backupserver

Ответ: 553 Could not create file.
Ошибка: Критическая ошибка при передаче файлов

При использовании новой версии сервера FTP vsftpd (2.3.5 и выше) при соединении с сервером в ряде случаев возникает ошибка — 500 OOPS: vsftpd: refusing to run with writable root inside chroot()

Refusing to run with writable root inside chroot()?

Оказывается, разработчик vsftpd Крис Эванс решил поднять безопасность системы с vsftpd и запретил подключения пользователям с возможностью записи в корневой каталог подключения.

Т.е. права записи у пользователя должны быть в поддиректории, иначе выдавать ошибку — 500 OOPS..

Возможно такие изменения и нужны, но хотелось бы чтобы можно было регулировать поведение из файла конфигурации, но это Very Secure FTP Daemon.

Решения данной проблемы есть:

1. Самое правильное — это убрать права на запись в корень подключения и сделать подкаталог, на который поставить нужные права.;

6. Самый простой способ, создаем пользователя как обычно, разрешаем запись в корневой каталог, меняем в файле /etc/passwd домашний каталог пользователя — добавляем в него путь с точкой. И добавляем в vsftpd.conf строку

Пример решения номер 6 строка из /etc/passwd:

После этого пользователь aero_ftp сможет коннектиться и ошибки 500 OOPS vsftpd не будет.

Дополнительно:  Root video player

I want to setup a anonymous only ftp server (able to upload files). Here is my config file:

But when i try to connect it:

Refusing to run with writable root inside chroot()?

3 gold badges21 silver badges42 bronze badges

asked Apr 19, 2013 at 10:56

either do the both other answers (downgrading, or reducing security by disabling the check)

Another option would be to actually fix the issue by having correct permissions for the root chroot folder.

Qouting a nice blogpost, which Marek already linked

So fixing it would require you to:

Change the write permissions of the chrooted home root

answered Aug 5, 2015 at 8:27

4 gold badges27 silver badges37 bronze badges

answered Apr 19, 2013 at 11:16

Your write enable is set to YESr instead of YES also try adding

Usually this helps

sudo add-apt-repository ppa:thefrontiergroup/vsftpd
sudo apt-get update
sudo apt-get install vsftpd

answered Dec 29, 2016 at 9:42

5 silver badges21 bronze badges

Try either allow_writeable_chroot=YES
or allow_writable_chroot=YES
in your config,

if that doesn’t work, downgrade.

answered Jul 5, 2015 at 21:28

Refusing to run with writable root inside chroot()?

and comment out

answered May 13, 2017 at 21:03

Date November 2nd, 2012 Author Vitaly Agapov

Мы ведь не дети и отлично понимаем, что сила современной философии не в силлогизмах, а в авиационной поддержке.

Виктор Пелевин «S.N.U.F.F.»

Предыстория такова, что разработчики vsftpd (точнее её единственный разработчик под названием Крис Эванс) здраво рассудили, что ради безопасности надо бы запретить пользователям запись в корень своего chroot’а. То есть если пользователь по ftp chroot’ится в свою домашнюю директорию, то не пускать его в том случае, если у него есть права на запись в неё (можно писать только в поддиректории). Сказано-сделано. Выкатили версию 2.3.5 с этим изменением, а майнтайнеры репозиториев Ubuntu взяли, да и собрали эту версию в репы для 12.04 LTS. Оказалось, что после обновления у многих людей (у тех 99,9999% людей, которые не читают changelog’и) вдруг сломался доступ по ftp. И это при том, что не у всех ситуация позволяет просто так взять и отобрать права на запись в домашние директории. В общем всё это привело к тому, что на бедного Криса со всех уголков интернета полились ушаты говна, отчего он запилил версию vsftpd 3.0, куда добавил опцию конфига allow_writeable_chroot, возвращающую старое-доброе небезопасное поведение. Запилить-то запилил, но майнтайнеры Убунты заявлили, что собирать эту версию для своей 12.04 уже не будут и просто умыли руки.

Дополнительно:  Как подделать синий экран смерти - gadgetshelp,com

В общем, решайте проблемы как хотите.

А решать проблемы можно несколькими простыми способами.

Можно скомпилировать и старые версии до 2.3.5. Решение прямое и простое, но не ubuntu-way.

2. Секьюрный способ для ненастоящих джедаев – это сдаться и просто отобрать права на запись в домашние директории тем пользователям, которые ходят по ftp:

3. Третий способ – это воспользоваться расширенной сборкой vsftpd-ext, которую поддерживает наш соотечественник по имени Дмитрий. Ей в конфиге тоже можно указать опцию, возвращающую старое поведение. Только выглядит эта опция чуть по-другому:

4. Четвёртый хороший способ – это воспользоваться трудами доброго человека, который создал PPA на launchpad’e, куда положил собственную сборку vsftpd 2.3.5, в которую бэкпортнул опцию allow_writeable_chroot. Поставить отсюда сборку можно так:

Два других способа я не проверял, но встречал их на просторах сети. Впрочем, они всё равно мне не сильно нравятся.

5. Пятый способ – это добавить опцию local_root=/home в конфиге. Тогда chroot будет в директорию /home, а пользователь, перейдя в свой хомяк, сможет туда складывать файлы.

В общем, есть из чего выбрать.

#location of private key file
rsa_private_key_file=/etc/ssl/private/vsftpd.pem

#flesh out configuration file
#require_ssl_reuse=NO
#ssl_ciphers=HIGH

How to Repair

For good measure, be sure to restart vsftpd:

Comments

Trying to resolving errors like this can be frustrating at best. Liquid Web support has the knowledge and experience needed to address these issues quickly and reliably.

Should you run into an issue which requires our assistance, do not hesitate to give us a call at 800.580.4985, or open a chat or ticket with us.

We are standing by to help!

Оцените статью
Master Hi-technology
Добавить комментарий