[Megoldva] postfix sendmail content_filter loop

Fórumok

Hali!

Van egy nagyszeru content_filter, bizonyos porton mukodik , beirja egy adatbazisba a feladot es a cimzettet.
Most van par hosting szerver, a problemak:
- nem porton jon a level, hanem sendmail adja fel
- pickup-nak megadhato content_filter, de
- szinten a sendmailen adja fel, azaz hurok lesz.

Megoldas term. az lehetne, hogy relay host az a szerver (egy spamfilter proxy), ahol vegulis bejonnek a levelek, meg smtp-n tud kudleni az user, ezek a hosting gepek is azon kuldjenek. Nem jo, mert ha az egyik parforintos ugyfel a wp 0.0.0.0.1 beta pluginjaval elkezd spammelni, akkor senki sem tud levelet kuldeni...
Tehat marad az, hogy a hosting szerver ezzel a kis scripttel eleri a spamfilter adatbazisat.

Ennyi az elozmeny, a problema a fenti: hurok.

Hozzászólások

Amik eszembe jutottak megoldas:
- nem content filter, hanem "valami" mas. Affele "tee", vagyis a level tovabbmegy es egyben egy masolat megy a scriptnek. De az is eleg lenne, ha a felado+cimzettet at tudnam adni.
- ha nem sendmail adna vissza, hanem mondjuk porton. Ezt nem tudom, hogy kellene egy bash scriptben megoldani....
- postkick programot nezegettem, de nem jottem ra, hogyan mukodik. Sehol egy pelda.
- sendmailnek van egy "-O" kapcsoloja, itt elvileg meg lehet adni, hoyg "-O content_filter=''", de ez ignored.

Otlet valakinek ? En kifogytam.

--
http://www.micros~1
Rekurzió: lásd rekurzió.

"nem content filter, hanem "valami" mas. Affele "tee", vagyis a level tovabbmegy es egyben egy masolat megy a scriptnek. De az is eleg lenne, ha a felado+cimzettet at tudnam adni."

Mindenről egy másolat (always-bcc) egy fiókba, és azt feldolgoztatod valami fetchmail + saját script-tel?

Szoval, a megoldas nalam. (Nem how-to, szoval ha nem megy, ne kerdezgesse senki, miert van, nezzen utana....Csak segitseg.)

yum install procmail
adduser -d /var/spool/awl -r awl
Ket filet letrehozni /var/spool/awl alatt (es persze usergroupot beallitani rajtuk)

touch /var/spool/awl/.forward
touch /var/spool/awl/.procmailrc

Postfixbe egyetlen sor kell, main.cf:
always_bcc = awl

Erdetileg egy shell + egy perl script volt, a shell tipikusan olyan, amit a postfix filter keszitesnel irnak, sendmaillel, anyamtyukjaval, itt nem kell, csak a perl script. Shell script azert nem kell, mert a levelre sincs szukseg feldolgozas utan.

cat /var/spool/awl/.forward
| "/usr/bin/procmail"

cat /var/spool/awl/.procmailrc
PATH=/bin:/usr/bin:/usr/sbin
VERBOSE=yes
LOGFILE=$HOME/procmail.log

:0H
*Received: from smtp.xy.hu*
/dev/null
:0
*
|$HOME/auto_whitelist.pl

Voltakeppen azt hasznaltam ki, hogy egyetlen dolog biztos a kintrol jovo levelben: "smtp.xy.hu" dobja at. Az az MX-e minden itteni domainnek.
Mert feladni lehet ugye a weblapon sendmailben, webmailen (szinten sendmail), de a weblapon hasznalhat smtp-t is, vagy hasznalhat levproggit, ami szinten smtp. Ez az egy volt, ami biztosan kivulrol jovo levelet jelent.
Nyilvan lehet kuldeni ezenkivul is, de ez le lesz tiltva a szerveren. Vagy le van, mar nem emlekszem. Mindenesetre nem MX, csak A, tehat _elvileg_ ide is kuldhet valaki, de legal esetben nem tul valoszinu.

Lenyeg, hoyg erre a hetre eleg volt, koszonom az otleteket, mukodik.

--
http://www.micros~1
Rekurzió: lásd rekurzió.