@colin@a@mwl My experience using RBLs was that I needed to run DNS lookups on the same IP as the mail server which is annoying with socks.
If you have IPv6 at home, you can get a dual stack VPS and use proxy arp to relocate its ipv4 address to the other end of a SIT tunnel (ipv4 over ipv6) terminating on your actual server.
@mwl Running port 25 behind a residential IP is an instant block. I have everything running like clockwork behind a mid-sized hosting provider, but I'm always looking to improve things.
@colin@mwl I'm not sure what you mean by instant block, but you can proxy port 25 thru a $3 VPS if needed, and not even lose any cryptographic integrity as long as you're using DANE.
@a@mwl@colin This is exactly what you want to do. And setup DANE for your domain, and outgoing DANE enforcement, so malicious party on the VPS side can't MITM you.
@a@mwl@colin If the VPS isn't on your premises or locked in fail-closed tamper resistant enclosure at your colo, you don't have full control over it. Law enforcement can mandate hosting provider backdoor it, and there are plenty of cross-guest attacks in virtual hosting environments.
@a@mwl@colin You don't run the mail server on the VPS, just proxy thru its IP. The TLS is terminated on your premises, so as always, if certificate is validated correctly (this is what you need DANE for; otherwise TLS on mail is opportunistic), MITM is impossible even if the attacker fully controls the VPS.
@a@mwl@colin That's exactly what I'm talking about. And with webpki, controlling the public IP lets you get forged certs unless you're using DNSSEC and CAA to forbid all but specific authorized cert issuance. But with DANE, control of the IP gets you nothing because the key is pinned.
@a@mwl@colin The DNS server doesn't have to be trusted either. Just the DS delegation records from the parent zone. If they're tampered with, that provides a paper trail of wrongdoing (compromised registrar).
@a@mwl@colin That's one of the awesome things about DNSSEC: it lets you host your authoritative DNS on cheap low trust infrastructure, only caring about availability not integrity.
@a@mwl@colin Cryptographically impossible (assuming the cipher isn't broken which isn't a realistic threat).
Where compromises like the one you cited happen are by compromising one party in the cryptographic chain, not by breaking the crypto. With DANE the only parties who can potentially be compromised are your registrar, the TLD authority, and the DNS root.
@a@mwl@colin I'm most concerned about email interception as a vector for account compromise through credential reset workflows. Otherwise indeed the value to attacker/risk to user is usually fairly low.
@colin@mastodon.colincogle.name@mwl@io.mwl.io@dalias@hachyderm.io I'm personally not super concerned about all that because: (a) sending emails means that someone will received and you still need to rely on their infra not to be breached (good luck with that) and (b) I use email mostly to receive messages and as an ID for a bunch of accounts mostly. If I want to share something more personal I would use other mechanism
On the bright side, yes, I have a Let’s Encrypt CA and DNSSEC/DANE, MTA-STS, CAA, and all the acronyms. I also edited the Postfix config files to require TLS for outbound connections to some servers that I know will never not support it, like Google, Microsoft, and a few others.
@a@mwl@colin This is a big part of why I made mxclient and hope it (or another implementation of same concept) eventually becomes the standard for credential reset workflows, login via email workflows, etc.