PowerScale OneFS. После модернизации «500 OOPS: Vsftpd: Отказывается запускаться с доступным для записи корнем внутри chroot"
Summary: После модернизации или исправления, когда пользователь FTP подключается к FTP-серверу PowerScale, происходит сбой с сообщением об ошибке «500 OOPS: Vsftpd: Отказ запускаться с доступным для записи корнем внутри chroot()." ...
Symptoms
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
Cause
Эта проблема возникала после обновления OneFS до версии, содержащей vsftpd.
- 8.2.2_GA-RUP_2023-06 и более поздние версии
- 9.1.0.29 и более поздние версии
- 9.2.1.23 и более поздние версии
- 9.4.0.14 и более поздние версии
- 9.5.0.4 и более поздние версии
- 9.6.0.0 и более поздние версии
Например, метод vsftpd pkg обновляется с vsftpd-ssl-2.3.4vsftpd-ssl-3.0.5.
Дополнительные сведения см. в vsftpd Официальная домашняя страница на https://security.appspot.com/vsftpd/Changelog.txt
- Add stronger checks for the configuration error of running with a writeable root directory inside a chroot(). This may bite people who carelessly turned on chroot_local_user but such is life. - Add new config setting "allow_writeable_chroot" to help people in a bit of a spot with the v2.3.5 defensive change. Only applies to non-anonymous.
Проблема заключается в том, что корневой каталог пользователя FTP доступен для записи. Переменная chroot Используется ограничение, что запрещено в недавнем обновлении. Переменная chroot Каталог, к которому привязаны пользователи, не должен быть доступен для записи.
Resolution
Существует два варианта решения этой проблемы:
- Вариант 1. Удалите разрешения на запись в корневой каталог пользователя.
chroot каталог:
#chmod a-w /home/user
- Вариант 2. Чтобы обойти более строгие проверки, добавьте приведенные ниже параметры конфигурации в
vsftpdФайл глобальной конфигурации или файл конфигурации для отдельного пользователя:
allow_writeable_chroot=YES
В кластере OneFS рекомендуется создать копию
vsftpd Конфигурация на /ifs/data/Isilon_Support/. Пример.
# cp -av /etc/mcp/templates/vsftpd.conf /ifs/data/Isilon_Support/vsftpd.conf.bakЗатем, используя редактор VI, добавьте следующую строку в
/etc/mcp/templates/vsftpd.conf "
allow_writeable_chroot=YES"
Другим вариантом вместо использования редактора VI является использование команды echo для добавления строки к тому же файлу:
# echo "allow_writeable_chroot=YES" >> /etc/mcp/templates/vsftpd.conf
Подождите несколько секунд, затем убедитесь, что файл обновился на всех узлах и что контрольная сумма md5 файла согласуется.
# isi_for_array -s md5 /etc/mcp/templates/vsftpd.conf
Вот краткое воспроизведение проблемы и действий по ее устранению:
-
Войдите в кластер PowerScale под управлением OneFS 9.4.0.14. Ниже приведен домашний каталог пользователя FTP.
test2-fxq5rm3-1# ls -ld /ifs/home/warmsvcisiftp
drwx------ 2 warmsvcisiftp Isilon Users 264 Jun 13 02:50 /ifs/home/warmsvcisiftp
-
Сбой входа пользователя FTP в систему с сообщением об ошибке:
test2-fxq5rm3-1# ftp localhost
Trying 127.0.0.1:21 ...
Connected to localhost.
220-PowerScale OneFS 9.4.0.14
220
Name (localhost:root): warmsvcisiftp
331 Please specify the password.
Password:
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
ftp: Login failed
ftp>
-
There are two options to address this issue depending on your workflow and concerns:
- Вариант 1. Удалите разрешения на запись для корневого каталога пользователя:
test2-fxq5rm3-1# chmod a-w /ifs/home/warmsvcisiftp
test2-fxq5rm3-1# ls -ld /ifs/home/warmsvcisiftp
dr-x------ 2 warmsvcisiftp Isilon Users 264 Jun 13 02:50 /ifs/home/warmsvcisiftp
test2-fxq5rm3-1# ftp localhost
Trying 127.0.0.1:21 ...
Connected to localhost.
220-PowerScale OneFS 9.4.0.14
220
Name (localhost:root): warmsvcisiftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> bye
221 Goodbye.
- Вариант 2. Временное решение проблемы проверки безопасности.
test2-fxq5rm3-1# chmod u+w /ifs/home/warmsvcisiftp
test2-fxq5rm3-1# ls -ld /ifs/home/warmsvcisiftp
drwx------ 2 warmsvcisiftp Isilon Users 264 Jun 13 02:50 /ifs/home/warmsvcisiftp
test2-fxq5rm3-1# echo "allow_writeable_chroot=YES" >> /etc/mcp/templates/vsftpd.conf
test2-fxq5rm3-1# isi_for_array -s md5 /etc/mcp/templates/vsftpd.conf
test2-fxq5rm3-1: MD5 (/etc/mcp/templates/vsftpd.conf) = 4920beaff65c3bfa09bd18582c2fbcf8
test2-fxq5rm3-2: MD5 (/etc/mcp/templates/vsftpd.conf) = 4920beaff65c3bfa09bd18582c2fbcf8
test2-fxq5rm3-3: MD5 (/etc/mcp/templates/vsftpd.conf) = 4920beaff65c3bfa09bd18582c2fbcf8
test2-fxq5rm3-1# ftp localhost
Trying 127.0.0.1:21 ...
Connected to localhost.
220-PowerScale OneFS 9.4.0.14
220
Name (localhost:root): warmsvcisiftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> bye
221 Goodbye. Additional Information
- Статья Dell Isilon. OneFS 8.X и более поздние версии: Как заблокировать (chroot (change root) jail) пользователей FTP в определенном каталоге
- Документация по ArchLinux, Очень безопасный демон FTP