.titleBar { margin-bottom: 5px!important; }

vsftpd

Dieses Thema im Forum "Freetz" wurde erstellt von cCs.WiESEL, 25 Sep. 2008.

  1. cCs.WiESEL

    cCs.WiESEL Neuer User

    Registriert seit:
    25 Sep. 2008
    Beiträge:
    8
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    hallo zusammen,

    ich habe vor kurzem erfolgreich ein freetz-image für meine 3170 kompilieren können. bin auch nicht ganz neu in der linux-welt.

    mein problem ist nun folgendes:
    als ftp-server verwende ich den vsftpd.
    dieser läuft auf wunderbar, ich kann user einrichten und einen usb-stick als homeverzeichnis verwenden.
    die verbindung klappt aber leider nur aus dem lokalen netz heraus und nur im passiven modus.
    ein connect von aussen geht auch (habe die ports 2120 bis 2121 und 7000 bis 7010 als passive-mode-ports weitergeleitet).
    leider gibt der vsftpd an den ftp-client als "passive ip" die lokale ip der fritzbox an, was ja nun von aussen keinen grossen erfolg haben kann.

    nun ist meine frage:
    wie kann ich dem vsftp beibringen die externe ip als passive mode ip zu verwenden, bzw. wie kann ich in den configs einstellen, das der server auch "active mode" unterstützt? wenn ich dies beim ftp-client einstelle, hat es keine wirkung. bei den allgemeinen manuals für vsftp gibt es eine konfigurations-option für "active mode". wie bekomme ich die nun in freetz integriert?

    sorry für den langen text und danke im voraus!
     
  2. RalfFriedl

    RalfFriedl IPPF-Urgestein

    Registriert seit:
    22 Apr. 2007
    Beiträge:
    12,343
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ist Dein FTP-Client hinter einem NAT-Router? dann muß der NAT-Router des Clients aktives FTP unterstützten. Auf Server-Seite ist aktives FTP das einfachste und braucht keine weitere Unterstützung, da in diesem Fall der Server eine ausgehende Verbindung aufbaut.
     
  3. cCs.WiESEL

    cCs.WiESEL Neuer User

    Registriert seit:
    25 Sep. 2008
    Beiträge:
    8
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    hallo und danke für die antwort.

    ja, alle clients mit denen ich getestet habe sind hinter nem nat router.
    und die grosse firewall hier bei mir in der firma unterstützt bestimmt "active ftp".

    meines wissens nach macht der vsftp aber standardmässig nur "passive mode" und man muss ihn erst mittels konfig auch zum "active" bewegen.
    die option heisst "port_enable=yes"...
    gibt es aber in den vorhanden configs von freetz nicht.
    und die config von vsftpd, die unter '/etc/default.vsftpd' liegt, kann ich ja nicht ändern, denn readonly.

    was kann man da bloß machen?
     
  4. RalfFriedl

    RalfFriedl IPPF-Urgestein

    Registriert seit:
    22 Apr. 2007
    Beiträge:
    12,343
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Normalerweise sind in /etc bei den Freetz Paketen nur Links auf Dateien, die verändert werden können. Die Config wird von einem Skript erstellt, für das man auch eine Alternative im RAM (und im Flash gesichert) ablegen kann.

    VSFTPD speziell mit der Box kenne ich aber nicht so genau.
     
  5. cCs.WiESEL

    cCs.WiESEL Neuer User

    Registriert seit:
    25 Sep. 2008
    Beiträge:
    8
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    hmm schade
    dann werde ich es wohl mal mit bftpd versuchen.
    danke trotzdem.
     
  6. McNetic

    McNetic Mitglied

    Registriert seit:
    7 Feb. 2007
    Beiträge:
    672
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Ort:
    Aachen
    Wieso schade, es wurde doch explizit gesagt, daß die Möglichkeit besteht, die Konfiguration manuell anzupassen. Wenn das funktioniert, findet sich aber auch sicher jemand, der das noch in die Konfigurationsseite einbaut.
     
  7. Darkyputz

    Darkyputz Aktives Mitglied

    Registriert seit:
    27 Juli 2005
    Beiträge:
    2,318
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Ort:
    Newton, New Jersey
    hmmm...die config steht ja in /mod/etc/vsftpd.conf und iss damit im ram verfügbar/änderbar...
    kannst ja mal mit
    Code:
    echo "port_enable=yes" >> /mod/etc/vsftpd.conf
    
    das ganze reinfeuern in die config und dann den VSFTPD neu starten...
    Dann sollte es ja testbar sein...
    Sollte es das gewesen sein, kann man das ja noch in den nächsten trunk mit aufnehmen.
     
  8. cCs.WiESEL

    cCs.WiESEL Neuer User

    Registriert seit:
    25 Sep. 2008
    Beiträge:
    8
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    das hört sich gut an.
    lässt sich eintragen.
    wenn ich dann aber den vsftpd über das freetz webinterface neu starte, wird die config wieder auf den alten stand zurückgesetzt und meine einstellung ist flöhten.
     
  9. Darkyputz

    Darkyputz Aktives Mitglied

    Registriert seit:
    27 Juli 2005
    Beiträge:
    2,318
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Ort:
    Newton, New Jersey
    gmpf...das hatte ich nicht bedacht...grmpf...
    also...erstmal
    Code:
    killall vsftpd
    , dann nochmal eintragen
    Code:
    echo "port_enable=yes" >> /mod/etc/vsftpd.conf
    ...und dann
    Code:
    vsftpd
    dann sollte er gekickt und mit neuer Konfig gestartet worden sein...

    verbesert mich wenn ich mich irre...
     
  10. cCs.WiESEL

    cCs.WiESEL Neuer User

    Registriert seit:
    25 Sep. 2008
    Beiträge:
    8
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    danke, also der weg funktioniert.
    aber leider ist es dann immernoch zwangs-passive-mode.
    komische sache.
    werde mir die vsftpd-manuals nochmal genauer angucken.
     
  11. cuma

    cuma Aktives Mitglied

    Registriert seit:
    16 Dez. 2006
    Beiträge:
    2,735
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Eigentlich setzt der FTP-Client den Modus, schau doch dort zuerst mal nach. Ich kann (jedenfalls intern) beide Modi nutzen
     
  12. cCs.WiESEL

    cCs.WiESEL Neuer User

    Registriert seit:
    25 Sep. 2008
    Beiträge:
    8
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    so nun weiss ich mehr:

    "active mode" habe ich nun aktiviert bekommen (mit einem zusätzlichen 'pasv_enable=no'), die verbindung klappt aber dann auch nicht ("500 Illegal PORT command").
    das wird wohl an der firewall (router) liegen, über den ich hier verbunden bin.

    nun habe ich aber den passiven modus zum laufen gebracht.
    und zwar mit angabe der "pasv_address=x.x.x.x".
    leider wird dort kein dns-name (dyndns.org) unterstützt.
    wenn ich die aktuelle, externe ip der fritzbox dort eintrage, funktioniert die verbindung einwandfrei.
    für den alltäglichen betrieb ist das aber offensichtlich keine lösung.
    wird bei "pasv_address" nichts eingetragen, nimmt vsftp die lokale ip (bzw. virtual ip) der fritzbox. das ist natürlich quark.

    leider habe ich keine ahnung wie ich dort immer die aktuelle ip rein bekomme.

    naja, ich werde mal weiter recherchieren...

    vielen dank für eure mühe bis hierher! :)
     
  13. cCs.WiESEL

    cCs.WiESEL Neuer User

    Registriert seit:
    25 Sep. 2008
    Beiträge:
    8
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    ja das stimmt, das lässt sich im client einstellen.
    in der standard-konfiguration von vsftpd ist es aber leider so, dass selbst wenn man im client den aktiven modus wählt, vsftd zum passiven zwingt...
     
  14. cuma

    cuma Aktives Mitglied

    Registriert seit:
    16 Dez. 2006
    Beiträge:
    2,735
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Das stimmt nicht. Jenachdem was ich in Filezilla auswähle wir die Verbindung entsprechend aktiv oder passiv aufgebaut
     
  15. cCs.WiESEL

    cCs.WiESEL Neuer User

    Registriert seit:
    25 Sep. 2008
    Beiträge:
    8
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    hmm. also bei mir (verbindung von extern) und mit total commander als client, hat es nichts genützt wenn ich auf aktiv gesetzt habe. nach meinen änderungen in der vsftpd config ging es aber dann.
     
  16. cuma

    cuma Aktives Mitglied

    Registriert seit:
    16 Dez. 2006
    Beiträge:
    2,735
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    ..weil du auf passiv gesetzt hast. Aktives ftp benötigt beim Client Portforwarding von 20/tcp. Klappt das bei dem?
     
  17. chres

    chres Neuer User

    Registriert seit:
    18 Aug. 2005
    Beiträge:
    197
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo zusammen,

    ich hab letzte Woche auch angefangen mich mit dem vsftpd zu beschäftigen und habe hier selbstverständlich das selbe Problem. Es funktioniert hier wohl aktuell nur, da der Client nicht hinter NAT sitzt. Evtl. kann man einen reverse DNS lookup auf die DynDNS Adresse machen und die somit erhaltene IP dann in die .conf einfügen. Aber dazu bin ich im Moment leider nicht in der Lage.

    Ein weiteres Problem ist auch, dass wenn man am letzten Port des definierten pasv port-ranges angekommen ist, der vsftpd scheinbar nicht wieder beim ersten port anfängt, sondern erst ein paar Mal in einen timeout rennt und es erst dann wieder auf niedrigeren ports versucht. Ist auch eher suboptimal. Evtl. aber ein generelles Problem von vsftpd? Lässt sich das irgendwie lösen?

    chres
     
  18. Izzy

    Izzy Mitglied

    Registriert seit:
    10 März 2006
    Beiträge:
    254
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    München
    Wenn Ihr eine (Teil-) Lösung erarbeitet habt, könnte die dann bitte jemand in den Wiki Artikel einpflegen? Ich habe derweil vorerst einen Link auf diesen Thread eingefügt, bis Ihr soweit seid. Danke!

    Beste Grüße,
    Izzy.
     
  19. colonia27

    colonia27 Guest

    N'abend zusammen,

    ich push das hier nach etwas über einem Jahr mal in der hoffnung, daß sich Wiki-mäßig da noch was tut.
     
  20. henfri

    henfri Mitglied

    Registriert seit:
    21 Sep. 2005
    Beiträge:
    419
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,

    kann jemand mal den Stand der Dinge zusammenfassen?

    Muss ich Ports mit der AVM-Firewall forwarden, oder erledigt das das Paket automatisch?

    Gruß,
    Hendrik