The NNCPNET email network
Running a modern mail server is a complicated business. In part, this complication is caused by the series of incrementally developed practices designed to combat the huge flood of spam that dominates modern email communication. An unfortunate side effect is that it prevents people from running their own mail servers, concentrating people on a few big providers. NNCPNET is a suite of software written by John Goerzen based on the node-to-node copy (NNCP) protocol that aims to make running one's own mail servers as easy as it once was. While the default configurations communicates only with other NNCPNET servers, there is a public relay that connects the system to the broader internet mail ecosystem.
NNCP
NNCP is a spiritual successor to the unix-to-unix copy protocol (UUCP) in the same way that SSH is a spiritual successor to rsh. Sergey Matveev created the project to be an easier to use, more secure replacement for UUCP. Like its predecessor, NNCP is both a (relatively simple) protocol, and a suite of reusable single-purpose command-line tools. The project's code is licensed under the GPLv3.
As with early computer networks, routing in NNCP is manual. In order to contact a host, the user needs to explicitly tell NNCP what routes are available to connect to it. In modern parlance, that makes it a friend-to-friend network, where each computer connects only to computers that the owner knows about and trusts. This makes it impossible to tell exactly how many people are using NNCP, because there's no network-wide consensus on membership. Routes may also be indirect: if two servers aren't directly connected, but they both know how to reach some third server, they can be configured to talk to each other via the third server. This avoids the need for explicit bang paths in each email, but is still a form of manual routing. In practice, many users likely have a connection to the quux.org server operated by Goerzen for this purpose.
That server publishes a list of all of the nodes that it knows about (by making the file available via NNCP file requests). Being added to the list is a manual process that requires sending Goerzen an email. This is reflective of the back-to-basics ethos of the NNCP network: the tools focus only on the core job of sending data where they're told, leaving decisions about the network's structure and policies up to the human administrators.
Messages in NNCP take the form of encrypted packets that can be exchanged via the internet, shared storage, or pretty much any other kind of connection. The tools have built-in support for exchanging data at specified times, so that bulk traffic can be sent when a network is not otherwise being used. NNCP is a store-and-forward network, so it directly supports nodes with intermittent connections, such as an air-gapped computer that uses a removable storage device to send messages to other computers. When a message needs to be sent via another node as a relay, the payload is wrapped in layered encryption, so that each node along the configured route removes a layer. This makes it harder for an outside observer to tell the difference between a message destined for a specific server, and one that is merely being relayed through it.
An example
Suppose that node A wishes to send a message to node C, relayed via node B. All three of these nodes know each other's public keys, because the humans configured them out of band. If we use "E(msg, key)" to mean the encryption of the message using some public key and "||" to mean concatenation, A computes "E(relay header || E(msg, C-pub), B-pub)", and sends that to B (possibly over a link secured with A and B's transport keys, possibly via a sneakernet). B receives the message, decrypts it, and sees that it is a request to relay a message to C. B sends "E(msg, C-pub)" to C, which decrypts the message.
In addition to the at-rest encryption used on messages awaiting delivery, connections between nodes that operate over the internet are also encrypted, to further disguise message metadata. Two separate keypairs, one for the at-rest encryption and one for the in-transit encryption, are generated when the node is initialized using the nncp-cfgnew command. The public part of these keypairs needs to be communicated to every other server that it will communicate with. Keys aren't expired or rotated automatically — users wishing to rotate their keys will need to do so by hand.
NNCP's flexibility is both a blessing and a curse; on the one hand, it follows the Unix philosophy of letting the user compose their own special-purpose tools to do things that the developers didn't anticipate. On the other hand, it makes setting up a node to participate in the network a manual (and potentially error-prone) process. Goerzen wrote NNCPNET as an automated way to set up an NNCP node for the common case of handling email, and as a way to introduce people to NNCP.
NNCPNET
When I asked Goerzen about his motivation for working on NNCPNET, he said: "I
want people today to be able to enjoy networking and the Internet the way I did
in 1998
". Goerzen started running his own mail server around that time:
For 24 years since 1995, I ran my own mail server for complete.org, on various hosted VPSs and even once a dedicated box at the house of a friend with fast Internet. In 2019, I gave it up, because it was just too difficult. SPF, DKIM, DMARC, TLS, getting blacklisted by email providers due to issues outside my control, etc.
When he stopped, he needed some way for his various servers to send him basic cron emails — he couldn't even use SMTP because of provider restrictions. Luckily, email was once transported via UUCP, and support for that mode of operation still exists in a lot of mail servers. So, he realized that all that was really needed was to write some supporting software to let mail servers connect via NNCP as well; that effort became NNCPNET.
NNCPNET takes the form of a docker container with NNCP, Exim, Dovecot, and a handful of other utilities installed. Setup is mostly automated, with a few things left for the user to do that are described in the documentation. The container has a cron job that is responsible for periodically downloading the list of nodes that quux.org is aware of and adding NNCP routes for them that go via quux, for example, but getting registered on the list is still manual. Configuring everything without docker is definitely possible, since all the individual pieces of software are packaged separately, but Goerzen has not written instructions for that.
Once set up and running, NNCPNET acts as a normal email server for normal email clients. Unlike email running over the internet, however, NNCPNET uses the fact that NNCP messages are end-to-end encrypted and signed in order to validate the sender of each message. That, plus the friend-to-friend nature of the network, is supposed to strongly discourage spam. There is also a public relay that can optionally be used to connect NNCPNET addresses to the open internet, which Goerzen politely asks people not to abuse.
Emails within NNCPNET all end in ".nncpnet.org"; for example, the test robot that can be used to validate one's email setup is "testrobot@mail.quux.nncpnet.org". Generally, the local part of the email ("testrobot") is completely up to the user; the domain part will start with their chosen NNCP node name, which is ultimately limited by whatever they can get other people to put in their configuration files. Sending an email from one NNCPNET address to another NNCPNET address works like this:
- The user's mail client submits mail to Exim running in the NNCPNET container (locally or via SMTP).
- An Exim script extracts the NNCP name of the destination host (e.g. "mail.quux") and passes the email off to the appropriate NNCP command.
- NNCP prepares a message with the email in it, possibly with several layers of encryption of the packet needs to be relayed through multiple hops.
- That message sits in the NNCP spool directory until something sends it to the next hop in some way — via scheduled connection, sneakernet, or otherwise.
- Any intermediate hops receive the message, strip a layer of encryption off of it, and sort it into the appropriate outgoing spool.
- Eventually, the destination NNCPNET server receives the message, decrypts it, and checks that the sending address has the same host as the NNCP signature.
- Then it ingests the email as normal, and the recipient eventually fetches it with their mail client.
Sending email between the open internet and NNCPNET is fairly similar, except
that the destination host on the NNCP side is Goerzen's bridge. He does have
plans to remove that single point of failure: "NNCP itself is decentralized
and I would like NNCPNET to be as well. I have put some thought to that
already.
" The bottleneck is "more interested contributors
". The
project doesn't take much day-to-day attention, Goerzen said, but his time is
still limited.
Overall, NNCPNET is not really in a state for non-technical users, but typical LWN readers should not have a problem setting it up, perhaps as a weekend project. The documentation is fairly thorough, but I did run into two problems in getting my setup working: a problem with systemd inside the docker container expecting to have access to the host system's control-group hierarchy, and needing to fiddle with the NNCP configuration in order to do local testing with multiple nodes. That said, setting up an email server with NNCPNET is definitely possible. I asked Goerzen what he wanted people to take away from trying out the project. He replied:
You can run your own mail server again. A real one, not a toy. You can build email networks. They can be limited to NNCP only, or full participants on the Internet. Your phone can be a mail server and run a mailing list. You don't need an email provider for everything: just run it yourself. Your scanner with its "scan to email" function can work and do just that, without having to have a complex workaround because many modern email accounts require OAUTH and such.
NNCPNET is, at the moment, fairly small. The quux nodelist contains 16 entries — two of which are for quux itself, one of which is for Goerzen's personal email host, and one of which I set up for testing. So the number of people actively using the network is likely to be somewhere around a dozen. Whether NNCPNET eventually picks up more users, or remains a niche alternative remains to be seen.
Posted Aug 1, 2025 19:58 UTC (Fri)
by dskoll (subscriber, #1630)
[Link] (20 responses)
I do run my own mail server for my domains, and have done so for decades. It seems to me that NNCPNET doesn't really solve any problems that aren't already quite solvable.
As for provider blocks on the SMTP port blocking internal email, that's easily fixed by running a VPN on all your machines and running SMTP over the VPN.
Posted Aug 1, 2025 20:51 UTC (Fri)
by KJ7RRV (guest, #153595)
[Link] (18 responses)
Posted Aug 2, 2025 0:46 UTC (Sat)
by gerdesj (subscriber, #5446)
[Link] (12 responses)
Well that is one definition of UBE.
My email systems, wot I self manage don't do that. When you go beyond normal human to human style comms and go UBE, then you get blocked. Its not exactly rocket science.
Posted Aug 2, 2025 17:43 UTC (Sat)
by Wol (subscriber, #4433)
[Link] (11 responses)
If only it were that simple ...
If it's only UBE, then why do opt-in email lists get clobbered?
If it's only UBE, why do so many people give up running mailservers because they can't send emails?
UBE may be the CAUSE, but the people who get hurt are rarely the people sending it ...
Cheers,
Posted Aug 3, 2025 7:43 UTC (Sun)
by wahern (guest, #37304)
[Link] (1 responses)
Are there alot that give up for being blocked, relative to the number of hosters? That's the popular wisdom, but there's a dearth of data. The wisdom could be a product of how it's discussed: people who tried and failed being more vocal than those who are successful, similar to restaurants reviews where people with bad experiences are more likely to leave reviews than the bulk of customers who were satisfied, especially for high-volume venues (e.g. McDonalds).
I've been hosting my own e-mail for over 20 years, and it's been at least a decade since I've noticed any delivery issues. Even then it was unclear what the issue was as it was another user on my system using an external client, and they chose to simply stop trying rather than debug. There are plenty of institutions and companies still self-hosting, enough that there's still a market for selling software and hardware e-mail products. And while larger hosters have more resources to attend to deliverability problems, they're also having to deal with users sending messages more likely to trigger filters, e.g. many Cc recipients.
The scope of the problem is just very unclear to me. I don't know what to think. I've switched hosting setups at least a half-dozen times over the decades--colocation, leasing, virtual hosts, etc--and every time I switch I get anxious, but things have worked out pretty well so far. Currently I host from home through a tunnel from Vultr, but before then it was from a private office on a dedicated circuit from Cogent. I also host my own DNS name servers, some domains primary and secondary self-hosted, others primary self-hosted with secondary at EasyDNS. Managing SPF, DKIM, and other records via flat locally controlled zone files feels simpler and more transparent that way, but perhaps for someone new at this game it might seem more opaque than using popular web services and GUIs.
That said, for the few business ventures I've started with others, I just choose GMail. I don't want to get blamed for deliverability problems the sales and marketing side might have. It's like uptime issues--across the years my self-hosted uptimes aren't appreciably worse, and perhaps in some cases might even be better--than is typical for, e.g., AWS-based setups, especially taking into consideration misconfigurations and similar accidents. But when AWS or Google is down, coworkers and customers are understanding; when your self-hosted services are down, you're the unprofessional idiot (classic CYA dynamic--nobody gets fired for buying IBM, Microsoft, AWS, Slack, etc).
Posted Aug 3, 2025 10:02 UTC (Sun)
by MarcB (subscriber, #101804)
[Link]
There definitely is a huge shift from on-premise/self-hosted to cloud (Office 365 in particular) in the SMB space. This is mostly previous Exchange setups that Microsoft successfully "convinced" to switch to cloud based solutions; mostly by making self-hosted Exchange more and more horrible to run.
Organizations, like universities and so on, remain relatively unchanged. The smaller they are, the higher the chance they switch to some cloud solution; but again, the reason for this is not mail getting harder, but those platforms offering more combined with the hope of reducing staff costs.
Outside the business world things are, as you say, hard to assess. There indeed is some noise about it, but a lot of it is "political"- the Open Source community certainly is not representative here at all. Most small mail systems are hobbyist communities, associations of all kinds, and so on. They have no budget to switch to a cloud solution and seem to continue just as before. They can typically get away with a basic DMARC setup and will not get into any reputation problems, since their mails absolutely are wanted by their members.
So, to sum it up: There absolutely is a move to cloud for small and medium business; but not because mail gets harder, but because they offer much more than just mail. Not so much for everyone else.
Posted Aug 3, 2025 8:30 UTC (Sun)
by MarcB (subscriber, #101804)
[Link] (8 responses)
Most likely, because they do not fulfill the requirements for larger senders.
You really need all of the above nowadays for any non-trivial list.
A mailing list that accepts mails from its subscribers must also munge the From header. There currently is no realistic way around it (it can be avoided for internal mailing lists were all subscribers are using the same domain, or if you control the authentication settings of all domains sending to the list and then do not modify the mails).
> If it's only UBE, why do so many people give up running mailservers because they can't send emails?
Presumably because they try adjusting to modern requirements by trial-and-error. This does not work, because modern anti-spam and reputation systems are highly dynamic. Internally, they use counters on many aspects of a mail and thresholds of those counters determine how much influence (non-)adherence to requirements has (or if a requirement even applies).
Alternatively, because a lot of their person to person communications has shifted to instant messengers and the server isn't as valuable anymore.
Ultimately, running your own small server can actually be more reliable than before, in particular if it serves distinct senders with individual domains, because with all this authentication stuff, reputation moves from sending IP to sender domain. But you will still get into IP-related trouble if the ratio of unwanted mails from your IP is too high.
Posted Aug 3, 2025 10:46 UTC (Sun)
by iabervon (subscriber, #722)
[Link] (3 responses)
As compared to running a mail server in the 90s, it's a couple more things you have to get right, and it's more complicated agreement between your MTA configuration and your DNS than you used to need, and MTA debugging hasn't really kept up. I think MTAs ought to have a way to look at their configuration and DNS and warn you about any cases where they would send outgoing messages they don't think would be okay, and maybe cases where just anybody could send a message from a domain this server handles that would be okay.
Posted Aug 3, 2025 14:10 UTC (Sun)
by dskoll (subscriber, #1630)
[Link]
For debugging purposes, there are several services that let validate your SPF/DKIM/DMARC records. I seem to recall a service that let you send an email and then would report back on the results, but I can't find that now.
If you have a gmail.com account, you can send email there and if your email ends up in Spam, you can examine the authentication results as determined by Google.
Posted Aug 4, 2025 8:37 UTC (Mon)
by DemiMarie (subscriber, #164188)
[Link] (1 responses)
Posted Aug 4, 2025 10:28 UTC (Mon)
by iabervon (subscriber, #722)
[Link]
On the other hand, transmitting a message to people the sender didn't tell their MTA to deliver it to is exactly what the sender and recipients want a mailing list to do, so it gets an envelope that says the delivery event is the responsibility of the mailing list.
Posted Aug 3, 2025 14:37 UTC (Sun)
by kleptog (subscriber, #1183)
[Link]
That doesn't work anymore, for all the same reasons that a dumb mailing list server doesn't work anymore.
In theory it should be possible to setup a simple mail forwarder that munges all the headers just the right way to make it work, but I just didn't consider it worth the effort to maintain. Since an online service did it reliably and for (almost) free and I don't bother anymore.
Posted Aug 3, 2025 14:59 UTC (Sun)
by laurent.pinchart (subscriber, #71290)
[Link] (2 responses)
I used to do so until I read Konstantin's explanation of how he configured kernel mailing lists. https://people.kernel.org/monsieuricon/subspace-mailing-l... is an interesting read. The short summary is that, if your mailing list server sets the Envelope-From to the mailing list domain, and the domain has a correct SPF record, the only corner case that could cause issues is sender domains that set a DMARC policy without signing messages with DKIM. Obviously the mailing list server must not modify the body of the message to add headers or footers, or modify the subject to add a list name prefix.
Posted Aug 3, 2025 18:10 UTC (Sun)
by MarcB (subscriber, #101804)
[Link] (1 responses)
The approach is basically a variation of the "... if you control the authentication settings of all domains sending to the list and then do not modify the mails" where "control" is replaced by "make requirements towards" or "make assumptions about".
But all in all it is fragile. As soon as any of the headers your list wants or needs to modify is signed, the mail will fail authentication.
Posted Aug 7, 2025 12:32 UTC (Thu)
by nix (subscriber, #2304)
[Link]
Konstantin said (and he's right):
> There should be no changes to any of the existing message headers and no modifications to the message body.
No adding [tags] to the Subject. No adding automatic .sigs. Just add List-Id et al, tweak the envelope sender, and forward on. It just works.
Posted Aug 3, 2025 14:31 UTC (Sun)
by bferrell (subscriber, #624)
[Link]
I've been running my own email for better than 25 years. I have it all properly configured and plenty of anti-spam measures incoming.
Mostly I can send wherever I want and receive from everywhere.
BUT, there are certain large email systems that don't take email from my ISPs block of IP addresses, because the ISP are shite.
And, for where I am, this ISP is the only way to do what I need done.
I DO. think this is funny. He re-invented UUCP and fell prey to "do it with..." and it's "different" somehow. In this case, it's containers.
sigh
Posted Aug 3, 2025 15:07 UTC (Sun)
by ametlwn (subscriber, #10544)
[Link] (3 responses)
Posted Aug 3, 2025 16:34 UTC (Sun)
by dskoll (subscriber, #1630)
[Link] (1 responses)
I do agree this is a dangerous trend. As for the upstream projects being dead, maybe they're just finished? The relevant standards (SPF, SRS, DKIM, DMARC) haven't changed in a while and so if the software implements all of the standards, then what more is needed?
To comment on another post that said "To configure all this on a bare Debian installation is way too much work, and error-prone, too.", maybe, or maybe not. I set up everything on a bare Debian installation and it's fine. However, I did own an email security company for 19 years and am the author of Mailmunge, an email filtering framework, so I have a lot of practice!
I also agree that RFC 8461 is a terrible RFC. Having an SMTP client fetch a policy over HTTPS is just too dumb for words.
Posted Aug 3, 2025 16:40 UTC (Sun)
by ametlwn (subscriber, #10544)
[Link]
Posted Aug 3, 2025 16:35 UTC (Sun)
by ametlwn (subscriber, #10544)
[Link]
Posted Aug 2, 2025 0:41 UTC (Sat)
by gerdesj (subscriber, #5446)
[Link]
It seems it is possible to self-host email!
Posted Aug 2, 2025 0:24 UTC (Sat)
by gerdesj (subscriber, #5446)
[Link] (8 responses)
Yes it can be done in some parts of the world. No it cannot be done in some parts of the world.
When I say "cannot", what I really mean is will everyone else send and receive to and from you. In my experience, the big guys - Google, MS and co will quite happily work with tiddlers that obey the rules. In general, SPF is king. I only recently had to worry about PTR for a particular domain's MX that had worked for years. Back in the day (pre noughties) a reverse DNS failure was a sure sign of spam and was punished. Nowadays a lot of things run off a single IP so PTRs might get a bit out of hand.
HE have a IPv6 challenge and I managed to run an Exim based SMTP daemon from my home a few years ago so I'm sure you really clever lot can manage it yourselves too. Give it a crack if you have IPv6. If not, try an IPv4 effort.
Ironically enough I have just migrated my company email to MS 365 Exchange online. It started off life as GroupWise in the noughties. Exchange on prem is painful to run and it is clear that MS are deliberately making updates painful and very drawn out and have done so for years. There is absolutely no reason why a regular software update to an all in one email system with 20 odd users and 300GB of data should take six hours.
I will maintain our MX records pointing to our on prem Exim smtp daemon.
If MS take the piss on pricing, I will simply migrate elsewhere. In the end, Exchange's only "USP" (and it isn't really unique) is calendaring. That is really all they have. IMAP plus a calendar app and a bit of integration is all you really need.
To be honest, I'm a bit ticked off that I have to do this. I've just taken a poke around the MS cloudy Outlook and it is very smooth and obviously the on prem IIS effort is a second cousin. However, I have now given MS direct access to my entire company comms.
I need to find the killer email app.
Posted Aug 2, 2025 15:37 UTC (Sat)
by storner (subscriber, #119)
[Link] (7 responses)
But there are several good guides available. I am fond of the workaround.org ISPmail guide.
As for IPv4/IPv6 problems, run it on a small virtual server at one of the hosting providers. Costs me a total of 9 € per month.
Posted Aug 3, 2025 14:34 UTC (Sun)
by bferrell (subscriber, #624)
[Link]
Posted Aug 29, 2025 7:04 UTC (Fri)
by fest3er (guest, #60379)
[Link] (5 responses)
I have to deal with the dmarc email reports, but they just accumulate in their own folder. Otherwise, yahoo and ms silently forward emails for my accounts there to my email account on my own server. I have very few outgoing failures; pretty much all are due to non-existent mailboxes for spammers trying to create accounts on the forum I run. I get no spam, except for a few from the forum's 'contact us' page; maybe my domain hasn't been 'discovered' yet. I get more spam from google.
Setting up your own email server can be done. Alas, there are a *few* things that cannot be controlled.
[soapbox]
If an internet bandit (1) sends me spam, (2) hammers my web server, (3) probes my firewall, (4) probes my SSH servers or web servers or any other service I have available, I want to block that bandit and all of his domains and addresses from accessing all of my systems. In other words, if someone assails me while I walk down the street, I don't want that person or her cronies anywhere near my home(s), vehicle(s), or any other people/homes/vehicles for which I provide 'security'. The current internet information systems do not provide the information *I* need to (1) prevent bandits from accessing my LANs and (2) prevent malware and maldata that may be present from escaping from my LANs onto the worldwide internet. Yes, we do have a social duty to block malware/maldata from entering *and* leaving our private internetworks of LANs. [End-to-end encryption prevents us from honoring that duty. But that is a topic for a different discussion; OE would be a fair solution.]
Will the change be painful? Yes. But that whole information system needs to be re-engineered.
Posted Aug 29, 2025 9:18 UTC (Fri)
by anselm (subscriber, #2796)
[Link]
Even with an rDNS entry this might not have worked if your static IP address is from a range marked in the appropriate e-mail blocklists as “assigned to end users of an ISP”. Mail providers often assume that e-mail submissions from such IP addresses are sent by malware running on the computers in question, and score them way down or just refuse them outright. VPSes are much more likely to function properly in that respect.
Posted Aug 29, 2025 10:58 UTC (Fri)
by pizza (subscriber, #46)
[Link] (3 responses)
All of that is predicated on said internet bandit being (a) "authorized" to use the addresses in question, and/or (b) identifiable.
For example, earlier this month one of my sites got hit by a distributed crawler that exceeded 1.5 million unique source IP addresses. How exactly am I supposed to identify the "responsible" party, much less block them?
Posted Sep 11, 2025 17:19 UTC (Thu)
by fest3er (guest, #60379)
[Link] (2 responses)
1.5M? That's almost 6000 /24s. With more IP assignees 'publishing' their large assignments in /24s, it becomes a PITA identifying who controls an IP address for both blocking and allowing. Examples: (1) which netblocks do TenCent control (to be blocked)? (2) Which netblocks do Crunchyroll and Netflix use (to be allowed)? (3) Which netblocks do MS' supposedly benevolent scrapers and probers use (to be blocked)? Let's not confuse 'authorized' or 'controlling' with 'using. Bandits steal and use things they aren't authorized to use or control. Detecting their presence to shut them out is part of the guarding/protection task. Determining and notifying those who are authorized to use and control those remote resources is a different part of the guarding/protection task. Presently, there is no reliable way to identify who controls any block of IP addresses, or even which netblock an IP address is part of. For example, who controls 150.136.168.242? Crunchyroll seems to use it (found via tcpdump), but nothing points back to CR or to CR's upstream. This is just part of the reason I said that DNS/Whois/RDAP are broken, have far outlived their usefulness, and need to have a replacement engineered. If someone is breaking into (or out of) your home, you don't really care who he is; you want to stop him. Bandits are not authorized to enter my home; they have neither warrant nor probable cause. Just the same, bandits are not allowed to enter (or leave) my network regardless of whether or not they are 'authorized' to use the source IP. So manual effort and time required. Often more than should be needed. My scripts employ brute force methods. It would be more elegant—and probably more accurate—to employ statistical analysis of the frequency of IPs and their netblocks appearing in error and access logs.
I currently block around 40k IPs and netblocks. I throttle those and another 20k IPs and netblocks down to 2400 baud using HTB. (Yes, those 40k are blocked, but Scheiße happens.)
Posted Sep 11, 2025 18:27 UTC (Thu)
by farnz (subscriber, #17727)
[Link]
And, FWIW, DNS delegation tells me that ns1.p78.dns.oraclecloud.net. is authoritative for 150.136.168.242; given that it has no DNS entry, this is likely to be a shared Oracle Cloud IP, used by many Oracle Cloud customers, of whom Crunchyroll will be just one.
Posted Sep 15, 2025 16:47 UTC (Mon)
by paulj (subscriber, #341)
[Link]
Posted Aug 2, 2025 13:33 UTC (Sat)
by iabervon (subscriber, #722)
[Link] (3 responses)
It's mainly a matter of making the outgoing messages claim to come from the list in the right way, but that's slightly outside of what a mail server can usually do with the code intended for getting received mail into the appropriate mailbox, unlike how it used to be.
Posted Aug 2, 2025 13:53 UTC (Sat)
by dskoll (subscriber, #1630)
[Link] (2 responses)
That's what proper mailing list programs are for. I run a few (fairly low-volume) mailing lists and the mailing list software takes care of all the rewriting necessary to get the outbound messages to pass SPF, DKIM and DMARC.
As you said, old-fashioned mail forwarding like we used to do in the late 1980s has been broken for quite a while.
Posted Aug 5, 2025 16:10 UTC (Tue)
by pj (subscriber, #4506)
[Link] (1 responses)
Posted Aug 7, 2025 12:36 UTC (Thu)
by nix (subscriber, #2304)
[Link]
I'm not seeing it
I'm not seeing it
I'm not seeing it
I'm not seeing it
Wol
I'm not seeing it
I'm not seeing it
There also is some move from non-Exchange to fully integrated solutions like, again Office 365, or Google Workspace. But this also has little to do with mail getting harder, it's just that mail is just a tiny part of the whole thing.
COVID/home office definitely was and is a driver here. Suddenly, businesses needed much better communication platforms. Mail lost a lot of significance for internal communication, so why all the effort for that, if you can get it as part of a bundle, even with great integration?
I'm not seeing it
- all the classic requirements
- Use SPF; ~all is the way to go. Ideally, SPF would have lost most relevance by now, but it can serve as tool to mitigate the increasing problem of DKIM replay, so it actually gained importance over the last year. But ignore recommendations to use -all: Those were not written by people who understand large mail systems and all the complex, indirect mail flows that people and organizations use. (If -all seems to work for you, this is because 1) you either have no users or 2) feedback from your users doesn't reach you or 3) almost all relevant recipients treat your -all like ~all).
- Sign with DKIM
- Align header From and the signing domain; ideally also "envelope from" for those sad recipients that check SPF, but not DKIM
- declare a DMARC policy of at least quarantine
- implement "one-click unsubscribe" as specified in https://datatracker.ietf.org/doc/html/rfc2369 / https://datatracker.ietf.org/doc/html/rfc8058. In practice, this build on top of DMARC. If your reputation is good enough, it can even lead to a users "report spam" action not having any negative impact on you. Instead, systems will treat this as "recipient wants to cancel an originally legitimate subscription".
- set a List-Id header
Ideally, also implement ARC. This can serve as a way to distance yourself from spam that might be fed into your list by a malicious or compromised subscriber (to a degree!).
Also, parameters of those systems are typically per recipient. You can't send a mail to a test account and then assume that the same mail would be treated the same when sent to any other account.
I'm not seeing it
I'm not seeing it
Does the From header always need to be munged?
Does the From header always need to be munged?
I'm not seeing it
I'm not seeing it
I'm not seeing it
For LKML it might work. Users and their employers should be tech savvy enough, but for others this is likely not true.
I'm not seeing it
I'm not seeing it
I'm not seeing it
* Standards move in questionable directions (e.g. rfc 8461 MTA-STS).
* Interest on the free software authors side in SMTP software is waning. e.g. libsrs2, libspf, opendkim, opendmarc are all dead-upstream.
I'm not seeing it
I'm not seeing it
I'm not seeing it
I'm not seeing it
email self-hosting
email self-hosting
email self-hosting
Thanks
email self-hosting
The real problem lies elsewhere. The worldwide internet long ago outgrew SMTP, DNS and Whois/RDAP, and it was skewed to favor 'big corporations' and disfavor small/individual users.
- BGP routes are far too easily corrupted by internet bandits
- idle and unassigned IP blocks should be marked as such so that we can block them.
- we should be able to determine who controls any block of addresses
- we should be able to determine who assigned/delegated any block of addresses
- we should be able to determine all addresses associated with an FQDN
- we should be able to determine all FQDNs associated with an address
- whois/rdap data should be consistent around the world
- accessing this information should not require a college degree
More can be added to this list.
[/soapbox]
email self-hosting
Since my ISP are reluctant to set my statically-assigned IP's rDNS, I moved the email to a VPS ($60/yr). That provider was happy to set up the rDNS PTR record.
email self-hosting
email self-hosting
The thing that makes any "fix" to DNS/RDAP/Whois problematic is twofold:
email self-hosting
email self-hosting
Mailing lists
Mailing lists
Mailing lists
Mailing lists