www.ProFTPD.de
13. März 2007, 18:49:21 *
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: Seltsames im neuen Jahr  (Gelesen 176 mal)
0 Mitglieder und 1 Gast betrachten dieses Thema.
oliver67
ProFTPD
*
Offline Offline

Beiträge: 2


Profil anzeigen
« am: 02. Januar 2007, 16:27:48 »

Hallo,

ich habe ein merkwürdiges Problem, das ohne bewusste Änderung am Server entstanden ist.
Ich arbeite mit Debian 3.1 Sarge 64Bit, MySQL 4.1.11, proftp 1.2.10

Die Konfiguration entspricht diesem HowTo:
http://www.howtoforge.com/proftpd_mysql_virtual_hosting
wobei noch zusätzlich TLS konfiguriert ist.

Das Problem:
Im alten Jahr konnt ich das System prima nutzen und Dateien per FTP hochladen. Jetzt im neuen Jahr, geht nichts mehr. Als wäre irgend ein "haltbarkeitsdatum" überschritten. Huch

Das FTP-Programm (filzilla 2.2.28) verbindet sich im passive mode mit expliziter tls verschlüsselung.
MySQL und TLS login funktioniert, nur bekommt der Benutzer keinen Zugriff auf den in der DB hinterlegten Pfad.

Die ftpuser der DB sind auch im System angelegt und der Systemgruppe ftpgruppe zugeordnet, owner und group sind auf den Verzeichenissen richtig gesetzt, aber irgendwie funktioniert das nicht mehr???

server log / debug level 6 (zuviel infos zum posten
Code:
....
Jan 02 15:53:12 xxx.xx.xx proftpd[2703] xxx.xx.xx (xx.dip.t-dialin.net[yy.yy.yy.yy]): notice: unable to resolve '~/': Permission denied
....

Ausgabe Filzille
Code:
Status: Verbinden mit xxx.xx.xx...
Status: Verbunden mit xxx.xx.xx, SSL-Verbindung wird ausgehandelt...
Antwort: 220 ProFTPD 1.2.10 Server (Debian) [88.198.15.71]
Befehl: AUTH TLS
Antwort: 234 AUTH TLS successful
Status: SSL-Verbindung hergestellt. Warten auf Willkommens-Meldung...
Befehl: USER benutzer
Antwort: 331 Password required for .
Befehl: PASS ********
Antwort: 530 Login incorrect.
Fehler: Verbindung kann nicht hergestellt werden!

proftpd.conf
Code:
ServerName                      "Debian"
ServerType                      standalone
DeferWelcome                    off

MultilineRFC2228                on
DefaultServer                   on
ShowSymlinks                    on

TimeoutNoTransfer               600
TimeoutStalled                  600
TimeoutIdle                     1200

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

DenyFilter                      \*.*/

DefaultRoot                     ~

Port            21
MaxInstances                    30
User                            ftpuser
Group                           ftpgroup #nogroup
Umask                           022  022
AllowOverwrite                  on


DebugLevel 6
ServerLog /var/log/proftp_server.log
SystemLog /var/log/proftp_sys.log
ExtendedLog /var/log/proftp_ext.log auth,read,write
TransferLog /var/log/proftp_transfer.log

# The passwords in MySQL are encrypted using CRYPT
SQLAuthTypes                    Plaintext Crypt
SQLAuthenticate                 users* groups*
# used to connect to the database
# databasename@host database_user user_password
SQLConnectInfo  dbbenutzer@localhost datenbank passwort


# Here we tell ProFTPd the names of the database columns in the "usertable"
# we want it to interact with. Match the names with those in the db
SQLUserInfo     ftpuser userid passwd uid gid homedir shell

# Here we tell ProFTPd the names of the database columns in the "grouptable"
# we want it to interact with. Again the names match with those in the db
SQLGroupInfo    ftpgroup groupname gid members

# set min UID and GID - otherwise these are 999 each
SQLMinID        500

# create a user's home directory on demand if it doesn't exist
SQLHomedirOnDemand on

# Update count every time user logs in
SQLLog PASS updatecount
SQLNamedQuery updatecount UPDATE "count=count+1, accessed=now() WHERE userid='%u'" ftpuser

# Update modified everytime user uploads or deletes a file
SQLLog  STOR,DELE modified
SQLNamedQuery modified UPDATE "modified=now() WHERE userid='%u'" ftpuser
SQLLogFile /var/log/proftpd_sql.log
# User quotas
# ===========
# Quotas on???
QuotaEngine on
QuotaDirectoryTally on
QuotaDisplayUnits Mb
QuotaShowQuotas on

SQLNamedQuery get-quota-limit SELECT "name, quota_type, per_session, limit_type, bytes_in_avail, bytes_out_avail, bytes_xfer_avail, files_in_avail, files_out_avail, files_xfer_avail FROM ftpquotalimits WHERE name = '%{0}' AND quota_type = '%{1}'"

SQLNamedQuery get-quota-tally SELECT "name, quota_type, bytes_in_used, bytes_out_used, bytes_xfer_used, files_in_used, files_out_used, files_xfer_used FROM ftpquotatallies WHERE name = '%{0}' AND quota_type = '%{1}'"

SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = files_in_used + %{3}, files_out_used = files_out_used + %{4}, files_xfer_used = files_xfer_used + %{5} WHERE name = '%{6}' AND quota_type = '%{7}'" ftpquotatallies

SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, %{3}, %{4}, %{5}, %{6}, %{7}" ftpquotatallies

QuotaLimitTable sql:/get-quota-limit
QuotaTallyTable sql:/get-quota-tally/update-quota-tally/insert-quota-tally

RootLogin off
RequireValidShell off

# Uncomment this if you are using NIS or LDAP to retrieve passwords:
#PersistentPasswd               off

# Uncomment this if you would use TLS module:
#TLSEngine                      on

TLSEngine                       on
PassivePorts                    60000 65000
TLSLog                          /var/log/proftpd_tls.log
TLSProtocol                     SSLv23
TLSOptions                      NoCertRequest
TLSRSACertificateFile           /etc/ssl/certs/proftpd.cert.pem
TLSRSACertificateKeyFile        /etc/ssl/certs/proftpd.key.pem
TLSVerifyClient                 off
TLSRequired                     off
                                     

Hat jemand eine Idee?
Gespeichert
stonki
Administrator
ProFTPD
*****
Offline Offline

Beiträge: 1853


15318939
Profil anzeigen WWW E-Mail
« Antwort #1 am: 03. Januar 2007, 18:47:02 »

naja, er kann das HomeDir nicht auflösen bzw. hat dafür keine Rechte. Bist Du Dir den 100% sicher, daß die Unix Rechte noch stimmen....
Gespeichert

www.stonki.de:    the more I see, the more I know.......
www.proftpd.de:   Deutsche ProFTPD Dokumentation
www.krename.net:  Der Batch Renamer für KDE
www.kbarcode.net: Die Barcode Solution für KDE
oliver67
ProFTPD
*
Offline Offline

Beiträge: 2


Profil anzeigen
« Antwort #2 am: 03. Januar 2007, 18:59:10 »

Hallo stonki,

sicher bin ich mir mittlerweile gar nicht mehr, aber vielleicht habe ich nur einen Denkfehler.

Ich dachte "letztes Jahr"  Zwinkernd ich nehme die Lösung mit SQL um die User besser verwalten zu können und lege aber zusätzlich zu jedem SQL-User einen Unix-User an und gebe dann die entsprechenden Rechte auf die Verzeichnisse. Der Gedanke war das eben nur in diesem Bereich die User Zugriff haben und sonst ausgeschlossen sind.

Nach dem Lesen diverser Docs, scheint es aber so zu sein: Man legt die User in die BD, die Verzeichnisse werden aber mit den Rechten des Users versehen unter denen proftpd läuft (chown ftpuser). In der DB wird dann im UID-Feld die User-ID des proftpd-Users eingegeben und nicht des neu angelegten Users.
Ist das so richtig? Denn dann funktioniert es wieder.

Gibts denn Möglichkeiten das die ftp-User auch Owner der ftp-Verzeichnisse sind?

Verstehen aber trotdem nicht, warum das vorher funktioniert hat und jetzt nicht mehr Huch.

Gruß
Oliver
Gespeichert
VolGas
Moderator
ProFTPD
*****
Online Online

Beiträge: 771



Profil anzeigen
« Antwort #3 am: 19. Januar 2007, 07:55:13 »

Hallo!

Dem Filesystem ist es völlig "schnuppe", ob zu einer UID/GID im System auch jeweils ein User eingetragen ist.
Nur deswegen können mit dem ProFTPD auch virtuelle User (wie z.B. mit mySQL) angelegt werden, die auch die
entsprechenden Rechte an Dateien und Verzeichnissen haben können.

Es empfiehlt sich sogar dringend, daß man den ProFTPD explizit anweist, bei der Authentifikation NICHT auf die
Daten der eingetragenen Systemuser zuzugreifen. ("AuthOrder mod_sql.c")

Legst Du die Nutzer parallel als virtuelle und als Systemuser an, kann dies nur zu Verwirrungen führen.
Warum Du allerdings zum Jahreswechsel Probleme bekommen hast, kann ich auch nicht sagen.
Irgend etwas muß sich ja verändert haben.

mfg.
  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.065 Sekunden mit 16 Zugriffen.