vsFTPd funktioniert nach dem Update nicht mehr

17

Ich habe gerade von Ubuntu Server 11.10 (Oneiric Ocelot) auf Ubuntu 12.04 LTS (Precise Pangolin) aktualisiert.

Es hat meine vsFTPd-Installation aktualisiert, und es scheint, dass sich etwas geändert hat: / Ich verwende die PAM-Authentifizierung. Was könnte sich geändert haben, um dies zu verursachen?

Beim Versuch, eine Verbindung zum FTP-Server herzustellen, wird folgende Fehlermeldung angezeigt:

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

Ich habe versucht, es zu googeln, und es wurde gesagt, dass allow_writable_root=YESes der Konfigurationsdatei hinzugefügt werden soll. Wenn ich dies jedoch versuche und versuche, vsftpd neu zu starten, kann es nicht neu gestartet werden. Warum?

Hier ist, wie ich es tatsächlich behoben habe:

wget http://http.us.debian.org/debian/pool/main/v/vsftpd/vsftpd_3.0.2-3_amd64.deb -O vsftpd.deb
dpkg -i vsftpd.deb
echo "allow_writeable_chroot=YES" >> /etc/vsftpd.conf
service vsftpd reload

Und voila :)

Mr. King
quelle
Der Link, den Sie für den wgetParameter angegeben haben, ist nicht mehr aktiv. Wahrscheinlich, weil die Version 3.0.2-3jetzt raus ist. Jeder, der mit diesem Problem konfrontiert ist, sollte diese Website besuchen , um den richtigen Link zu erhalten. Der oben genannte Link bezieht sich auf eine 64-Bit-Plattform. Um Links für dieses Paket für andere Plattformen, wie zum Beispiel 32-Bit, zu finden, folgen Sie dieser Seite und scrollen Sie nach unten zum Download vsftpdAbschnitt.
Trejder

Antworten:

11

Ich habe auch dieses Problem und denke, es liegt an dem neuen vsFTPd-Update zur Verbesserung der Sicherheit. In der Zwischenzeit verwende ich diese Lösung.

  1. Ich ändere den Ordner, in den mein FTP-Benutzer gelangt, wenn er sich zum ersten Mal anmeldet (Stammordner), indem ich dies im Terminal benutze: sudo chmod a-w /home/user

    Sie können /home/userin den Stammordner Ihres FTP-Benutzers wechseln .

  2. Erstellen Sie einen Unterordner innerhalb des Ordners, entweder über die Benutzeroberfläche oder wenn Sie nur ein Terminal haben: sudo mkdir /home/user/newfolder

Jetzt solltest du dich einloggen und im "newfolder" lesen und schreiben können. Sie können NICHT vom FTP-Client aus mit dem Befehl chmod aw in den Stammordner schreiben. Dies ist der Grund für den Unterordner.

Ich denke, es wird in nicht allzu langer Zeit eine Lösung geben, aber ich hoffe, dass dies in der Zwischenzeit hilft.

kristian
quelle
Das einzige Update, das ich finden kann, ist das Installieren von vsftpd-ext und das Ersetzen von vsftpd, wodurch allow_writable_root verwendet werden kann. Es ist jedoch nur als .tar.gz-Datei verfügbar build: / am ende habe ich gerade ein downgrade auf die alte version von vsftpd erzwungen, die ich früher verwendet habe
Mr. King
Hat für mich gearbeitet. Der Eigentümer des Homedir muss den Ordner erstellen, nicht den Stammordner.
OrangeTux
Ist es nicht ein Chmod Aw, das von den Linux Jedi-Meistern "verboten" wurde? seit wann erteilst du 666 erlaubnis?
9

Jemand hat das Feature allow_writeable_chroot=YESvon Version 3.0.0 auf 2.3.5 zurückportiert (siehe diesen Blogeintrag ).

Führen Sie zur Installation unter Ubuntu 12.04 (Precise Pangolin) die folgenden Befehle als root aus:

add-apt-repository ppa:thefrontiergroup/vsftpd
apt-get update
apt-get install vsftpd
echo allow_writeable_chroot=YES >> /etc/vsftpd.conf

Beachten Sie, dass es allow_writable_chroot=YES in vsftpd-ext eine Option zu geben scheint - beachten Sie das mssing e ! (oder ist das ein Tippfehler im Blog-Post?)

lumbric
quelle
1
+1 - das scheint sicherlich die beste Option zu sein, und danke an The Frontier Group für die Bereitstellung dieser PPA. Benutzer sollten jedoch beachten, dass Sie dadurch von der Piste abgekommen sind. Aufgrund der Art der Funktionsweise ist vsftpd in Bezug auf die Sicherheit ein wenig gefährdet. Sollte in Zukunft eine Sicherheitslücke in vsftpd gefunden werden, sind Benutzer auf den PPA-Eigentümer angewiesen, um sie zu aktualisieren, oder Benutzer müssen eine andere Lösung finden zu jener Zeit. Es ist ratsam, die Mailingliste ubuntu-security-announce zu abonnieren und auf vsftpd-Sicherheitsankündigungen zu achten, wenn Sie diesen Weg gehen.
Robie Basak
Unser DEVOPS-Team hat dieses Paket erstellt - hinterlassen Sie einen Kommentar im Blog-Artikel, wenn Sie individuelle Probleme haben, bei deren Lösung Sie Hilfe benötigen, und sie werden Ihnen weiterhelfen.
mlambie
"beschreibbar" ist ein sehr schönes Wort . "beschreibbar" ist weniger akzeptabel und wird als "alternative Schreibweise von beschreibbar" aufgeführt .
Peter Mortensen
6

vsFTPd 3.0.0 fügt eine Konfigurationsoption hinzu,

allow_writeable_chroot=YES

um das vorherige Verhalten wieder zu aktivieren (Quelle: Fixing 500 OOPS: vsFTPd: Ablehnung der Ausführung mit schreibbarem Root in chroot () , Kommentar von Brian K. White).

Leider ist 3.0.0 noch nicht von Ubuntu gepackt. Führen Sie in der Zwischenzeit ein Downgrade auf eine ältere Version durch. Zum Beispiel verwende ich dieses unter Ubuntu 12.04 (Precise Pangolin): http://packages.ubuntu.com/oneiric-updates/vsftpd

Jakob
quelle
Können Sie Anweisungen zum Installieren des von Ihnen verknüpften Oneiric-Pakets hinzufügen? Sollte ich das Paket manuell herunterladen? Ich nehme an, das Hinzufügen von Oneiric-Updates zu meinen Repositories wird die Dinge ziemlich durcheinander bringen.
Lumbric
0

Eine andere Art, als Benutzer Kristian etwas zu tun: Es hat bei mir funktioniert. Der Benutzername, den ich benutze, ist "john". Ersetzen Sie es durch den gewünschten Benutzernamen.

sudo chmod a-w /home/john - Entfernt die Berechtigung aller Benutzer zum Löschen oder Ändern einer Datei.

sudo mkdir /home/john/ftp - Erstellt einen Ordner mit dem Namen 'ftp' im Home-Verzeichnis von Benutzer 'john'

sudo chown -Rv john.john /home/john/ftp - Ändert den Besitzer des Verzeichnisses in die Gruppe 'john' und den Benutzer 'john'.

OrangeTux
quelle
0

Warum?

Entnommen und angepasst aus meiner eigenen Antwort in Fehler 1065714 .

Um stabile Releases stabil zu halten, werden Aktualisierungen nach der Veröffentlichung nur unter bestimmten Umständen berücksichtigt. Details zum Prozess und zu den erforderlichen Kriterien finden Sie hier: https://wiki.ubuntu.com/StableReleaseUpdates#When

Dies erschwert es Benutzern der LTS-Version, beschreibbare Chroots zu haben, da das vorgelagerte vsftpd-Projekt zum Zeitpunkt der Veröffentlichung von 12.04 beschlossen hatte, diese Funktion nicht zu verwenden. Nachdem 12.04 veröffentlicht wurde und der Fix die oben genannten Kriterien nicht erfüllt, wird sich dies meines Erachtens für 12.04 nicht ändern. Beachten Sie jedoch, dass das Team für stabile Release-Updates die endgültige Entscheidung trifft und ihnen kein Update vorgeschlagen wurde.

Wenn eine neuere Version von vsftpd für Benutzer allgemein verfügbar sein soll, die die Option "allow_writeable_chroot" verwenden möchten, ist das Backports-Repository ein geeigneter Ort dafür. Mit einem Backport können Benutzer, die diese Funktion wünschen, einfach das Backports-Repository hinzufügen und vsftpd von dort aus installieren. Weitere Informationen zu Backports und zum Anfordern von Backports finden Sie hier: https://wiki.ubuntu.com/UbuntuBackports

In der Zwischenzeit hat The Frontier Group freundlicherweise eine PPA bereitgestellt, wie in der Antwort von lumbric beschrieben. Oder Sie können eine der anderen Antworten hier verwenden, die für Sie funktioniert.

Robie Basak
quelle