PowerScale OneFS: Fout ontvangen na upgrade "500 OOPS: Vsftpd: Weigert te rennen met beschrijfbare wortel in chroot"
Summary: Wanneer de FTP-gebruiker na een upgrade of patch verbinding maakt met een PowerScale FTP-server, mislukt deze met de foutmelding "500 OOPS: Vsftpd: Weigeren om te rennen met beschrijfbare wortel in chroot()." ...
Symptoms
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
Cause
Het probleem doet zich voor na het upgraden van OneFS naar een versie met vsftpd:
- 8.2.2_GA-RUP_2023-06 en later
- 9.1.0.29 en hoger
- 9.2.1.23 en hoger
- 9.4.0.14 en hoger
- 9.5.0.4 en hoger
- 9.6.0.0 en hoger
Zo heeft de vsftpd PKG is bijgewerkt vanaf vsftpd-ssl-2.3.4vsftpd-ssl-3.0.5.
Meer details zijn te vinden op de vsftpd Officiële homepage op 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.
Het probleem is dat de hoofdmap van de FTP-gebruiker beschrijfbaar is. De chroot limiet wordt gebruikt, wat niet is toegestaan in de recente update. De chroot Directory waarin gebruikers zijn vergrendeld, mag niet beschrijfbaar zijn.
Resolution
Er zijn twee manieren om dit probleem op te lossen:
- Optie 1: Verwijder schrijfmachtigingen voor de hoofdmap van de gebruiker.
chroot map:
#chmod a-w /home/user
- Optie 2: Omzeil de sterkere controles door de onderstaande configuratie-instellingen toe te voegen aan het
vsftpdAlgemeen configuratiebestand of configuratiebestand voor individuele gebruikers:
allow_writeable_chroot=YES
Op het OneFS cluster is het raadzaam om een kopie te maken van de
vsftpd configuratie naar /ifs/data/Isilon_Support/. Bijvoorbeeld:
# cp -av /etc/mcp/templates/vsftpd.conf /ifs/data/Isilon_Support/vsftpd.conf.bakVoeg vervolgens met behulp van de VI-editor de volgende regel toe aan
/etc/mcp/templates/vsftpd.conf "
allow_writeable_chroot=YES"
Een andere optie in plaats van de VI-editor te gebruiken, is om het echo-commando te gebruiken om een regel aan hetzelfde bestand toe te voegen:
# echo "allow_writeable_chroot=YES" >> /etc/mcp/templates/vsftpd.conf
Wacht een paar seconden en controleer vervolgens of het bestand wordt bijgewerkt naar alle knooppunten en of de md5-checksum van het bestand consistent is.
# isi_for_array -s md5 /etc/mcp/templates/vsftpd.conf
Hier is een korte weergave van het probleem en de stappen om het op te lossen:
-
Meld u aan bij een PowerScale cluster waarop OneFS 9.4.0.14 wordt uitgevoerd. Hieronder vindt u de startdirectory van de FTP-gebruiker:
test2-fxq5rm3-1# ls -ld /ifs/home/warmsvcisiftp
drwx------ 2 warmsvcisiftp Isilon Users 264 Jun 13 02:50 /ifs/home/warmsvcisiftp
-
Aanmelden bij FTP-gebruiker mislukt met de foutmelding:
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:
- Optie 1: Verwijder de schrijfrechten voor de hoofdmap van de gebruiker:
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.
- Optie 2: Omzeilen van de veiligheidscontrole:
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.