PowerScale OneFS: Fout ontvangen na upgrade "500 OOPS: Vsftpd: Weigert te rennen met beschrijfbare wortel in chroot"
Summary: FTP-gebruikersverbindingen (File Transfer Protocol) met een PowerScale FTP-server mislukken na een upgrade of patch met een "500 OOPS: Vsftpd: Refusing to run with writable root inside chroot()" error message. ...
Symptoms
FTP-aanmelding bij gebruiker mislukt met:
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 informatie is beschikbaar 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
/etc/mcp/templates/vsftpd.conf wordt teruggezet naar de standaardinstelling. Controleer na upgrades of de oplossing opnieuw wordt toegepast om te voorkomen dat het probleem in dit KB-artikel wordt aangetroffen.
- Optie 1: Verwijder schrijfmachtigingen voor de hoofdmap van de gebruiker.
chroot Directory:
#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.bak
Voeg 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 de echo Opdracht om een regel toe te voegen aan datzelfde bestand:
# 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 het bestand md5 checksum 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>
-
Er zijn twee opties om dit probleem aan te pakken, afhankelijk van uw workflow en problemen:
- 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.