Probleme mit der Konfiguration vom VSFTPD

  • Hey Leute,

    ich habe den vsftpd FTP Server installiert und angefangen zu konfigurieren. Nun gibt es leider 2 Probleme.

    • Wenn ich den Parameter chroot_local_user=YES aus dem Komentar nehme kann ich mich nicht mehr einloggen und es gibt eine Fehlermeldung.
    • Wenn ich über die DynDNS Adresse versuche auf dem Server zu zugreifen wird keine Verbindung aufgebaut.

    Zu 1.: Wenn ich den Parameter aus dem Komentartext nehme bekomme ich im FTP - Client folgende Fehlermeldung:

    Code
    Antwort:	500 OOPS: vsftpd: refusing to run with writable root inside chroot()
    Fehler:	Kritischer Fehler
    Fehler:	Herstellen der Verbindung zum Server fehlgeschlagen


    Zu 2.: Ich habe die Ports 20 und 21 auf dem Router auf die IP des Servers weitergeleitet, damit der Teil zumindest funktioniert. Der Zugriff über den Browser auf den Webserver klappt zumindest per DynDNS Adresse. Gibts da vielleicht ein Stolperstein, den ich übersehen habe?


    Ich habe die Originalkonfigurationsdatei an lediglich 3 Punkten verändert bislang.

    • write_enable=yes
    • local_enable=yes
    • Alle Parameter die Anonymen Usern den Zugriff erlaubt habe ich auskommentiert
    • und die Bannerausgabe

    Vorallem soll normal ein Chance Root vorgenommen werden, also dass das Root Verzeichnis "verbogen" wird und das home Verzeichnis des Benutzers das neue Root Verzeichnis bildet.
    Nur dies passiert bislang leider nicht. Also ich kann quer durch die Verzeichnisse des Servers springen.


    Hab die Portweiterleitung und den Server momentan nicht Aktiv um da keine Probleme zu bekommen.

    Falls weitere Infos fehlen, einfach fragen.


    Michael

    Der Raspberry Pi ist schon ein schönes Spielzeug mit dem man einiges anfangen kann.

    :angel: :wallbash:


  • [*]Wenn ich über die DynDNS Adresse versuche auf dem Server zu zugreifen wird keine Verbindung aufgebaut.
    [/list]
    Zu 2.: Ich habe die Ports 20 und 21 auf dem Router auf die IP des Servers weitergeleitet, damit der Teil zumindest funktioniert.

    ... Also ich kann quer durch die Verzeichnisse des Servers springen.

    D. h. mit der externen IP-Adresse funktioniert es bei dir und die Portweiterleitung für pasv_min_port und pasv_max_port ist auch ok. Versuch mal mit:

    Code
    pasv_addr_resolve=YES
    pasv_address=<DynDNS Adresse>


    in der vsftpd.conf.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p6 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • Habe diese Parameter ergänzt.

    Die DynDns Adresse hab ich mit http://www.adresse.de angegeben. Nur leider kommt nun eine neue Fehlermeldung:

    Code
    Antwort:	227 Entering Passive Mode (176,199,189,26,236,202).
    Befehl:	LIST
    Fehler:	Zeitüberschreitung der Verbindung
    Fehler:	Verzeichnisinhalt konnte nicht empfangen werden

    Und ich komme weder über die IP noch über den DynDNS Account auf dem Server zugreifen.


    Michael

    Der Raspberry Pi ist schon ein schönes Spielzeug mit dem man einiges anfangen kann.

    :angel: :wallbash:

  • Code
    allow_writeable_chroot=YES


    Macht erstmal den Fehler weg,
    mit den Einstellungen

    Code
    chroot_list_enable=YES
    chroot_list_file=/etc/vsftpd.chroot_list

    Ich habe in die Liste meine Benutzer eingetragen, diese kommen dann automatisch in ihr Home-Verzeichnis. Sprich "pi" kommt in "/home/pi" und "root" in "/root"
    Man kann jedoch noch zurück gehen in das Wurzelverzeichnis.
    Entferne ich nun beispielsweise "pi" aus der Liste, so ist dieser gefangen in "/home/pi" und kann keine Ebene höher.

    Hoffe das konnte helfen.

    Mein VSFTPD ist sowohl über IP als auch über DynDNS erreichbar. Dazu hatte ich keine weiteren Einstellungen gemacht außer im Router die Portweiterleitung. Was sagt denn

    Code
    netstat -alpnt

    , auf welchen Ports lauscht der Raspberry denn alles?

    Gruß,
    Nesc

    Einmal editiert, zuletzt von nesc (24. April 2014 um 11:19)

  • Habe beides gemacht. Also beide Zeilen habe ich aus dem Kommentar entfernt. Nur die Zeile "allow_writeable_chroot=YES" ist nicht in der Configdatei vorhanden.

    Dadrüber hinaus existiert die Datei "/etc/vsftpd.chroot_list" nicht. Nach dem erstellen dieser Datei und dem eintragen eines Benutzers kann ich mich ebenfalls nicht drauf anmelden.


    Michael

    Der Raspberry Pi ist schon ein schönes Spielzeug mit dem man einiges anfangen kann.

    :angel: :wallbash:

  • Er sagt die folgendes:

    Code
    Aktive Internetverbindungen (Server und stehende Verbindungen)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      2035/sshd
    tcp        0      0 0.0.0.0:1024            0.0.0.0:*               LISTEN      2070/lighttpd
    tcp        0      0 192.168.0.10:21         37.24.153.212:21087     VERBUNDEN   15953/vsftpd
    tcp        0    404 192.168.0.10:22         192.168.0.14:63915      VERBUNDEN   14599/sshd: pi [pri

    Und der FTP Client gibt folgedes aus:

    Code
    Status:	Nächsten Versuch abwarten...
    Status:	Verbinde mit 192.168.0.10:21...
    Status:	Verbindungsversuch fehlgeschlagen mit "ECONNREFUSED - Connection refused by server".
    Fehler:	Herstellen der Verbindung zum Server fehlgeschlagen


    Michael

    Der Raspberry Pi ist schon ein schönes Spielzeug mit dem man einiges anfangen kann.

    :angel: :wallbash:


  • 3. Alle Parameter die Anonymen Usern den Zugriff erlaubt habe ich auskommentiert

    Wenn du den Anonymen Zugriff verbieten wolltest, ging das leider schief.
    Ich kann mich auf deinen Server als anonymous einloggen.
    Auskommentieren besagt, dass die Standard Konfiguration benutzt werden, was bei Anonymous YES ist. Dieses müsste dann auf NO gesetzt werden, statt auskommentiert werden.

    Falls die angegebene IP nicht von dir ist, entschuldige ich mich ;)

  • ups.

    War nicht geplant.

    Problem beseitigt. Also habs auf NO gesetzt. Werde den Router später mal neustarten, damit ich eine neue IP bekomme.

    Übrigens nach dem ergänzen der Zeile die vorher nicht dran steht kam beim Neustarten folgende Fehlermeldung:

    Code
    Stopping FTP server: No /usr/sbin/vsftpd found running; none killed.
    vsftpd.
    Starting FTP server: vsftpd.


    Michael

    Der Raspberry Pi ist schon ein schönes Spielzeug mit dem man einiges anfangen kann.

    :angel: :wallbash:

    Einmal editiert, zuletzt von RaspiDo (24. April 2014 um 11:54)

  • Nö, Weder per IP noch per DynDNS Account klappt es.

    Folgendes kommt beim client raus:


    Michael

    Der Raspberry Pi ist schon ein schönes Spielzeug mit dem man einiges anfangen kann.

    :angel: :wallbash:

  • Soweit ich weiß gibt es bei dem Fehler:

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


    Zwei möglichkeiten:
    Einmal die Schreibrechte im Root-Verzeichnis des Benutzers entfernen also

    Code
    chmod a-w /home/user

    (Exemplarisch, falls das Rootverzeichnis des Benutzers in /home/user ist)
    oder eben die genannte Zeile hinzufügen. Das mit der Zeile hatte zumindestens damals bei mir geholfen.

    Code
    Verbindungsversuch fehlgeschlagen mit "ECONNREFUSED - Connection refused by server".


    Kommt, wenn entweder der FTP Server nicht richtig läuft (bei netstat -alpnt sollte Port 21 mit LISTEN stehen) oder wenn eine Verbindung über Iptables REJECTED wird.

    Welche Version von VSFTPD ist installiert? Erst ab der Version 3.x gibt es die von mir genannte Option. Alle anderen müssen entweder einen eigenen FTP Benutzer anlegen, die Schreibrechte ändern oder je nach Version einen Patch installieren.

    Gruß,
    Nesc

    ps: Sorry das alles ein wenig kompliziert ist ;)

  • Naja, Raspbmc basiert irgendwo ja noch auf Debian, wo nicht unbedingt die neusten Versionen. Entweder hast du schon die Version 3.0.2 oder immer noch 2.3.5 (je nach Konfiguration, ob stable Pakete installiert werden sollten oder testing)

    Deshalb ja meine Frage welche Version installiert worden ist/installiert ist. Einfach mal in der Konsole vsftpd -version eingeben.

  • Dann bitte die Zeile

    Code
    allow_writable_chroot=YES

    entfernen, da es diese Einstellung nicht in der Version gibt.

    Dann würde ich mich entweder schlau machen, ob es die gepatchte Version ebenfalls für Raspbian gibt (eventuell haben andere hier ebenfalls die gleiche Erfahrung) oder eben mit chmod a-w /root/verzeichnis/des/benutzers die Schreibrechte entziehen.

  • das mit den chmod habe ich gemacht, klappt aber auch nicht.

    soll ich dir vielleicht mal die ganze Config Datei zukommen lassen? Wird aber erst gegen Abend werden.


    Michael

    Der Raspberry Pi ist schon ein schönes Spielzeug mit dem man einiges anfangen kann.

    :angel: :wallbash:

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!