back
308 comments
Wow... having just gone through a 20+ hour byzantine nightmare of setting up postfix & dovecot (that's on top of an already deep understanding of SMTP, DKIM, SPF, DMARC, SASL, etc.) and now struggling through an even more kafkaesque nightmare of rspamd (with its 3 different programming languages needed to understand its 92+ configuration files, which you can't modify by the way, you have to add your own "override" and "merge" config files on top of that mess) for the simple purpose of getting it to DKIM-sign my stupid outgoing messages the way all the big mail systems want... I wish I had seen mox earlier!

Not sure its quality, but battling with postfix & dovecot's 20+ years of legacy cruft, I felt compelled many times to just throw them aside and build something like this on first principles - simple single binary mail server with modern protocol support, sans all the archaic UNIX-account timesharing-era sendmail bullshit that still lives on in the mainstays.

Going to have a look at this one, despite now having moderately deep postfix & dovecot knowledge.

> postfix & dovecot's 20+ years of legacy cruft

That's not my experince - I use postfix and dovecot for years and they are rare examples of high quality software to me. I don't see any cruft. They are flexible which make learning and configuration harder compare to opinionated software where most decisions made for you by a developer and you have not choice but to accept them. I myself view sometimes see flexibility as a disadvantage but IMHO they strike a good balance. Postix often criticized by Exim user for not being flexible/configurable enough. And they don't force to use unix accounts, it's just one of options.

Having said that I would agree that using a mail server which combines all in one package is easier than unix way with multiple specialized parts combined. For a novice it could be a challenge to stichs (configure) multiple parts together, especially if you don't know how to test each part separately and blidnly follow some how-to.

Where you can find plenty of legacy cruft is mail standards and implmenting them correctly is not an esty task that's why I trust Postfix and wary of anything new until it battle tested on a large number of servers.

Took me weeks to perfect our own setup based on Postfix, Dovecot, Roundcube with some patches, rspamd with attachment-type whitelisting and a bazillion other features, clamav with extra patterns, plus the many tweaks and enhancements you need to dig out from obscure places.

Like fts-flatcurve, an archive plugin for dovecot that can find stuff in 30 years worth of mails in a second, over IMAP in Roundcube. Or rspamd settings to blacklist not a single IP but an entire ASN of misbehaving colo clients. IMAP with namespaces is also a true pain to configure. Or setting bzip2 compression for an auto-expunged journal for spam, and archive without expunge. Painful.

If you made it this far, you will find that your IP address is tainted. So choosing a hoster that keeps his backyard clean from spammers is necessary, otherwise you will suffer by association. Did I mention SPF records in DNS.

So I consider our server a piece of art. 30 years in operating systems certainly helped.

OpenDKIM works fine, and is easy to configure. My first time config was like 30 mins following the guide here: https://wiki.debian.org/opendkim

And postfix is exceptionally well documented software. One of the best. It's easy to script config modifications thanks to `postconf` and do all kinds of interesting stuff with milters or policy servers, etc.

> Wow... having just gone through a 20+ hour byzantine nightmare of setting up postfix & dovecot

Did you do this by hand / manually, or use a 'pre-canned' solution like:

* https://mailcow.email

* https://workaround.org

I just gave up and now use https://github.com/docker-mailserver/docker-mailserver

It hasn’t given me many issues so far! Nice to see new options popping up, though!

I once set up qmail on a home server. Looking back, I have no idea how I managed.
I ended up changing to mailu recently, very happy with it. https://mailu.io
One does not simply send mail these days
I've hosted my mailserver myself for years now. I recently (a number of months ago) have started using Mox for my mail server (after using stalwart, manual postfix/dovecot, a couple others). It's a perfect solution for a small personal mailserver.

It's among the simplest (/least complicated) mail servers I've used, and I have to waste basically zero time on it. Running backup & update every couple months takes <5 min.

However, I noticed: when I showcase it to some people, some of them mistake the very simple minimalist web interface for being ‘outdated’ or similar - it appears that to be "modern", things are required to be extremely bloated, and even technical people look down on fast (seriously: try it) clutter-less design.

So happy to see that. Hopefully more people will run their own E-mail instead of being slaves to the large adtech "free" e-mail providers. We need more balance on the Internet.
It's cool to see some new modern all-in-one email solutions. Stalwart is another good one. Would be even cooler to see this lead to a bit of a resurgence of small and self-hosted email providers.
I have some questions for the creator of this software if they happen to be paying attention to this thread. I have been running a small scale email server for about 10 different related business domains. Currently we use iRedMail. 1) Does the webmail client support 2FA? 2) Is it possible to do 2FA in thunderbird? 3) Can I make custom rules for BEC attacks (ideally I want to define “FirstName LastName” => email@domain.com whitelists using regex patterns. We get a LOT of very targeted BEC attacks and we have found this is the best way to handle it. We have it very locked down now. Yes we also do employee education on what to look for but this also helps. 4) does the webmail client do banners like “this sender is outside of your org” or “you have never received an email from this sender beige” etc.

Thanks!

How does mox compare to maddy, another Go all in one mail server ? Does mox support antivirus addition ? Didn't see that in the docs but I may have skipped that section.
set this up today, the documentation is useful and the quickstart very helpful, the dns stuff pretty much works exactly as it's supposed to and is just a bunch of copypasting (in my registrar's ui).

specifically for mox there was some things i would have liked to see: explain how the webmail isn't accessible on the public ip by default - i don't know how many of you want to be in a specific vpn for checking your email, but i sure was surprised i couldn't reach it, but had to activate it in config (and first figure out how to even do that). mox also doesn't redirect to https by default - imo it should, since it already includes the convenient automated certificate setup (which worked great).

maybe it is intended for a different environment, but since it recommends not running another webserver on the same host, i really don't want to access the webmail from the local server or by http. i like most of my services being available behind a reverse proxy, there it would make more sense. maybe i'll look into that variant later, but the documentation isn't quite as complete as i'd like.

After 21 years of hosting my own email server, starting with roll-your-own (anyone else remember sendmail.cf?) and moving to boxed solutions such as mox or mailcow, I gave up. Maintaining IP reputation and keeping up with the neverending set of arbitrary rules (spf, dkim, etc) I found my time was worth something too. Doing an honest ROI calculation, I figured i was spending 2 hours on average each month keeping the plumbing going. For me, that was well-worth the ~15/month that proton charges. I bet there are other good ones out there too!

To be honest though, throughout those decades, I learned a vast amount about how email flows. That knowledge is irreplaceable.

My recommendation is to try your own until you really, REALLY understand it. Then move to a paid solution.

Has someone compared this to other modern alternatives? Stalwart (open core), chasquid, maddy, ...?
A somewhat related tangent, has anyone got good desktop email client recommendations? Preferably macOS/Linux.

I have 6ish email accounts I need to monitor, and outside of Outlook (and the various hellish variations of it), I'm yet to find a good client like all smartphones seem to have - all inboxes in one client presented together. I recall having a number of issues with Thunderbird a few years ago when I last tried it, but I don't remember why.

With that top screen shot, I'm surprised that it does't have UUCP support.
From the FAQ

How do I configure a second mox instance as a backup MX?

Unfortunately, mox does not yet provide an option for that. Mox does spam filtering based on reputation of received messages. It will take a good amount of work to share that information with a backup MX. Without that information, spammers could use a backup MX to get their spam accepted.

Sounds interesting.

I didn't find anything about sub-addressing in the features list. Is it a supported feature?

Also, with a version number starting with 0.0. I'm left wondering if Mox is already stable enough to be entrusted with my precious email.

Other options i'm considering are mailcow running in docker.

Enjoy the presentation of Mox at Golang Rotterdam: https://youtu.be/KiDP_JoomOY?si=CyiUEgc8J5WfNZ5R
That webmail screenshot made me realize how much I desperately miss threaded mail/news readers. <3 I should figure out how to make Roundcube do that.
Funny that, I was looking recently for a small, local smtp server to get notifications from my printer and other stuff and... there isn't. All you get are the ginormous ones with decades of crud attached.

So I ended up writing my own of course; no need for all the fancy features, just PLEASE let me receive email over SMTP and deliver them locally with 'dma'. Pfew.

This seems like a good place to ask - does anyone have recommendations for a mail server and webmail integrated with CalDAV and CardDAV?

I was looking at Horde's Imp, Kronolith and Turba so far - https://www.horde.org/apps - they seem OK but is there anything else in this area?

I appreciate the Plan 9 colors in the webmail UI.
But how do you get a "clean IP" to actually run it on? My ISP's IP changes every so often (whenever there's a power outage for example).

Last I checked, you can't run mail servers on typical cloud providers (like Azure, Oracle) and cheap VPSs are almost guaranteed to have "dirty IPs" (used for spam and thus blacklisted).

I feel like there's going to a very slow trickle of (a trivial number of) users towards either self-hosting mail or a growing cottage industry of smaller-scale mail services hosted outside the US.

Of the growing number of self-hosting options, I'm not sure how many of them are designed to scale, or to what scale they can scale...

Set it up in mid 2023, still running good! Getting it going was fun, staying on top and maintaining it isn't really...
I've been using maddy. It seems this has more features (like web interface, reputation tracking etc).
Since the late 90s I've always had the thought in the back of my mind that one day I would run my own mail server. That day never came and the task seemed more and more impossible. This looks genuinely manageable, I might actually give this a shot when I get off work.
I'm very happy to see this as I have been advocating for something like this for quite a while: a single setup and configuration that handles SPF, DKIM, DMARC all together.

I understand, and appreciate, the modular philosophy behind OpenSMTPD, etc., but in practice it is quite frustrating and difficult to piece it all together - especially if you add rspamd, etc.

Speaking of which, how is spam handled ? I see this in the FAQ:

"Mox does spam filtering based on reputation of received messages."

... but it is not further elaborated.

Also:

I assume that the web service can be fully disabled and Mox can be run with no httpd but that is also not specifically called out ... can it ?

Nice, but it's so much easier and cheaper (in time spent) to just use a trusted and secure mail provider with your personal domain. Mailbox.org is my favorite - dkim, encryption, webdav all work out of the box with Android apps available.
How does integrating all modern email protocols into a single application like Mox impact performance and security compared to using multiple separate components?
Is there an implementation of the same capability as a JS lib? So that one could have an email server running as part of their Node.js / other runtime?
Nice work.

Does it include shared folders? I look forward to seeing one of these projects include either that or NNTP support. Then we can get rid of Slack.

Can I use this instead as a frontend for an existing server? UI is perfect for me but I don't want to fully self host anything but the UI.
Wow this looks great! Email was such a hassle a few years ago that I kind of just gave up on hosting it myself.

Definitely trying this!

Really nice- I want a distro package. Managing updates manually gets out of control fast if you run many services.
I like old school interfaces as much as the next nostalgic hackernews reader, but nothing about this looks “modern”.
I used mailinabox[1] for years before finally biting the bullet and switching everything over to a hosted email platform.

Hosting your own email servers sounds good, until:

- Gmail and MS fling your emails in junk, despite ranking 10/10 on mailtester.net

- You have to search for old emails through RoundCube's byzantine UI (and eventually giving up)

[1] https://mailinabox.email/

Do you have plans to support docker, perhaps by creating an official Mox container image?
The biggest problem with running your own hosted email server is that the giants (Google, Microsoft, Yahoo ...⁾ tend to block all the incoming mail.

Sometimes you can contact them and ask to be removed from whatever list or be allowed.

In my experience that lasts about a week, then blocks again.

I eventually gave up.

Tons of bots out there looking for SMTP serveres too, .

perhaps this is a FAQ but does this handle virtual domains like Postfix and Dovecot can?

i.e

person@fred.com and person@mary.com are completely separate domains/imap accounts on the same server?

Sad that the documentation isn't very friendly. Is this a replacement for Gmail? Can i use it with Thunderbird? Is it going to
Always interesting to see another implementation of IMAP4! Congrats.
how does it compare to migadu?