[linux-elitists] Postfix vs Exim
Sat Sep 21 21:37:15 PDT 2002
<quote who="Marc MERLIN">
> - I know that because postfix isn't monolithic like exim, and that one of
> the prices to pay is that it doesn't do deduping (i.e. if a message is
> sent to you and an email alias, you get two copies). If postfix's secure
> module approach has other drawbacks, I'm interested to hear them
I'd call this a very peripheral feature for an *MTA*. You can do it in
procmail or some MUAs.
> - I have been told that postfix can do content filtering and bounce at SMTP
> time (like exim4's ACLs) and after data (like exim's system_filter).
> Confirmation would be appreciated
It can do header and bodychecks with regexps or PCREs, as well as sending
off to pipe transports for more advanced stuff.
> - I don't know if postfix can do fined grained ACLs like exim4 and do RBL
> rejects but only if the from domain matches a string, the connecting host
> is in a certain IP range, and none of the receipients is postmaster for
> instance. Is postfix that configurable?
To a point, yes. There's a couple of patches to do some crazier things such
as per-client restriction rules, etc.
> - I don't think postfix can do SMTP callbacks or callouts like exim.
> Confirmation appreciated.
Non-exim-jargon feature description, please.
> - I'm not sure that postfix can do the equivalent of exim's local scan or
> sendmail's milters. Confirmation appreciated
Apart from the header/content checks, it supports external transports and
transport tables. This is far, far more scalable than milters and such.
Rather than launching extra processes, etc., you send the mail to another
transport via pipe, lmtp, smtp, yada.
> - postfix has an extensive lookup cache, which is a huge advantage over exim
> if you are doing ldap lookups (ldap is slow, and exim will not cache the
> lookup longer than the process runs)
You might want to research that a bit more, it's a religious issue. :-)
> - exim can lookup users to deliver for in ldap or nis by using getpwnam,
> using the C library and nscd, but if it does so, it cannot distiguish a
> non existant users from a connection refused.
> As a result, you should not use getpwnam and libnss_* for any MTA, but
> instead you should have the MTA behave as a NIS or ldap client and do the
> query yourself.
> This is possible, but a bit kludgy in exim, and if you do so, exim will
> not be able to cache the result.
> I've been told that postfix supports this better and will cache the result
> of the nis/ldap queries as if you were using nscd
> Confirmation appreciated.
Apart from the caching (see above, religious issue), yes, postfix is a great
MTA when you're using LDAP.
> - Both MTAs support TLS
> - Exim is the only MTA I know that can create virtual aliases on the fly
> (i.e. mailman aliases)
Sounds like a non-MTA feature in an MTA again. ;-)
> - Can postfix, like exim, do mail routing depending on a file (i.e. run
> procmail if there is a ~user/.procmailrc or run vacation if there is a
> ~/.vacation.msg, etc...)
No. Postfix leans towards 'do what I say', which I think is a safer and more
auditable POV for an MTA than 'do what I mean'.
> - Does postfix support complete header rewriting (on all the headers, per
> header and with regular expressions), like exim does?
No. (Why would an MTA need to do this, if it couldn't replace the
configurability with a sensible feature?)
> - What other cool things can postfix do that exim can't?
Postfix is an MTA first and foremost, "cool features" need not apply (this,
in itself, is one of my favourite features of Postfix... it's crack free).
More information about the linux-elitists