3 ms·
I used to run Qmail back in the day for quite a few domains. It never failed, ever. I followed "Life with Qmail" and that worked rather well. I've moved on s
by gerdesj 4y ago
I used to run Qmail back in the day for quite a few domains. It never failed, ever. I followed "Life with Qmail" and that worked rather well.
I've moved on somewhat - I generally run Exim with rspamd for first touch SMTP these days. However I would say that I took on board a lot of attitude from Qmail and DJB.
Thank you Dan for being a complete and utter outspoken, opinionated and knowledgeable knobend. We need rather more of you and less of the usual twitterers and navel gazers.
- pengaru 4y agoI dunno man, exim has had some pretty nasty CVEs in recent years. https://www.opencve.io/cve?vendor=exim https://www.opencve.io/cve?vendor=exim
- tptacek 4y agoExim's reputation is baffling to me. It's a first-generation (C-language, memory-unsafe, fully-privileged, libc-backed) MTA based on SMail. It's always been about as resilient as you'd expect given that pedigree. And yet, somehow, over the last 15 years it's been perceived as a secure mailer, like qmail and Postfix (second-generation privilege-separated security-first designs).
- gjvc 4y agoYes, agree 100x. Never understood its popularity. I expect once people had migrated away from sendmail and m4 to something sane they were not minded to make another MTA migration again any time soon after that :-) (cue responses about sendmail.mc not being all that bad...)DNL
- pengaru 4y agoSame, and I've never understood why Debian installs insist on pulling exim into my life. I used to use qmail for ages. Actually, one of my first paid dev jobs was as a contractor for a small company that supported qmail/vpopmail back in the shared hosting heydays. Lately I just run postfix in a container and hope for the best. qmail just became too obscure and borderline abandoned, and I got tired of having to constantly patch it for modern features. It was starting to feel again like running Apache+SSL before SSL was an actual supported feature; almost certainly full of exploitable bugs introduced by hacked-in modernities.
- hiq 4y ago> Same, and I've never understood why Debian installs insist on pulling exim into my life. I don't have exim on my system, and I don't think I uninstalled it manually, how did you get exim on yours?
- pengaru 4y ago> I don't have exim on my system, and I don't think I uninstalled it manually, how did you get exim on yours? "Exim generally comes with default Debian installation" [0] "Keep Exim as default" [1] "Exim is the MTA (Mail Transfer Agent) installed by default on new debian installations" [2] [0] https://wiki.debian.org/Exim [1] https://wiki.debian.org/Debate/DefaultMTA [2] https://wiki.debian.org/PkgExim4
- solar-ice 4y agoIt's also /well/ clearer as an admin than configuring Postfix, which seems to have random options which do random things in multiple logical places. From an outside perspective, Postfix is a "big ball of muck", while configuring exim involves defining logical pipelines.
- tptacek 4y agoI don't know anything about Exim's UX, because reading the code (something I did a decent bit of back in the day) convinced me never to use it. But however better Exim's UX might be, it's important to understand that it's a first-generation MTA design. The second generation of MTAs happened specifically to address the security calamity that the first generation architecture caused: minimal privileges and fine-grained privilege separation, root-and-branch replacement of both standard C library functions and of standard C idioms that create memory corruption flaws, and, probably most importantly, a design that has security as an objective, informed by (well, what was in ~1996) the best understanding we had of secure programming. The second generation was not entirely successful; in 2022 (and, for that matter, 2012), it essentially makes no sense to run a memory-unsafe MTA; memory-safe userland programs written in popular, general-purpose languages have no trouble keeping up with workloads much more stringent than SMTP. (If you're curious, I'd say that memory-safe languages and database backends --- keeping individual messages off the filesystem --- defined the third and subsequent generations). But Postfix and qmail were a giant step forward from Sendmail and SMail; like, there's just no comparison. So far as I can see, Exim did not take that step; it's hard to see how it could, because Exim did not start with a security-first design (you can find comp.security.unix threads from back in the day that discuss this in more detail).
- gerdesj 4y agoTom, what on earth is a nth generation MTA? SMTP has largely remained static as a standard (when did that EHLO thing arrive?) for decades. OK, there are a lot of add ons such as SPF, DKIM and DMARC. I'm also not sure what UX means either in this context - its an MTA. I'll take your comment on the quality of the code as stated - I respect your judgement on that but bear in mind that Exim is continuously developed. I lurk on their mailing lists and Jeremy and Co are continuously refining it. It is a single binary and that single binary is written in C but whenever CVEs come up, they seem to be handled with professionalism and alacrity. So, perhaps you might like to give it another go. It is rather powerful in what you can do with it. For example you can update exim.conf and then run exim -bhc w.x.y.z and run through a SMTP session to test it as though you are coming from the IP address w.x.y.z. Anyway, I suspect I have way worse binaries from a purist's perspective doing stuff on my systems than Exim. However, I do know I've shifted many, many millions and perhaps billions of emails with it without any snags.