Confixx und Cyrus Imapd

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
mark
Posts: 295
Joined: 2003-04-15 16:48
Location: Oldenburg

Confixx und Cyrus Imapd

Post by mark » 2003-05-28 19:50

Hallo allerseits,

dachte ich beantworte das mal im Forum.
bernostern wrote:Hallo Mark!
Ich habe heute zu meiner großen Freude deinen Thread gesehen: http://www.rootforum.org/forum/viewtopic.php?t=10012 (Cyrus Imapd und Confixx - Script (cyrus-control 0.2))

Da ich jetzt nicht gerade ein Profi bin möchte ich dich vor der Installation noch was fragen:

Vorraussetzung zu deiner Installation sind ein laufender Postfix mit Postfix-tls und ein bereits installiertes Confixx, oder? (muss bei Confixx irgendwas wie z.B. pop_realhome=1 oder so gesetzt werden?)?
Theoretisch kannst du auch sendmail oder was auch immer benutzen. Wichtig ist nur, dass es dem MTA (z.B. postfix) möglich ist, die mails an cyrus imapd local auszuliefern. Ich selber verwende postfix und die Konfiguration mit cyrus imapd ist vergleichsweise einfach, wie du auch meiner Anleitung entnehmen kannst.

Den Parameter "pop_realhome" gibt es beispielsweise in der confixx 1.6.5 pro, die ich verwende gar nicht. Aber ich denke, der sollte auf 0 bleiben, damit confixx nicht irgendwas anlegt, was du sowieso nicht brauchst. Wenn du noch die Standard-Einstellungen von confixx drin hast, dann brauchst du da nichts zu ändern. Da nach der Umstellung auf cyrus imapd die Mails an den cyrus-imap server gehen werden auch keine "alten" Konten auf der platte angelegt.

Die Parameter von Confixx bzgl. pop3, sind ansonsten egal, weil die ja eh nicht genutzt werden. Wichtig ist nur, dass Confixx für jeden POP-User einen Account in der passwd anlegt, damit das mit der authorisation via pam funktioniert. Aber das macht Confixx auf jeden Fall
Nach der Installation ist folgendes möglich:
Anlegen/Verwalten der Mailboxen durch den User und Confixx
POP3, SMTP,IMAP (jeweils mit und ohne SSL).
Lieg ich da richtig?
smtp (mit und ohne ssl) ist der MTA (z.B. postfix) zuständig.
Cyrus Imapd bietet Dir pop3/imapd mit und ohne ssl.
-> Wie du die Keys erstellst, steht in der FAQ im Rootforum.

Wenn du manuell Konten hinzufügen willst (ohne confixx), dann gibt es da eine extra Datei. Allerdings reicht es im Normalfall, die konten via confixx anzulegen. Den Rest machen die Scripte von mir.
Kannst du vielleicht noch nen Tipp geben wo ich Infos finde um, so wie du, Spamassasin und event auch Virenkiller dazu zu bekommen? Hattest du da HowTo oder so?

Vielen Dank und schöne Grüße!
Bern
Dazu hab ich gerade kein Howto zur Hand. Gibt es allerdings sicherlich einige (Das war eine Aufforderung an alle anderen Leser welche zu posten :))

Verwenden würde ich (weil alles kostenlos):
- amavis-perl 0.3.12
- clamav Virenscanner (GPL, aber gut)
- SpamAssassin

Hier mein Code-Schmankerl, was ich einsetze (kombiniert spamassassin (spamc/d) mit amavis OHNE PROCMAIL!):

Code: Select all

more /etc/postfix/sa_filter.sh
#!/bin/sh
# DEBUG, set a remark if in a real-setup
# set -x

# Localize these.
INSPECT_DIR=/var/spool/filter
SENDMAIL="/usr/sbin/sendmail -i"
AMAVIS="/usr/local/amavis/amavis"

# Exit codes from <sysexits.h>
EX_TEMPFAIL=75
EX_UNAVAILABLE=69

# Clean up when done or when aborting.
trap "rm -f in.$$ out.$$" 0 1 2 3 15

# Start processing.
cd $INSPECT_DIR || { echo "$INSPECT_DIR does not exist"; exit $EX_TEMPFAIL;}

cat >in.$$ || { echo Cannot save mail to file; exit $EX_TEMPFAIL; }

# filter <in.$$ || { echo "Message content rejected"; exit $EX_UNAVAILABLE;}

# Das ist die reine Perl-Spamassassin version. Ist recht langsam.
# /usr/bin/spamassassin -P <in.$$ >out.$$|| { echo "Message content rejected"; exit $EX_UNAVAILABLE; }

# Das ist die spamc/spamd Version. Dazu muss aber der spamd laufen !
spamc -f <in.$$ >out.$$ || { echo Message content rejected; exit $EX_UNAVAILABLE; }

#$SENDMAIL "$@" <out.$$
$AMAVIS "$@" <out.$$

exit $?
Bei mir sieht dann der Weg eine E-Mailso aus:
postfix:25 (content_filter) -> sa_filter.sh (spamAssassin, dann amavis) -> postfix:10025 und dann weiter (Internet oder lokale Auslieferung).

OK. Hier noch ein paar details (AUSZUEGE) aus meiner Postfix Konfiguration. Aber davon nicht verunsichern lassen. Hab meinen MTA ein wenig "optimiert":
/etc/postfix/master.cf:

Code: Select all

smtp      inet  n       -       n       -       -       smtpd
        -o content_filter=spamfilter:
        -o cleanup_service=pre-cleanup
#628      inet  n       -       n       -       -       qmqpd
pickup    fifo  n       -       n       60      1       pickup
    -o cleanup_service=pre-cleanup

cleanup   unix  n       -       n       -       0       cleanup
    -o header_checks=
    -o mime_header_checks=
    -o nested_header_checks=
    -o body_checks=

......

spamfilter    unix  -       n       n       -       2       pipe
    -o disable_dns_lookups=yes flags=Rq user=vscan
    argv=/etc/postfix/sa_filter.sh -f ${sender} ${recipient}

localhost:10025     inet  n      -      n      -      10      smtpd
     -o content_filter=
     -o local_recipient_maps=
     -o relay_recipient_maps=
     -o myhostname=localhost
     -o smtpd_helo_restrictions=
     -o smtpd_client_restrictions=
     -o smtpd_sender_restrictions=
     -o smtpd_recipient_restrictions=permit_mynetworks,reject
     -o mynetworks=127.0.0.0/8

pre-cleanup         unix  n      -      n      -       0      cleanup
        -o canonical_maps=
        -o sender_canonical_maps=
        -o recipient_canonical_maps=
        -o masquerade_domains=
        -o virtual_alias_maps=
Wichtig dabei: content_filter nicht noch erneut in der main.cf setzen !

Die /etc/postfix/master.cf vereinfacht (damit es jeder versteht ohne Optimierung):

Code: Select all

smtp      inet  n       -       n       -       -       smtpd
        -o content_filter=spamfilter:

.....

spamfilter    unix  -       n       n       -       2       pipe
    -o disable_dns_lookups=yes flags=Rq user=vscan
    argv=/etc/postfix/sa_filter.sh -f ${sender} ${recipient}

localhost:10025     inet  n      -      n      -      10      smtpd
     -o content_filter=
     -o local_recipient_maps=
     -o relay_recipient_maps=
     -o myhostname=localhost
     -o smtpd_helo_restrictions=
     -o smtpd_client_restrictions=
     -o smtpd_sender_restrictions=
     -o smtpd_recipient_restrictions=permit_mynetworks,reject
     -o mynetworks=127.0.0.0/8
Mehr ist eigentlich für die postfix / spamassassin / amavis kombi nicht notwendig. Nur noch, dass amavis und spamassassin ordentlich installiert und lauffähig sind.


Ich hoffe, ich habe dich nicht gerade mit details erschlagen. Ich denke, du fängst erstmal einfach an, indem du den cyrus-imapd zu laufen bringst, dann folgt die schnittstelle zu confixx. Wenn das alles funzt, dann kannste anfangen mit virenscanner und spam tagging rumzuspielen.

Ach ja: Der Link zum cyrus-control Thread (darf ja hier nicht fehlen):
http://www.rootforum.org/forum/viewtopic.php?t=10012

Andere eventl. interessante Links zum Thema Troubleshooting Cyrus und co.:
http://www.rootforum.org/forum/viewtopic.php?t=11394
http://www.rootforum.org/forum/viewtopic.php?t=8442

SpamAssassin (installation):
http://www.rootforum.org/forum/viewtop ... 3678#83678

Gruß
Mark
Last edited by mark on 2003-05-29 00:41, edited 1 time in total.

bernostern
Posts: 129
Joined: 2003-02-09 12:52

Re: Confixx und Cyrus Imapd

Post by bernostern » 2003-05-28 22:05

Wow suuuper vielen Dank! Das ist mal ne Antwort :-D
mark wrote:[...]Ich denke, du fängst erstmal einfach an, indem du den cyrus-imapd zu laufen bringst, dann folgt die schnittstelle zu confixx. Wenn das alles funzt, dann kannste anfangen mit virenscanner und spam tagging rumzuspielen.[...]
Ja das werd ich auch machen. Morgen als erstes. Mich kitzelt es zwar schon mächtig in den Fingern, aber da ich heut schon im Biergarten war 8O werde ich mich erst morgen dran wagen. Da steht mir einiges bevor, aber ich denke es wird ein schönes erwachsenes Mailsystem für meinen Rootie.
Werde dann hier mal posten wies so gelaufen ist.


Danke für deine ausführliche Antwort und deine Mühe!
Bern

bernostern
Posts: 129
Joined: 2003-02-09 12:52

Re: Confixx und Cyrus Imapd

Post by bernostern » 2003-06-02 00:19

Hallo,
also ich dreh durch.
Ich bekomm den saslauthd nicht zum laufen. Unter Debian hab ich leider nur den Cyrys 1.5.x als Paket, deshalb wollte ich selbst cyrus-sasl und cyrus-imapd selbst kompilieren.

cyrus-sasl-2.1.13 schnurrt durch ihne Fehler, ich hab danach auch den /usr/local/sbin/saslauthd aber der lässt sich nicht starten.

Code: Select all

/usr/local/sbin/saslauthd -a pam
saslauthd[5633] :set_auth_mech   : unknown authentication mechanism: pam
Desweitern findet er bei der Installation von cyrus-imapd dann die libsasl2 nicht und bricht schon beim configure ab. Obwohl ich ihm den richtigen Pfad abgebe (denke ich);

Code: Select all

./configure --with-sasl=/usr/local/lib --with-prefix=/usr/local/imapd --with-cyrus-prefix=/usr/local/imapd --without-ucdsnmpd --enable-sieve --with-openssl=/usr/lib/ssl 
Hat jemand nen Tipp was hier falsch ist?

Danke und ersma Gute Nacht!

Bernhard

bernostern
Posts: 129
Joined: 2003-02-09 12:52

Re: Confixx und Cyrus Imapd

Post by bernostern » 2003-06-03 20:20

Hallo,

also die Installation von Cyrus hat jetzt mal geklappt. Es fehlte noch libsasl2-dev und libssl-dev. :roll:

So jetzt aber nochmal zu saslauthd:

Wenn ich cyrus-sasl-2.1.13 kompiliere, dann lässt sich der Dienst nicht starten:

Code: Select all

saslauthd[5633] :set_auth_mech   : unknown authentication mechanism: pam 
Ich bin mir leider nicht sicher, ob alles am rechten Fleck ist...(Debian)?

Könnte ich nicht auch den saslauthd hernehmen den ich von Debian bekomme (apt-get install libsasl2), der würde nämlich funktionieren.

Danke,
Bern

mark
Posts: 295
Joined: 2003-04-15 16:48
Location: Oldenburg

Re: Confixx und Cyrus Imapd

Post by mark » 2003-06-04 08:41

bernostern wrote:Hallo,

also die Installation von Cyrus hat jetzt mal geklappt. Es fehlte noch libsasl2-dev und libssl-dev. :roll:

So jetzt aber nochmal zu saslauthd:

Wenn ich cyrus-sasl-2.1.13 kompiliere, dann lässt sich der Dienst nicht starten:

Code: Select all

saslauthd[5633] :set_auth_mech   : unknown authentication mechanism: pam 
Ich bin mir leider nicht sicher, ob alles am rechten Fleck ist...(Debian)?

Könnte ich nicht auch den saslauthd hernehmen den ich von Debian bekomme (apt-get install libsasl2), der würde nämlich funktionieren.

Danke,
Bern
Klar. Kannst du machen.

Ich hoffe nur, du bekommst keine Probleme mit den Pfaden (vom socket). Ich habe letztens sasl2 und cyrus-imapd via yast installiert und versucht diese zum laufen zu bringen. Komischerweise erwartet cyrus-imapd den socket unter "/var/state/saslauthd/mux", der yast sasl hatte die aber unter "/var/run/mux" ... musste man mit parameter (-t socket) in der startdatei von saslauthd ändern. Hat sich geäußert mit:

Code: Select all

badlogin: localhost[127.0.0.1] plaintext user SASL(-1): No such file or directory
(oder so ähnlich).

Da hatten die von Suse zuviel rumgebastelt und den imapd vergessen... tsshh...

Ach ja: Das mit dem pam unbekannt liegt wahrscheinlich daran, dass du das pam_devel nicht installiert hast, und er beim configurieren pam deshalb deaktiviert. Solltest du beim configure sehen können.

Gruß
Mark

bernostern
Posts: 129
Joined: 2003-02-09 12:52

Re: Confixx und Cyrus Imapd

Post by bernostern » 2003-06-04 10:47

mark wrote:
bernostern wrote:Könnte ich nicht auch den saslauthd hernehmen den ich von Debian bekomme (apt-get install libsasl2), der würde nämlich funktionieren.
Klar. Kannst du machen.

Ich hoffe nur, du bekommst keine Probleme mit den Pfaden (vom socket). Ich habe letztens sasl2 und cyrus-imapd via yast installiert und versucht diese zum laufen zu bringen. Komischerweise erwartet cyrus-imapd den socket unter "/var/state/saslauthd/mux", der yast sasl hatte die aber unter "/var/run/mux" ... musste man mit parameter (-t socket) in der startdatei von saslauthd ändern.
Naja da ich schon die neuesten Versionen von cyrus-imapd usw. verwende würde ich auch gern von cyrus-sasl die neueste nehmen.
saslauthd sagt:

Code: Select all

saslauthd 2.1.13
authentication mechanisms: getpwent rimap shadow
also kein PAM.
mark wrote:Ach ja: Das mit dem pam unbekannt liegt wahrscheinlich daran, dass du das pam_devel nicht installiert hast, und er beim configurieren pam deshalb deaktiviert. Solltest du beim configure sehen können.
Und wieder mal hast du Recht: mein ./configure:
[...]
checking for pam_start in -lpam... (cached) no
checking for PAM support... no
[...]
Ich hab aber libpam0g und libpam0g-dev installiert. Ich habs auch mit --with-pam=/usr/lib und auch /lib udn /lib/security versucht, aber es bringt nichts.

Wie finde ich wo ich was hinzufügen muss?

Danke und Gruß,
Bern

mark
Posts: 295
Joined: 2003-04-15 16:48
Location: Oldenburg

Re: Confixx und Cyrus Imapd

Post by mark » 2003-06-04 15:55

bernostern wrote:

Code: Select all

saslauthd 2.1.13
authentication mechanisms: getpwent rimap shadow
also kein PAM.
mark wrote:Ach ja: Das mit dem pam unbekannt liegt wahrscheinlich daran, dass du das pam_devel nicht installiert hast, und er beim configurieren pam deshalb deaktiviert. Solltest du beim configure sehen können.
Und wieder mal hast du Recht: mein ./configure:
[...]
checking for pam_start in -lpam... (cached) no
checking for PAM support... no
[...]
Ich hab aber libpam0g und libpam0g-dev installiert. Ich habs auch mit --with-pam=/usr/lib und auch /lib udn /lib/security versucht, aber es bringt nichts.

Wie finde ich wo ich was hinzufügen muss?

Danke und Gruß,
Bern
Hi, der holt die Angabe aus dem cache (cached).
Loesch die config.cache, bzw. loesch das verzeichnis und pack es neu aus. Wie du willst.

Und probier es natürlich auch nur mit --with-pam (ohne parameter). da sollte er die Dateien bereits finden.

Mit pam sollte das etwa so aussehen:

Code: Select all

checking for pam_start in -lpam... yes
checking for security/pam_appl.h... yes
checking for PAM support... /lib/security
Um zu sehen, ob alles mit deinen PAM-Bibliotheken stimmt, kannste mal "ld -lpam" eingeben:

Code: Select all

# ld -lpam
ld: warning: cannot find entry symbol _start; not setting start address
Das sollte dabei rauskommen..

Gruß
mark

bernostern
Posts: 129
Joined: 2003-02-09 12:52

Re: Confixx und Cyrus Imapd

Post by bernostern » 2003-06-05 21:31

Hallo,
mark wrote:Hi, der holt die Angabe aus dem cache (cached).
Loesch die config.cache, bzw. loesch das verzeichnis und pack es neu aus.
Oh mei langsam wirds peinlich... :oops:

Postfix,Cyrus-IMAP und POP, saslauthd läuft jetzt endlich, nur leider hauts mit der Anmeldung nicht hin. Ich kann mich von der Konsole aus beim SMTP,POP und IMAPD anmelden und es scheint alles ok zu sein. In der /etc/postfix/sasl/smtpd.conf ist pwcheck_method : saslauthd

Auch beim saslauthd kann ich mich erfolgreich (mit diesem testsaslauthd) anmelden und es laufen 5 Prozesse mit PAM.
Nur die Anmeldung von außen haut nicht hin.

Postfix:
warning: SASL authentication problem: unrecognized plaintext verifier saslauthd
warning: pD9EBD223.dip.t-dialin.net[217.235.210.35]: SASL LOGIN authentication failed


Cyrus:
badlogin: pD9EBD223.dip.t-dialin.net 217.134.xx.xx plaintext web1p1 SASL(-1): generic failure: checkpass failed


Was muss ich denn sonst noch machen, damit die Anmeldung klappt?

Schöne Grüße,
Bern

mark
Posts: 295
Joined: 2003-04-15 16:48
Location: Oldenburg

Re: Confixx und Cyrus Imapd

Post by mark » 2003-06-06 11:28

bernostern wrote:Postfix,Cyrus-IMAP und POP, saslauthd läuft jetzt endlich, nur leider hauts mit der Anmeldung nicht hin. Ich kann mich von der Konsole aus beim SMTP,POP und IMAPD anmelden und es scheint alles ok zu sein. In der /etc/postfix/sasl/smtpd.conf ist pwcheck_method : saslauthd

Auch beim saslauthd kann ich mich erfolgreich (mit diesem testsaslauthd) anmelden und es laufen 5 Prozesse mit PAM.
Nur die Anmeldung von außen haut nicht hin.

Postfix:
warning: SASL authentication problem: unrecognized plaintext verifier saslauthd
warning: pD9EBD223.dip.t-dialin.net[217.235.210.35]: SASL LOGIN authentication failed


Cyrus:
badlogin: pD9EBD223.dip.t-dialin.net 217.134.xx.xx plaintext web1p1 SASL(-1): generic failure: checkpass failed


Was muss ich denn sonst noch machen, damit die Anmeldung klappt?

Schöne Grüße,
Bern
Hi spontan würde ich sagen, dass das dein Problem ist:

Code: Select all

warning: SASL authentication problem: unrecognized plaintext verifier saslauthd 
Vermutung: Deinem postfix fehlt die sasl2 unterstützung...

Zeig mal:

Code: Select all

ldd /usr/libexec/postfix/smtpd
(Wenn da deine smtpd liegt).

Sollte etwa so aussehen:

Code: Select all

/usr/libexec/postfix # ldd smtpd
        libm.so.6 => /lib/libm.so.6 (0x4001e000)
        libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x40040000)
        libssl.so.0.9.6 => /usr/lib/libssl.so.0.9.6 (0x40054000)
        libcrypto.so.0.9.6 => /usr/lib/libcrypto.so.0.9.6 (0x40084000)
        libpcre.so.0 => /usr/lib/libpcre.so.0 (0x4015c000)
        libdb-4.0.so => /usr/lib/libdb-4.0.so (0x40166000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x4020f000)
        libresolv.so.2 => /lib/libresolv.so.2 (0x40224000)
        libc.so.6 => /lib/libc.so.6 (0x40236000)
        libdl.so.2 => /lib/libdl.so.2 (0x40369000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
Ist postfix ein Paket oder von Source ?

Gruß
Mark

bernostern
Posts: 129
Joined: 2003-02-09 12:52

Re: Confixx und Cyrus Imapd

Post by bernostern » 2003-06-07 11:56

Hi,
Hi spontan würde ich sagen, dass das dein Problem ist:

Code: Select all

warning: SASL authentication problem: unrecognized plaintext verifier saslauthd 
Das hab ich mir auch gedacht :)


Edit: So jetzt hab ich den Spezi nochmal aus den Sourcen kompiliert. Es hat vorher die libsasl2 gefehlt. Aber jetzt schauts so aus:

Code: Select all

/# ldd /usr/lib/postfix/smtpd
        libmysqlclient.so.10 => /usr/lib/libmysqlclient.so.10 (0x41c93000)
        libz.so.1 => /usr/lib/libz.so.1 (0x41cc9000)
        libm.so.6 => /lib/libm.so.6 (0x41cd9000)
        libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x41cfa000)
        libssl.so.0.9.6 => /usr/lib/libssl.so.0.9.6 (0x41d0c000)
        libdb3.so.3 => /usr/lib/libdb3.so.3 (0x41d39000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x41de1000)
        libresolv.so.2 => /lib/libresolv.so.2 (0x41df5000)
        libc.so.6 => /lib/libc.so.6 (0x41e05000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x41f22000)
        libdl.so.2 => /lib/libdl.so.2 (0x41f50000)
        libcrypto.so.0.9.6 => /usr/lib/libcrypto.so.0.9.6 (0x41f53000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x41c7c000)
Vermutung: Deinem postfix fehlt die sasl2 unterstützung...
Sollte jetzt passen, oder?
Wenn es aber nur Postfix fehlt, warum ist tritt bei dem Cyrus ein sehr ähnlicher Fehler auf? Cyrus und Cyrus-sasl hab ich nach dem Howto installed was du auf deiner wiki-Seite angibst (der erste Link auf http://tldp.org/HOWTO/Postfix-Cyrus-Web ... onfig.html)

Ist postfix ein Paket oder von Source ?
Naja jetzt ist es ein Sourcepaket. Leider ist der nächste Fehler da:

Code: Select all

warning: SASL authentication problem: unknown password verifier
warning: pDxxxxx.dip.t-dialin.net[217.235.xxx.xxx]: SASL LOGIN authentication failed

Danke und schönen Gruß,
Bern

kahler
Posts: 130
Joined: 2003-04-18 17:42
Location: /root

Re: Confixx und Cyrus Imapd

Post by kahler » 2003-06-07 14:04

bernostern wrote: Leider ist der nächste Fehler da:

Code: Select all

warning: SASL authentication problem: unknown password verifier
warning: pDxxxxx.dip.t-dialin.net[217.235.xxx.xxx]: SASL LOGIN authentication failed
Ich könnte fast drauf wetten, du hast in deiner main.cf ein

Code: Select all

smtpd_sasl_local_domain = $mydomain
oder sowas ähnliches drin stehen :wink:
Einfach auf

Code: Select all

smtpd_sasl_local_domain = 
ändern und nochmal probieren.

bernostern
Posts: 129
Joined: 2003-02-09 12:52

Re: Confixx und Cyrus Imapd

Post by bernostern » 2003-06-07 16:09

Oh mein Gott ich glaubs nicht:
---->>> es funktioniert :P :) :-D

Ich werd jetzt mal gemütlich alles einrichten und dann nochmal berichten!


Vielen Dank an alle derweil!!
Bern

kahler
Posts: 130
Joined: 2003-04-18 17:42
Location: /root

Re: Confixx und Cyrus Imapd

Post by kahler » 2003-06-07 16:19

bernostern wrote:O---->>> es funktioniert :P :) :-D
Hat mein Tip geholfen, oder wars was anderes??

bernostern
Posts: 129
Joined: 2003-02-09 12:52

Re: Confixx und Cyrus Imapd

Post by bernostern » 2003-06-07 17:45

Du hast die Wette gewonnen. :-) Das war, nach Marks Bemühungen (danke nochmal für die Geduld!), noch das i-Tüpfelchen. Es läuft zwar noch nicht alles rund, aber die Anmeldung klappt, das ist schonmal Vorrausetzung.
Jetzt kanns weiter gehen. Schwere Geburt :?

Gruß,
Bern

bernostern
Posts: 129
Joined: 2003-02-09 12:52

Re: Confixx und Cyrus Imapd

Post by bernostern » 2003-06-13 14:24

Hallo,

Ich kann mich jetzt über saslauthd anmelden, die mit Confixx angelegten Postfächer werden brav zu Cyrus transferiert, alles klappt soweit, auch mit SSL. Echt goil :-D

Edit: Fehler hat sich grad erledigt, momentan scheint alles zu funken!


Danke,
Bern

bernostern
Posts: 129
Joined: 2003-02-09 12:52

Re: Confixx und Cyrus Imapd

Post by bernostern » 2003-06-23 20:37

Hallo und guten Tag,

@Mark: Kann ich dein sa_filter.sh auch so verwenden, dass nur Spamassassin seine Arbeit tut und amavis ganz wegbleibt?

Ich habe heute

Code: Select all

$AMAVIS "$@" <out.$$ 
in der vorletzten Zeile auskommentiert, bzw. den Eintrag localhost:100025[...] in der master.cf braucht man dann ja auch nicht und die mails wurden nicht mehr verteilt.

Im mail-log steht, dass die mail noch durch Spamassassin geprüft wurde und weitergeschickt wurde. Ankommen tut sie nicht.

Wird ohne Amavis der Maildurchlauf unterbrochen?

Schöne Grüße,
Bern

mark
Posts: 295
Joined: 2003-04-15 16:48
Location: Oldenburg

Re: Confixx und Cyrus Imapd

Post by mark » 2003-06-24 18:33

Hi Bern,

nach dem Script müssen die Mails in postfix wieder eingefügt werden.

Um ohne Amavis zu arbeiten, brauchst du eigentlich nur die AMAVIS Zeile auskommentieren und dafür die "$SENDMAIL "$@" <out.$$" eintragen. Dann wird die E-Mail nach SpamAssassin lokal wieder eingespeist. Dazu muss natürlich auch der Pfad zu sendmail oben im Script stimmen.

Wie gesagt:
Wichtig dabei, content_filter MUSS leer sein in der main.cf, da sonst eine Endlosschleife entsteht.

Gruß
Mark

doc
Posts: 80
Joined: 2003-01-02 05:47
Location: Mainz

cyrus, postfix, amavisd-new, spamassasin, clamav, confixx ?

Post by doc » 2004-04-02 08:03

Tja am rudern bin ich auch...

Es funktioniert trotzdem nicht. Wo liegen meine Fehler?


Als Grundlage habe ich folgende Artikel.

http://www.rootforum.org/forum/viewtop ... am&start=0

Das ganze mit Procmail habe ich nicht hinbekommen.
Suse 8.1, Confixx 2.0 postfix upgedatet, Home liegt in /srv/www/htdocs/webxx Der Rechner ist neu und soll noch Typo3 bekommen.

Cyrus läuft. Postfächer sind in /var/spool/imap/user/*web1p1
leider nicht mehr die boxen in /var/mail auf die man recht schnell von unterwegs im Webmin zugreifen konnte.
Cyrus installation wie hier:
http://www.rootforum.org/forum/viewtop ... sc&start=0

amavisd-new als RPM von dieser Anleitung:
http://www.linux-club.de/viewtopic.php? ... ght=clamav

amavisd.conf liegt in /etc/amavisd.conf. home in /var/lib/amavis

leider ging Clamav nicht, deshalb kompiliert mit ./configure --sysconfdir=/etc

/etc/postfix/main.cf:

readme_directory = /usr/share/doc/packages/postfix/README_FILES
mail_spool_directory = /var/mail
canonical_maps = hash:/etc/postfix/canonical
virtual_maps = hash:/etc/postfix/virtual, hash:/etc/postfix/confixx_virtualUsers, hash:/etc/postfix/confixx_localDomains
relocated_maps = hash:/etc/postfix/relocated
transport_maps = hash:/etc/postfix/transport
sender_canonical_maps = hash:/etc/postfix/sender_canonical
masquerade_exceptions = root
masquerade_classes = envelope_sender, header_sender, header_recipient
#myhostname = h5803.serverkompetenz.net
myhostname = gotodoc.com
inet_interfaces = all
masquerade_domains =
mydestination = $myhostname, localhost.$mydomain
defer_transports =
disable_dns_lookups = no
relayhost =
content_filter = smtp:[127.0.0.1]:10024
mailbox_command =
mailbox_transport = cyrus
#mailbox_transport = procmail
smtpd_sender_restrictions = hash:/etc/postfix/access
smtpd_client_restrictions =
smtpd_helo_required = no
smtpd_helo_restrictions =
strict_rfc821_envelopes = no
maps_rbl_domains =

smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,check_relay_domains
alias_maps = hash:/etc/aliases

smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes


/etc/postfix/master.cf:

Code: Select all

smtp      inet  n       -       n       -       -       smtpd
        -o content_filter=spamfilter:
        -o cleanup_service=pre-cleanup
#smtps    inet  n       -       n       -       -       smtpd
#  -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
#submission     inet    n       -       n       -       -       smtpd
#  -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
#628      inet  n       -       n       -       -       qmqpd
pickup    fifo  n       -       n       60      1       pickup
    -o cleanup_service=pre-cleanup
cleanup   unix  n       -       n       -       0       cleanup
    -o header_checks=
    -o mime_header_checks=
    -o nested_header_checks=
    -o body_checks=

qmgr      fifo  n       -       n       300     1       qmgr
#qmgr     fifo  n       -       n       300     1       nqmgr
#tlsmgr   fifo  -       -       n       300     1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
flush     unix  n       -       n       1000?   0       flush
smtp      unix  -       -       n       -       -       smtp
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp

spamfilter    unix  -       n       n       -       2       pipe
    -o disable_dns_lookups=yes flags=Rq user=vscan
    argv=/etc/postfix/sa_filter.sh -f ${sender} ${recipient}



localhost:10025 inet    n       -       n       -       -       smtpd

# localhost:10025 inet  n       -       n       -       -       smtpd -o content_filter=
     -o content_filter=
     -o local_recipient_maps=
     -o relay_recipient_maps=
     -o myhostname=localhost
     -o smtpd_helo_restrictions=
     -o smtpd_client_restrictions=
     -o smtpd_sender_restrictions=
     -o smtpd_recipient_restrictions=permit_mynetworks,reject
 -o mynetworks=127.0.0.0/8


pre-cleanup         unix  n      -      n      -       0      cleanup
        -o canonical_maps=
        -o sender_canonical_maps=
        -o recipient_canonical_maps=
        -o masquerade_domains=
        -o virtual_alias_maps=



#
# Interfaces to non-Postfix software. Be sure to examine the manual
# pages of the non-Postfix software to find out what options it wants.
# The Cyrus deliver program has changed incompatibly.
#
cyrus     unix  -       n       n       -       -       pipe
#  flags= user=cyrus argv=/usr/cyrus/bin/deliver -r ${sender} -m ${extension} ${user}
  flags=R user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -r $(sender) -m ${extension} ${user}

#    flags=R user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -m ${extension} ${user}
uucp      unix  -       n       n       -       -       pipe
  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail    unix  -       n       n       -       -       pipe
  flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp     unix  -       n       n       -       -       pipe
  flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient
vscan     unix  -       n       n       -       10       pipe
  user=vscan argv=/usr/sbin/amavis ${sender} ${recipient}
procmail  unix  -       n       n       -       -       pipe
  flags=R user=nobody argv=/usr/bin/procmail -t -m /etc/procmailrc ${sender} ${recipient}

#flags=R user=mail argv=/usr/bin/procmail -t -m USER=${user}
#  EXTENSION=${extension} /etc/procmail/procmailrc
/etc/postfix/sa_filter.sh:

Code: Select all

more /etc/postfix/sa_filter.sh
#!/bin/sh
# DEBUG, set a remark if in a real-setup
# set -x

# Localize these.
INSPECT_DIR=/var/spool/filter
SENDMAIL="/usr/sbin/sendmail -i"
AMAVIS="/usr/local/amavis/amavis"

# Exit codes from <sysexits.h>
EX_TEMPFAIL=75
EX_UNAVAILABLE=69

# Clean up when done or when aborting.
trap "rm -f in.$$ out.$$" 0 1 2 3 15

# Start processing.
cd $INSPECT_DIR || { echo "$INSPECT_DIR does not exist"; exit $EX_TEMPFAIL;}

cat >in.$$ || { echo Cannot save mail to file; exit $EX_TEMPFAIL; }

# filter <in.$$ || { echo "Message content rejected"; exit $EX_UNAVAILABLE;}

# Das ist die reine Perl-Spamassassin version. Ist recht langsam.
/usr/bin/spamassassin -P <in.$$ >out.$$|| { echo "Message content
rejected"; exit $EX_UNAVAILABLE; }

# Das ist die spamc/spamd Version. Dazu muss aber der spamd laufen !
#spamc -f <in.$$ >out.$$ || { echo Message content rejected; exit
#$EX_UNAVAILABLE; }

#$SENDMAIL "$@" <out.$$
$AMAVIS "$@" <out.$$

exit $?

Wer kann mir weiterhelfen?


Wilfried