Linux за българи: Форуми

Linux секция за напреднали => Хардуерни и софтуерни проблеми => Темата е започната от: Sertys в Jun 07, 2010, 16:27



Титла: Postfix catch-all policy
Публикувано от: Sertys в Jun 07, 2010, 16:27
Не желая да създавам виртуални пощенски кутии, а да вземам писмата които идват от потребителите към адреси от сорта на 08********@а.б . Решението се пада in-house sms gateway. Не ми е проблем да си напиша парсър, който да слага входящите съобщения в мейлдир-а, но да вземам изходящите и да ги транспортирам правилно до някой скрипт не се сещам как да направя. Евентуално unix pipe към скрипта но как да създам regexp match за този транспорт?


Титла: Re: Postfix catch-all policy
Публикувано от: laskov в Jun 07, 2010, 17:40
Не ми стана много ясно каква е задачката и какъв е проблемът, но според мен МТА-тата са много гъвкави и могат всичко. Т.е. всякакви скриптове и пайпове са излишни, нужно е конфигуриране. Струва ми се, че на теб ти трябва нещото, което в sendmail се нарича aliases и доколкото знам, в Postfix е същото. (С уговорката, която направих в началото.)


Титла: Re: Postfix catch-all policy
Публикувано от: Sertys в Jun 07, 2010, 19:01
Точно aliases ми трябваше, но гъвкави алиаси. Намерих правилното решение доста бързо, само трябваше да си охладя главата.
header_checks = regexp:/etc/postfix/header_checks
и вътре:
/^0.*@a.bg/ FILTER smse:prime

После кратък запис в мастер.cf, за да се създаде smse deliver-y agent-a.

Сега всички съобщения към примерно 088888888@a.bg се пайп-ват към perl script, който парсва съдържанието и праща смс на 3598888888(така иска гейт провайдъра).

Понякога просто трябва да си починеш малко :)


Титла: Re: Postfix catch-all policy
Публикувано от: lod в Jun 18, 2010, 17:08
другият вариант е през transport_maps

a.bg или sms.a.bg -> smse (pipe)


Титла: Re: Postfix catch-all policy
Публикувано от: lod в Jun 18, 2010, 17:10
другият вариант е през transport_maps

a.bg или sms.a.bg -> smse (pipe)

както си го направил с филтър, трябва да връщаш обратно резултат от проверката, за да знае системата какво да прави по - нататък с писмото, ако ти се счупи филтъра може да се получи bounce или NDR