Problem mit vsftpd

so der pinguin bin ich jetzt auch nicht. bin eher son Maus schubser :p

Code:
/var/media/ftp/uStor11 # sh -x /etc/init.d/rc.vsftpd start
+ DAEMON=vsftpd
+ LOGLINK=/var/log/mod_vsftpd.log
+ . /etc/init.d/modlibrc
+ export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/mod/sbin:/mod/bin:/mod/usr/sbin:/mod/usr/bin
+ export LD_LIBRARY_PATH=/mod/lib:/mod/usr/lib
+ [ -n vsftpd ]
+ [ ! -r /mod/etc/conf/vsftpd.cfg ]
+ . /mod/etc/conf/vsftpd.cfg
+ export VSFTPD_ADD_SETTINGS=
+ export VSFTPD_ALLOW_FTPUSER=yes
+ export VSFTPD_ALLOW_ROOT=yes
+ export VSFTPD_ANONYMOUS=no
+ export VSFTPD_ANON_ROOT=/mod/home/ftp
+ export VSFTPD_CHROOT=yes
+ export VSFTPD_CHROOT_JAIL_LIST=
+ export VSFTPD_DELAY_FAILED_LOGIN=15
+ export VSFTPD_ENABLED=no
+ export VSFTPD_ENABLE_RELOAD_SCRIPT=yes
+ export VSFTPD_ENABLE_SSL=yes
+ export VSFTPD_ENABLE_SSLV2=yes
+ export VSFTPD_ENABLE_SSLV3=yes
+ export VSFTPD_ENABLE_TLSV1=yes
+ export VSFTPD_FORCE_DATA_SSL=no
+ export VSFTPD_FORCE_LOGIN_SSL=no
+ export VSFTPD_LOG_ENABLE=yes
+ export VSFTPD_LOG_FILE=/var/log/vsftpd.log
+ export VSFTPD_LOG_PROTOC=no
+ export VSFTPD_LOG_SYSLOG=yes
+ export VSFTPD_MAX_CLIENTS=25
+ export VSFTPD_MAX_PER_IP=5
+ export VSFTPD_PASV_ADDRESS=no
+ export VSFTPD_PASV_MAX=0
+ export VSFTPD_PASV_MIN=0
+ export VSFTPD_PORT=21
+ export VSFTPD_PROMISCUOUS=no
+ export VSFTPD_USERS_ENABLED=yes
+ start
+ echo -n Starting ftp server...
Starting ftp server...+ config
+ write_config
+ [ -x /tmp/flash/vsftpd_conf ]
+ /mod/etc/default.vsftpd/vsftpd_conf
+ [ -r /tmp/flash/vsftpd.extra ]
+ echo -n
+ [ yes == yes ]
+ [ yes == yes ]
+ echo -n
+ grep -v ^#
+ read -r line
+ echo
+ [ -n  ]
+ read -r line
+ status_log
+ remove_status_log
+ modunreg status vsftpd vsftpd/vsftpd_log
+ rm -f /var/log/mod_vsftpd.log
+ [ yes = no ]
+ vsftpd
500 OOPS: SSL: cannot load RSA certificate
+ exitval=1
+ [ 1 -eq 0 ]
+ echo failed.
failed.
+ rm -f /mod/etc/vsftpd.conf
+ exit 1
 
Zu den Zertifikaten müsste auch mal im Wiki noch was dokumentiert werden...

MfG Oliver
 
Die Meldung mit SSL war vorhin aber nicht mit drin. Dafür etwas von strings, was hier nicht vorkommt. Ist das jetzt eine neuere Firmware?
 
Ich tippe eher darauf, dass die Meldung vorhin direkt nach dem vsftpd-Start auftrat, wo der Stick noch nciht vorhanden war. Dann passt auch "which" nicht, wenn der symlink ins leere zeigt. Ebensolches konnte ich grad hier beobachten nach dem Auslagern von vsftpd, ohne dne Stick anzuhängen direkt beim Reboot. Nach Anstecken des Sticks war alles in Ordnung.
 
@ Ralf : Die Firmware hat sich nicht geändert.

@ Silent-Tears : Der Stick steckt schon lange an der Box und wird mir auch gleich nach dem reboot (mit gewissem Delay) in Freetz als eingehängte Partition angezeigt. der Reboot der box ist jetzt genau 1 Tag her und wenn ich jetzt wieder versuche

Die Datei vsftpd ist auf dem Stick unter /var/media/ftp/uStor01/external/usr/sbin/ vorhanden und ist stolze 922.3k groß

also warum sollte der Link ins leere zeigen ?? versteh ich nicht...
 
Noch einmal: Meine Vermutung ist, dass der Stick zur Zeit des reboots noch nicht bereit ist ,wenn /etc/init.d/rc.vsftpd aufgerufen wird. Das kannst du testen, wenn du deine Box vom Strom trennst und noch einmal das log anschaust/postest. ERklärt die fehlende Fehlermeldung von "strings", wenn du das nach dem Start manuell aufrufst.
 
Der Stick steckt schon lange an der Box und wird mir auch gleich nach dem reboot (mit gewissem Delay) in Freetz als eingehängte Partition angezeigt.

Es ist egal, ob der Stick schon länger steckt. Beim Reboot wird er erst nach einer gewissen Zeit erkannt. Und wenn die Start-Skripte ausgeführt werden, bevor der USB-Stick gemountet ist, dann zeigen alle Links dorthin ins Leere.
 
Es ist egal, ob der Stick schon länger steckt. Beim Reboot wird er erst nach einer gewissen Zeit erkannt. Und wenn die Start-Skripte ausgeführt werden, bevor der USB-Stick gemountet ist, dann zeigen alle Links dorthin ins Leere.

Vielleicht hast du ja mehr Glück mit deiner Erklärung....
 
Versuch mal den vsftpd über den inetd zu starten:
Code:
...
Looking for user 'ftp' ... found
strings: /usr/sbin/vsftpd: No such file or directory
vsftpd is started via inetd
...
 
Versuch mal den vsftpd über den inetd zu starten:

Ändert nichts am eigentlichen Problem und wird - wenn er dein Posting beherzigt - wohl dazu führen, dass er den Fehler nicht noch einmal nachstellt, um das Problem genauer einzugrenzen, bzw. zu bestätigen, um eine Lösung zu erzielen. So ist das nur ein Workaround.
 
achso
und diese softlinks werden jedes mal neu erstellt am anfang des reboots und zeigen dadurch immer wieder ins leere. verstehe.

die einfachste Lösung des Problems wäre doch einen künstlichen Delay in die debug.cfg oder welches script auch immer die ftp,samba dienste und eventuell noch andere scripte aufruft einzubauen oder ?
wenn ja wäre nett wenn ihr mir diese Dateien nennen könntet...
 
Du kannst die entsprechenden RC-Scripte vor dem flashen editieren, dann landert das auch im image.
 
ich mach die images immer mit "make" im freetz
wüsste jetzt nicht wo ich die rc scripte editieren kann...
 
Per normaler Linux-Kommandos in der fwmod_custom, oder direkt in ./make/$pkg/files/root/etc/init.d/rc.$pkg
 
okay gefunden.
ich würde dann einfach "sleep 30" in die rc.vsftpd eintragen.
hier ein Auszug wo ich es einbauen würde (gleich am Anfang) :
Code:
#!/bin/sh

[COLOR="Red"][B]sleep 60[/B][/COLOR]

DAEMON=vsftpd
LOGLINK=/var/log/mod_vsftpd.log

. /etc/init.d/modlibrc

pre_config() {
        modlib_adduser ftp -G users -D -S -g "FTP account"

        mkdir -p /var/run/vsftpd

        if [ ! -e "/var/tmp/ftp" ]; then
                ln -s /mod/home/ftp /var/tmp/ftp
        fi
}
 
Klappt es denn?
 
Muss der bei jeder Funktion eine Minute schlafen? Reicht es nicht in der load - section?
 
habe das jetzt bei start reingehauen.
Code:
start() {
        [COLOR="Red"]sleep 45[/COLOR]
        echo -n 'Starting ftp server...'
        config

        $DAEMON
        exitval=$?
        if [ "$exitval" -eq 0 ]; then
                echo 'done.'
        else
                echo 'failed.'
                rm -f /mod/etc/$DAEMON.conf
                exit $exitval
        fi
}
 
Also am besten finde ich noch den Weg wie im Wiki bei external beschrieben. Da werden unnötoge Wartezeiten vermieden
 
Ich persönlich finde immer noch "strings $binary" für ein schreckliches Konstrukt, und nur deswegen gibt es hier auch das PRoblem, oder sehe ich das falsch?
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.