www.ProFTPD.de
13. März 2007, 19:13:59 *
Willkommen Gast. Bitte einloggen oder registrieren.
Haben Sie Ihre Aktivierungs E-Mail übersehen?

Einloggen mit Benutzername, Passwort und Sitzungslänge
News: SMF - Neu installiert!
 
   Übersicht   Hilfe Suche Login Registrieren  
Seiten: [1]   Nach unten
  Drucken  
Autor Thema: Proftpd startet ohne Fehler, aber kein connect möglich  (Gelesen 277 mal)
0 Mitglieder und 1 Gast betrachten dieses Thema.
Lindwyrm
ProFTPD
*
Offline Offline

Beiträge: 4


Profil anzeigen E-Mail
« am: 21. Dezember 2006, 15:45:58 »

Huhu Zusammen,

ich habe ein Problem das sich ProFTP ohne Probleme und Fehlermeldung starten lässt, aber ich bekomme keine Verbindung auf dem Server

Mein System:
Code:
Debian etch (frozen-version vom 18. Dezember 2006)
Proftpd 1.3.0-18
MYSQL: 5.0.30-1
SysCP 1.2.15 Debian Etch

Der Dienst startet einwandfrei
Code:
/etc/init.d/proftpd restart
Stopping ftp server: proftpd.
Starting ftp server: proftpd.

Doch ich bekomme keine Verbindung
Code:
ftp localhost

421 Service not available, remote server has closed connection
(Das gleiche für ftp "127.0.0.1:21", "ftp 127.0.0.1", "ftp gocore.de" und ftp "ftp.gocore.de")

und es sind keine Logeinträge im /var/log/proftpd/xxx.log enthalten.

Es sind die Paktet

Code:
i      proftpd
v     proftpd-common
i A   proftpd-mysql

installiert.

Unter der Ausgabe von "ps -ax" finde ich:
Code:
proftpd: (accepting connections)

Unter der Ausgabe von "netstat -nlp" finde ich:
Code:
tcp6       0      0 :::21                   :::*                    LISTEN     4036/proftpd: (acce

Um den Debian-Bug zu umgehen habe ich zum ersten, laut der README des Debian-Paketes, die etc/hosts um
Code:
::fff:127.0.0.1     localhost gocore
erweitert und danach mit dem Schalter
Code:
UseIPv6 off

in der proftpd die IPv6-Unterstützung für proftpd deaktiviert. Doch beides gab keine postive Auswirkung.

Also nach meinem Verständnis müsst der proftpd-Deamon doch korrekt laufen, doch wieso bekomme ich keine Verbindung? Weder über das command ftp, noch über Webmail oder WSFTP Pro.
Ich verzweifele   Huch und weiss einfach nicht mehr weiter. Für Hilfe wäre ich euch echt dankbar.

Hier meine proftpd.conf (MEINPASSWORT = mein Passwort für den mysql-user dbsyscp)
User, Passwort und Datenbank habe ich noch mal geprüft und sind korrekt.

Code:
DisplayLogin                    welcome.msg
DisplayFirstChdir               .message
ListOptions                     "-l"

DenyFilter                      \*.*/

Port                            21
MaxInstances                    30

# Set the user and group that the server normally runs at.
User                            nobody
Group                           nogroup

<Directory /*>
# Umask 022 is a good standard umask to prevent new files and dirs
# (second parm) from being group and world writable.
  Umask                         022  022
# Normally, we want files to be overwriteable.
  AllowOverwrite                on
</Directory>

DefaultRoot ~
RequireValidShell off

SQLAuthTypes Crypt Plaintext
SQLAuthenticate users* groups*
SQLConnectInfo _db_syscp@127.0.0.1 dbsyscp MEINPASSWORT
SQLUserInfo ftp_users username password uid gid homedir shell
SQLGroupInfo ftp_groups groupname gid members
SQLUserWhereClause "login_enabled = 'y'"

SQLLog PASS login
SQLNamedQuery login UPDATE "last_login=now(), login_count=login_count+1 WHERE username='%u'" ftp_users

SQLLog RETR download
SQLNamedQuery download UPDATE "down_count=down_count+1, down_bytes=down_bytes+%b WHERE username='%u'" ftp_users

SQLLog STOR upload
SQLNamedQuery upload UPDATE "up_count=up_count+1, up_bytes=up_bytes+%b WHERE username='%u'" ftp_users


# Uncomment this if you would use TLS module:
#TLSEngine                       on
#TLSLog                          /var/log/ftp_tls.log
#TLSProtocol                     SSLv23
#TLSOptions                      NoCertRequest
#TLSRSACertificateFile           /etc/ssl/certs/proftpd.cert.pem
#TLSRSACertificateKeyFile        /etc/ssl/certs/proftpd.key.pem
#TLSVerifyClient                 off
# Uncomment the following line to force tls-login
#TLSRequired                    on


#<Global>
# chroot all users
#DefaultRoot ~
# Reject rootlogin (just for security)
#RootLogin off
# No need to require valid shell, because user is virtual
#RequireValidShell off
#</Global>
#<IfModule mod_delay.c>
#   DelayEngine off
#</IfModule>



Hier noch meine Ausgabe von proftpd -nd 5

Code:
- mod_ctrls/0.9.4: binding ctrls socket to '/var/run/proftpd/proftpd.sock'
 - parsing '/etc/proftpd/proftpd.conf' configuration
 - parsing '/etc/proftpd/modules.conf' configuration
 - mod_tls/2.1.1: using OpenSSL 0.9.8c 05 Sep 2006
 - <IfModule>: using 'mod_delay.c' section at line 32
 - disabling runtime support for IPv6 connections
 - DenyFilter: compiling deny regex '\*.*/'
 - <Directory /*>: deferring resolution of path
 - SQLAuthenticate: use of * in SQLAuthenticate has been deprecated.  Use AuthOrder for setting authoritativeness
 - SQLAuthenticate: use of * in SQLAuthenticate has been deprecated.  Use AuthOrder for setting authoritativeness
localhost -
localhost - Config for gocore.de:
localhost - /*
localhost -  Umask
localhost -  DirUmask
localhost -  AllowOverwrite
localhost -  ShowSymlinks
localhost -  DisplayLogin
localhost -  DisplayFirstChdir
localhost -  ListOptions
localhost -  DenyFilter
localhost -  RequireValidShell
localhost -  SQLAuthTypes
localhost -  SQLAuthenticate
localhost -  SQLConnectInfo
localhost -  SQLLog_PASS
localhost -  SQLNamedQuery_login
localhost -  SQLLog_RETR
localhost -  SQLNamedQuery_download
localhost -  SQLLog_STOR
localhost -  SQLNamedQuery_upload
localhost -  RootLogin
localhost -  TransferLog
localhost - DelayEngine
localhost - DeferWelcome
localhost - DefaultServer
localhost - ShowSymlinks
localhost - AllowOverwrite
localhost - TimeoutNoTransfer
localhost - TimeoutStalled
localhost - TimeoutIdle
localhost - DisplayLogin
localhost - DisplayFirstChdir
localhost - ListOptions
localhost - DenyFilter
localhost - UserID
localhost - UserName
localhost - GroupID
localhost - GroupName
localhost - DefaultRoot
localhost - RequireValidShell
localhost - SQLAuthTypes
localhost - SQLAuthenticate
localhost - SQLConnectInfo
localhost - SQLUserTable
localhost - SQLUsernameField
localhost - SQLPasswordField
localhost - SQLUidField
localhost - SQLGidField
localhost - SQLHomedirField
localhost - SQLShellField
localhost - SQLGroupTable
localhost - SQLGroupnameField
localhost - SQLGroupGIDField
localhost - SQLGroupMembersField
localhost - SQLUserWhereClause
localhost - SQLLog_PASS
localhost - SQLNamedQuery_login
localhost - SQLLog_RETR
localhost - SQLNamedQuery_download
localhost - SQLLog_STOR
localhost - SQLNamedQuery_upload
localhost - RootLogin
localhost - TransferLog
localhost - ExtendedLog
localhost - mod_ctrls/0.9.4: binding ctrls socket to '/var/run/proftpd/proftpd.sock'
localhost - ProFTPD 1.3.0 (stable) (built Thu Dec 14 16:35:10 CET 2006) standalone mode STARTUP

Und meine /etc/hosts
Code:
127.0.0.1       localhost gocore

# The following lines are desirable for IPv6 capable hosts
::fff:127.0.0.1 localhost gocore
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Gespeichert
Lindwyrm
ProFTPD
*
Offline Offline

Beiträge: 4


Profil anzeigen E-Mail
« Antwort #1 am: 21. Dezember 2006, 23:14:10 »

Huhu Zusammen,

ich bin ein ganzes Stück weitergekommen, naja ich konnte das Problem zumindest einkreisen, aber nicht lösen!

in der Originalkonfig werden die Module über Include /etc/proftpd/modules.conf geladen.

/etc/proftpd/modules.conf
Code:
#
# This file is used to manage DSO modules and features.
#

# This is the directory where DSO modules resides

ModulePath /usr/lib/proftpd

# Allow only user root to load and unload modules, but allow everyone
# to see which modules have been loaded

ModuleControlsACLs insmod,rmmod allow user root
ModuleControlsACLs lsmod allow user *

#LoadModule mod_ctrls_admin.c
LoadModule mod_tls.c
LoadModule mod_sql.c
LoadModule mod_ldap.c
LoadModule mod_sql_mysql.c
#LoadModule mod_sql_postgres.c
LoadModule mod_quotatab.c
LoadModule mod_quotatab_file.c
LoadModule mod_quotatab_ldap.c
LoadModule mod_quotatab_sql.c
LoadModule mod_radius.c
LoadModule mod_wrap.c
LoadModule mod_rewrite.c

# keep this module the last one
LoadModule mod_ifsession.c

<IfModule mod_delay.c>
  DelayEngine off
</IfModule>

Kommentiere ich die Module aus  bzw. lasse das include weg, dann ist der FTP-Server erreichbar. Mit diesen Modulen bekomme ich wieder ein "421 Service not available, remote server has closed connection".
Ich habe mal nachgesehen, die Module sind alle unter /usr/lib/proftpd vorhanden. Auch habe ich es über den Pfad /usr/lib64/proftpd (64bit-Version von etch) versucht, dort sind ebenfalls die Module vorhanden. Aber mit dem gleichen Ergebnis: ""421 Service not available, remote server has closed connection".

Es half auch nichts alle Module bis auf "LoadModule mod_sql.c", welches ich ja zur Authentifizierung benötige, auszukommentieren. So langsam bin ich echt am verzeifeln *heul*

Also lasse ich die Module weg, dann kann ich den FTP-Server erreichen und fragt mich nach den Zugangsdaten. Allerdings kann ich ja ohne das das laden von LoadModule mod_sql.c nicht auf die Zugangsdaten in der Datenbank zugreifen  Huch

Ich habe auch schon die Universelles Muster einer proftpd.conf von Volker Gass verwendet und die folgenden Zeilen nach der von syscp generierten Konfig angepasst.

Code:
        # --------------------------------------------
        # Authentifikation per SQL
        # --------------------------------------------

        <IfModule mod_sql.c>
                AuthOrder               mod_sql.c

                SQLConnectInfo          _db_syscp@localhost dbsyscp MEINPASSWORT
                SQLUserInfo             ftp_users username password uid gid homedir shell
                SQLGroupInfo            ftp_groups groupname gid members
                SQLUserWhereClause      "login_enabled = 'y'"

                SQLAuthTypes            Crypt Plaintext
                SQLAuthenticate         users* groups*
                SQLMinUserUID           1024
                SQLMinUserGID           555
                SQLNegativeCache        on

                SQLLog PASS login
                SQLNamedQuery login UPDATE "last_login=now(), login_count=login_count+1 WHERE username='%u'" ftp_users

                SQLLog RETR download
                SQLNamedQuery download UPDATE "down_count=down_count+1, down_bytes=down_bytes+%b WHERE username='%u'" ftp_users

                SQLLog STOR upload
                SQLNamedQuery upload UPDATE "up_count=up_count+1, up_bytes=up_bytes+%b WHERE username='%u'" ftp_users


        </IfModule>


auch hier kann ich auf den FTP Zugreifen und werde nach den Zugangsdaten gefragt, doch ich bekomme immer ein Login Fail

proftpd/auth.log
Code:
gocore.de [4704] ::ffff:127.0.0.1 [21/Dec/2006:19:52:16 +0100] "USER testuserFTP1" 331
gocore.de [4704] ::ffff:127.0.0.1 [21/Dec/2006:19:52:25 +0100] "PASS (hidden)" 530
Gespeichert
VolGas
Moderator
ProFTPD
*****
Offline Offline

Beiträge: 771



Profil anzeigen
« Antwort #2 am: 22. Dezember 2006, 08:28:29 »

Hallo!

Zunächst möchte ich anmerken, daß ich es für sehr mutig finde, wenn jemand ein noch nicht
freigegebenes Betriebssystem in der Testphase benutzt...

Daß Du schon einmal ein Debug-Listing gepostet hast, ist ja ganz "nett", aber so vollkommen nutzlos.
Bitte noch einmal, dann aber den Output von einem Login-Versuch hier posten. Alles was vorher aus-
gegeben wird, bitte hier nicht noch einmal posten.

Aber SQL-Fehler werden damit nicht angezeigt: überprüfe also bitte zunächst einmal mittels "SQLLogFile",
ob nicht ein SQL-Fehler vorhanden ist. Die Datenmenge, die "SQLLogFile" erzeugt, ist immens und damit
nur zu Testzwecken sinnvoll.

Mit der Möglichkeit mit dem ProFTPD DSO-Module zu benutzen, habe ich keine Erfahrung.
Aber ich kann mich erinnern, daß wir hier im Forum schon einmal jemanden hatten, der sich auch
damit herumschlug. Scheint wohl doch noch nicht so ganz ausgereift zu sein!?

Ach ja: "...use of * in SQLAuthenticate has been deprecated.  Use AuthOrder..." - das hast Du mit
meiner Beispielkonfiguration nun ja schon gemacht, nur die Sternchen bei "SQLAuthenticate" müssten
noch entfernt werden...

mfg.
  VolGas
Gespeichert
Lindwyrm
ProFTPD
*
Offline Offline

Beiträge: 4


Profil anzeigen E-Mail
« Antwort #3 am: 22. Dezember 2006, 11:51:05 »

Vielen Dank für deine Antwort!

Code:
Zunächst möchte ich anmerken, daß ich es für sehr mutig finde, wenn jemand ein noch nicht
freigegebenes Betriebssystem in der Testphase benutzt...

Tja, was soll ich sagen? Chef ist König, zudem studiert und ich nur gelernt Traurig. Ich selbst würde auch viel lieber auf Debian sarge setzten, zumal ich auf keinen unserer sarge-Server diese (und andere) Probleme hatte. Obwohl das zukünftige Release wohl schon eingefroren wurde und so gut wie alle Pakete als stable gekennzeichnet wurden, trudeln doch Tag täglich neue uprades ein. Auch für die "grossen" Pakete. Und die Patchnotes lesen sich stellenweise übel. Ich habe meinem "Meister" ja schon von den Problemen berichtet, doch er verwies nur auf die stable mark des proftpd-Paketes und meinte dafür müsse es eine Lösung geben. Juhu zumindest konnte ich jetzt endlich eine ordentliche Linux-Schulung heraushauen u.a mit dem Schwerpunkt proftpd  Grinsend

Zitat
Aber SQL-Fehler werden damit nicht angezeigt: überprüfe also bitte zunächst einmal mittels "SQLLogFile",
ob nicht ein SQL-Fehler vorhanden ist. Die Datenmenge, die "SQLLogFile" erzeugt, ist immens und damit
nur zu Testzwecken sinnvoll.

Ok ich habe SQLLogFile auskommentiert und das Logfile wurde auch angelegt, nur leider wird es nich immens gross sondern bleibt ziemlich leer  Zwinkernd Habe mehrere Verbindungsversuche im Debugmodus sowie im normalen Betrieb ausgeführt. SQLLog bleibt stumm.

Zitat
Daß Du schon einmal ein Debug-Listing gepostet hast, ist ja ganz "nett", aber so vollkommen nutzlos.
Bitte noch einmal, dann aber den Output von einem Login-Versuch hier posten. Alles was vorher aus-
gegeben wird, bitte hier nicht noch einmal posten.

Doing a hätte ich auch selbst drauf kommen können, sry. Hier die Ausgabe von "proftpd -nd 5" nach einem "ftp localhost" mit der Rückmeldung "421 Service not available, remote server has closed connection"

Code:
static.88-198-25-48.clients.your-server.de - ProFTPD 1.3.0 (stable) (built Thu Dec 14 16:35:10 CET 2006) standalone mode STARTUP
static.88-198-25-48.clients.your-server.de (127.0.0.1[127.0.0.1]) - FTP session requested from unknown class
static.88-198-25-48.clients.your-server.de (127.0.0.1[127.0.0.1]) - ProFTPD terminating (signal 11)
static.88-198-25-48.clients.your-server.de (127.0.0.1[127.0.0.1]) - FTP session closed.
static.88-198-25-48.clients.your-server.de - ProFTPD terminating (signal 2)

Ich hoffe doch ein bisschen, das du damit mehr anfangen kannst.

Zitat
Ach ja: "...use of * in SQLAuthenticate has been deprecated.  Use AuthOrder..." - das hast Du mit
meiner Beispielkonfiguration nun ja schon gemacht, nur die Sternchen bei "SQLAuthenticate" müssten
noch entfernt werden...

Danke für den Hinweis, habe ich korrigiert.

Gruss
Lindi
 
Gespeichert
Lindwyrm
ProFTPD
*
Offline Offline

Beiträge: 4


Profil anzeigen E-Mail
« Antwort #4 am: 22. Dezember 2006, 11:55:53 »

Nachtrag:

"proftpd -nd 9 gibt noch etwas mehr aus:"
Code:
static.88-198-25-48.clients.your-server.de - RELINQUISH PRIVS at main.c:1189
static.88-198-25-48.clients.your-server.de - no matching vhost found for 127.0.0.1#21, using DefaultServer 'gocore.de'
static.88-198-25-48.clients.your-server.de (127.0.0.1[127.0.0.1]) - ROOT PRIVS at main.c:1034
static.88-198-25-48.clients.your-server.de (127.0.0.1[127.0.0.1]) - SETUP PRIVS at main.c:1039
static.88-198-25-48.clients.your-server.de (127.0.0.1[127.0.0.1]) - FTP session requested from unknown class
static.88-198-25-48.clients.your-server.de (127.0.0.1[127.0.0.1]) - performing module session initializations
static.88-198-25-48.clients.your-server.de (127.0.0.1[127.0.0.1]) - ROOT PRIVS at mod_sql.c:3809
static.88-198-25-48.clients.your-server.de (127.0.0.1[127.0.0.1]) - RELINQUISH PRIVS at mod_sql.c:3811
static.88-198-25-48.clients.your-server.de (127.0.0.1[127.0.0.1]) - ProFTPD terminating (signal 11)
static.88-198-25-48.clients.your-server.de (127.0.0.1[127.0.0.1]) - FTP session closed.

Gespeichert
VolGas
Moderator
ProFTPD
*****
Offline Offline

Beiträge: 771



Profil anzeigen
« Antwort #5 am: 22. Dezember 2006, 12:46:00 »

Das ist eindeutig: "ProFTPD terminating (signal 11)"  der ProFTPD ist Dir abgestürzt.
Das ist definitiv kein Konfigurationsfehler, sondern ein Installationsfehler - soviel zum Thema "stable"...
Ein Studium ist gut: damit kann man theoretisch erklären, warum es praktisch nicht funktioniert hat.

Wie ich mit Debian anfing, hatten mich die alten Klamotten darin damals genervt und ich habe mir dann
die Software, die ich haben wollte, aus dem "testing"-Branch installiert. Und jedes mal, wenn ich dachte
ich hätte jetzt die Maschine fertig, ist mir das System gänzlich (und für immer) zusammengebrochen -
aber jedesmal an einer anderen Stelle!

Im Rechenzentrum kennt man mich daher seit jener Zeit alleine schon an der Telefonnummer: bitte
Reset und Systemimage neu aufspielen...

Irgendwann hatte der Leiter des Rechenzentrums scheinbar Mitleid mit mir (oder einfach nur die
Schnautze voll) und hat mir verraten, wie sie intern das Ganze selbst handhaben: Debian als Plattform
ist ganz ok, aber die Software, mit der man arbeitet, kann man selbst compilieren und installieren.

Das habe ich ausprobiert: die Software wird in der Version und in der Art und an den Ort compiliert und
installiert, wie ich es brauche und möchte. Damit habe ich nicht irgend etwas universell funktionierendes,
altes, sondern ein maßgeschneidertes, aktuelles System, das seit Jahren stabil läuft, ganz ohne Versions-
konflikte mit dem System. Dafür muß ich eben aber auch selbst aufpassen, daß Sicherheitsupdates
rechtzeitig installiert werden, aber das ist nicht weiter aufwendig und schwierig.

Installationsbeispiele siehe ->hier und ->hier, Erklärungen dazu ->da.

An einem fertigen Softwarepaket, das abstürzt, sollte man IMHO nicht anfangen rumzufrickeln, es ist
einfach nicht zu gebrauchen. Ich kann Dir nur empfehlen, wie in den o.g. Beispielen den ProFTPD selbst
zu compilieren. Als stabile Plattform würde ich aber doch lieber "sarge" benutzen oder zumindest noch
die paar Tage warten, bis "etch" als "final" (bzw. "stable") freigegeben wird...

Fazit: tut mir leid, ich kann Dir speziell bei Deinem Problem nicht weiterhelfen.
Das Dingens ist kaputt!

Trotzdem noch schöne Feiertage!

mfg.
  VolGas
« Letzte Änderung: 22. Dezember 2006, 12:53:18 von VolGas » Gespeichert
Seiten: [1]   Nach oben
  Drucken  
 
Gehe zu:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.2 | SMF © 2006-2007, Simple Machines LLC Prüfe XHTML 1.0 Prüfe CSS
Seite erstellt in 0.069 Sekunden mit 16 Zugriffen.