Specifically, for small self-hosted home or office networks which contain services that:
want to use e-mail
will never communicate with anyone on the internet
should not ever communicate with anyone on the internet
i.e., a very common requirement for people who want to run services for family and friends but have absolutely no use whatsoever for making those services available for anyone else.
This should be very simple. Ideally, it should be like this:
Understands one (non-public) mail domain. Rejects all e-mail going anywhere else.
Talks to a configurable number of local networks (for me, the local LAN, the tailnet, and a couple of minor local subnets). Rejects all packets coming from or going to anywhere else.
Has configurable mailboxes (not a catchall). Bounces all mail that does not go to a configured mailbox on its one mail domain.
Makes said mailboxes available through POP3. IMAP if you want to get fancy. No web interface needed or wanted.
(I once thought, in a peak of bizarre enthusiasm, that instead of/alongside mailboxes a feature that would rewrite both envelope and header destination addresses from foo@internal.lan to foo@external.net and then forward the mail to a configurable external e-mail server would be desirable, but that’s probably way too fancy to be in scope for this project.)
And that is it!
It is, like I say, a moron. That’s because mail servers are complex beasties which require great complexity and sophistication to function out on the wilds of the Internet, and consequently are a giant pain in the ass to administer securely, to the point that advice given these days to people who want to run their own mail servers can be summed up as “Don’t”.
(I used to. I probably wouldn’t any more.)
Which is part of the problem when what one wants is a simple idiot mail handler to deal with mail from cron jobs and self-hosted servers that just want you to confirm your password and notify you that jobs have been completed, because while virtually any mail server can be set up to meet the above description, it is neither simple nor quick nor, given complexity, necessarily all that robust.
So how about it, folks? Anyone seen a good candidate for MoronMail out there? Or inspired to write one? Don’t make me beg.