Courier und Maildrop auf Debian Sarge

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
derdennis
Posts: 5
Joined: 2007-01-16 20:07
 

Courier und Maildrop auf Debian Sarge

Post by derdennis »

Hallo zusammen,

ich bin der neue und such Hilfe ;-).

Fängt echt gleich richtig gut an, da ich mindestens über zwei Fehler verfüge die ich nicht ausgemerzt bekomme.

Kommen wir zunächst zu meinem Problem mit den Mailverzeichnissen:
Ich liefere ankommende Mails theorethisch per Maildrop an die einzelnen Mailverzeichnisse der User. "Theoretisch" sage ich, weil die Maiverzeichnisse nicht richtig angelegt werden!

Ich bekomme Verzeichnisse in dieser Form:

Code: Select all

/var/kunden/mail/var/kunden/mail/./Maildir 
hätte sie aber gerne so:

Code: Select all

/var/kunden/mail/BENUTZER/MAILADRESSE
Ich denke, dass die Datei maildroprc ihren Teil dazu beiträgt:

Code: Select all

#Configuration
#########################################################
# set this to 1 if you want to log the usersettings vor vscan, etc.
LOGUSERSETTINGS=0
# Full path to the maildrop log of each user
LOGFILEPATH=$HOME/maildrop.log
# Setting for SysCP maildrop module
USESYSCPSETTINGS=0
# Basedir of your syscp installation
SYSCPBASEDIR="/var/www/syscp"
# Default setting for the spamfilter
SPAMFILTER=0
# use spamc instead of the direct call to spamassassin
USESPAMC=1
# Default setting for the virusscan
VSCAN=0
# include userdefined filters into maildrop
USERFILTER=0
# basedir of your userdefined filterfiles
MAILFILTERDIR="/var/kunden/mailfilter"
# Only scan mails smaller than SCANSPAMSIZE for spam
SCANSPAMSIZE="2000000"
# Only scan mails smaller than VSCANSIZE for a virus
VSCANSIZE="2000000"

#########################################################
#
# First check if the maildir exists and create it, if
# it doesn't exist
#
#########################################################
[b]# HIER LIEGT DER FEHLER: WIE MUSS DIE VARIABLE MAILDIR WIRKLICH LAUTEN?
# WARUM FUNKTIONIERT BEI MIR $HOME$DEFAULT UND BEI DENNIS NICHT?[/b]

MAILDIR=[b]$HOME$DEFAULT[/b]
`test -d "$MAILDIR"`                            # check if dir exist
if ($RETURNCODE != 0)
{
        `mkdir -p $MAILDIR`                     # create dirs with parents
        `rmdir $MAILDIR`                        # remove dir for init
        `/usr/bin/maildirmake $MAILDIR`         # create maildir
}

#########################################################
#
# init logfile for this user
#
#########################################################
logfile "$LOGFILEPATH"
log "========================================================================="
if ( $LOGUSERSETTINGS )
{
        log "maildir: $MAILDIR"
        log "SPAMFILTER: $SPAMFILTER - VSCAN: $VSCAN"
        log "logname: $LOGNAME"
}

#########################################################
#
# deliver mail to maildir
#
#########################################################
exception {
    log "filtering done, deliver to $MAILDIR"
    to "$MAILDIR"
}
Die fett markierten Stellen sind unter Verdacht geraten ;-). Wie ihr an dem markierten Kommentar seht, lege ich mir nicht allein die Karten!

Ich vermute das dort die variable $Default irgendwie falsch befüllt ist!
Ich habe aber keine Ahnung ob das stimmt bzw. wo die sich ihren Inhalt herholt!

Dieses war der erste Streich ;-). Jetzt kommen wir zu meinem nächsten Problem:

Ich versuche mich verzweifelt via POP oder IMAP auf meinen Server per Thunderbird einzuwählen um evtl. Mails abzurufen. Ich weis das das ohne passendes Mailverzeichnis noch nicht viel Sinn macht, aber ich will es wenigstens schonmal ans Laufen bringen!

Bei diesem Versuch sitze ich aber jedes Mal vor meinem Monitor und starre auf die Mitgeloggten Daten. Da gibt es zunächsteinmal folgende Ausgabe in der Mail.log:

Code: Select all

Jan 16 19:56:25 debian courierpop3login: LOGIN: DEBUG: ip=[::ffff:84.61.244.168], command=PASS
Jan 16 19:56:25 debian courierpop3login: LOGIN: DEBUG: ip=[::ffff:84.61.244.168], username=Webmaster@xxx.de
Jan 16 19:56:25 debian courierpop3login: LOGIN: DEBUG: ip=[::ffff:84.61.244.168], password=xxxxx
Jan 16 19:56:25 debian courierpop3login: authdaemon: starting client module
Jan 16 19:56:25 debian courierpop3login: authdaemon: TEMPFAIL - no more modules will be tried
Jan 16 19:56:30 debian courierpop3login: LOGIN FAILED, ip=[::ffff:84.61.244.168]
und zum anderen folgendes in der Mysql.log:

Code: Select all

070116 20:44:17      31 Connect     syscp@localhost on
                     31 Init DB     syscp
                     31 Query       SELECT email, password_enc, "", uid, gid, homedir, maildir, "", name, "" FROM mail_users WHERE email = "Webmaster@Dennis-Arntjen.de"
                     31 Quit
                     32 Connect     syscp@localhost on
                     32 Init DB     syscp
                     32 Query       SELECT email, password_enc, "", uid, gid, homedir, maildir, "", name, "" FROM mail_users WHERE email = "Webmaster@Dennis-Arntjen.de"
                     32 Quit
Zu den Informationen in der Mail.log hatte ich die Vermutung das irgendein Paket nicht installiert ist, aber mir fällt keines auf. :-( Was brauche ich alles für Courier, Maildrop, Pop3 bzw. IMAP und authmysql? Irgendwie habe ich im Hinterkopf das da was mit einer Datei Namens lib*** irgendwas war? Keine Ahnung!

Zu den Informationen in der Mysql.log fält mir nur auf, dass dort einige "" stehen. Die kann ich mal gar nicht zuordnen! Richtig ist das meines Wissens aber nicht. Vielleicht einer eine Idee wo die Dinger herkommen?

Ich bin mittlerweile seit drei Tagen dran das Problem zu beheben und bin eigentlich noch keinStück weitergekommen. Vielleicht könnt ihr mir ja helfen!?

Wenn noch irgendwelche Infos fehlen, stelle ich diese natürlich gerne zur Verfügung. Ich suche derweil zum 10ten mal das Internet komplett ab ;-).

Danke schonmal bis hierhin. Und für die noch kommende Hilfe!!
User avatar
daemotron
Administrator
Administrator
Posts: 2641
Joined: 2004-01-21 17:44
 

Re: Courier und Maildrop auf Debian Sarge

Post by daemotron »

Wie ist denn home_mailbox gesetzt?

Code: Select all

grep home_mailbox /etc/postfix/main.cf
IMHO sollte da sowas wie .maildir/ stehen (der abschließende / ist wichtig!) Ach ja, SysCP legt die Infos zu den Postfächern ja in MySQL ab - wird da auch home- und maildir-Verzeichnis abgelegt? => mal in die DB reinschauen, was da so drinsteht...
derdennis
Posts: 5
Joined: 2007-01-16 20:07
 

Courier und Maildrop auf Debian Sarge

Post by derdennis »

Das ist richtig. In der Datenbank zu Syscp gibt es eine Tabelle mit dem Namen Mail_users. In dieser Tabelle werden unter anderem Username, Homedir und Maildir abgelegt.
User avatar
daemotron
Administrator
Administrator
Posts: 2641
Joined: 2004-01-21 17:44
 

Re: Courier und Maildrop auf Debian Sarge

Post by daemotron »

Code: Select all

MAILDIR=$HOME$DEFAULT
Tja, da würde ich "des Pudels Kern" nennen... $HOME ist das Home-Verzeichnis für den virtuellen User, das aus der Datenbank kommt. $DEFAULT dürfte mit dem home_mailbox-Wert aus der Postfix-Konfiguration belegt sein... Normalerweise ergibt sich dann sowas:

Code: Select all

HOME=/home/foo/
DEFAULT=.maildir/
MAILDIR=$HOME$DEFAULT
echo $MAILDIR
/home/foo/.maildir/
Ich weiß nicht aus dem Kopf, wie Du MAILDIR hart auf den in der Datenbank eingetragenen Wert für MAILDIR setzen kannst - sollte sich aber bei Google finden lassen (gibt ja einige Tutorials für Postfix virtual mit MySQL und Maildrop). Andere Möglichkeit: Du setzt den HOME-Eintrag in der Datenbank immer so, dass er sich mit angehängtem .maildir/ in die gewünschte Pfadangabe verwandelt...
derdennis
Posts: 5
Joined: 2007-01-16 20:07
 

Re: Courier und Maildrop auf Debian Sarge

Post by derdennis »

Hm. Dann werde ich mich mal auf die Suche begeben! Danke bis hierhin...

Hast Du auch eine Idee wie der andere Fehler Zustande kommen könnte?
User avatar
daemotron
Administrator
Administrator
Posts: 2641
Joined: 2004-01-21 17:44
 

Re: Courier und Maildrop auf Debian Sarge

Post by daemotron »

Hmm, da kann ich nur raten. Ist courier-authlib denn gestartet? Wie sehen die Konfigurationsdateien aus? (/etc/courier/authlib/authdaemonrc und /etc/courier/authlib/authmysqlrc) Funktioniert denn die Authentifizierung bei Postfix mit saslauthd?

EDIT: btw. mir ist aufgefallen, dass Du beim localpart und Domain-Name Groß-/Kleinschreibung drin hast. Du weißt, das MySQL bei WHERE ... = case-sensitiv ist?
derdennis
Posts: 5
Joined: 2007-01-16 20:07
 

Re: Courier und Maildrop auf Debian Sarge

Post by derdennis »

jfreund wrote:Hmm, da kann ich nur raten. Ist courier-authlib denn gestartet? Wie sehen die Konfigurationsdateien aus? (/etc/courier/authlib/authdaemonrc und /etc/courier/authlib/authmysqlrc) Funktioniert denn die Authentifizierung bei Postfix mit saslauthd?
Hm. Bei mir liegen die Dateien zu authlib nicht im Unterverzeichnis /Authlib sondern direkt im Verzeichnis /Courier. Muss das an sich anders sein?

EDIT: Hab es grad mal mit dem Verzeichnis /authlib versucht. Hat nicht funktioniert. Da ließ sich der authdaemon nicht mehr starten.
jfreund wrote: EDIT: btw. mir ist aufgefallen, dass Du beim localpart und Domain-Name Groß-/Kleinschreibung drin hast. Du weißt, das MySQL bei WHERE ... = case-sensitiv ist?
Danke für den Hinweis. Hab ich im Thunderbird geändert. Das ändert jetzt zwar nicht direkt was, schließt aber weitere Fehler aus!
User avatar
daemotron
Administrator
Administrator
Posts: 2641
Joined: 2004-01-21 17:44
 

Re: Courier und Maildrop auf Debian Sarge

Post by daemotron »

Das mit dem authlib-Unterverzeichnis ist distributionsspezifisch... die Dateien müssen natürlich da liegen, wo Dein courier-authlibd sie erwartet. Aus der Fehlermeldung würde ich dennoch schließen wollen, dass courier-authlib nicht auf authmysql zurückgreift - entweder stimmen die Konfigurationsdaten für MySQL nicht (in der Datei authmysqlrc) oder authmysql ist in der authdaemonrc nicht aktiviert.

Es macht aber IMHO keinen Sinn mehr, hier weiter ins Blaue zu raten, ohne den Inhalt Deiner Konfigurationsdateien zu kennen!
derdennis
Posts: 5
Joined: 2007-01-16 20:07
 

Re: Courier und Maildrop auf Debian Sarge

Post by derdennis »

Das Login Problem ist gelöst. Scheint was mit der authmysqlrc zu tun gehabt zu haben. Ich hab die nochmal durchgearbeitet und jetzt geht es.

Nutzt grad aber nicht viel, weil mein Login auf einen leeren Mailordner nichts bringt :-(. Und solange ich das Problem mit den falsch angelegten Ordnern nicht in den Griff bekommen, wird sich da auch nichts dran ändern.

Ich werde heute Abend mal an dem Problem basteln. Vllt. habt ihr noch Ideen dazu? Wenn nicht, muss Google nochmal vergewaltigt werden ;-).

Sollte ich eine Lösung finden werde ich diese hier bereit stellen. Vllt. ist ja noch einer irgendwann mal so doof wie ich es grad bin... *lach*