All this new excitement with Lemmy and federation has got me thinking that maybe I should learn to run my own instance. What always comes up though is how email is the orginal federated technology.
I am looking at proxmox and see that is has a built in email server, so now I am wondering if it is time to role my own.
I stopped using gmail a long time ago, and right now I use ProtonMail, but I am super frustrated with the dumb limitation of only having a single account for the app. I get why they do it, and I am willing to pay, but it is pricey and I don’t know if that is my best option. I guess it is worth it since ProtonVPN is included. It looks like they are expanding their suite.
Is it worth it? Can I make it secure? Is it stupid to run it off a local computer on my home network?
Yes, I still run my own email server. It is not for the faint of heart, but once it’s configured and your IP reputation is clean, it’s mostly smooth sailing. I have not had any deliverability problems to date, initial setup/learning period notwithstanding.
If you’re not scared away yet, here are some specific challenges you’ll face:
- SMTP ports are typically blocked by many providers as a spam prevention measure. Hosting on a residential connection is often a complete non-starter and is becoming more difficult on business class connections as well (at least in the US, anyway).
- If you plan to host in a VPS, good luck getting a clean IPv4 address. Most are on one or more public blacklists and likely several company-specific ones (cough Microsoft cough). I spent about 2 weeks getting my new VPS’s IP reputation cleaned up before I migrated from the old VPS.
- Uptime: You need to have a reliable hosting solution with minimal power/server/network downtime.
- Learning Curve: Email is not just one technology; it’s several that work together. So in a very basic email server, you will have Postfix as your MTA, Dovecot as your MDA, some kind of spam detection and filtering (e.g. SpamAssassin), some kind of antivirus to scan messages/attachments (e.g. Clamd), message signing (DKIM), user administration/management, webmail, etc. You’ll need to get all of these configured and operating in harmony.
- Spam prevention standards: You’ll need to know how to work with DNS and create/manage all of the appropriate records on your domain (MX, SPF, DMARC, DKIM records, etc). All of these are pretty much required in 2023 in order for messages from your server to reach your recipient.
- Keeping your IP reputation clean: This is an ongoing challenge if you host for a lot of people. It can only take one or two compromised accounts to send a LOT of spam and land your IP/IP block on a blacklist.
- Keeping up with new standards: When I set my mail server up, DMARC and DKIM weren’t required by most recipient servers. Around 2016, I had to bolt on OpenDKIM to my email stack otherwise my messages ended up in the recipient’s spam folder. -Contingency Plan: One day you may just wake up and decide it’s too much to keep managing your own email server. I’m not there yet, but I’ve already got a plan in place to let a bigger player take over when the time comes.
Yep. I’ve hosted my own mail server since the early oughts. One additional hurdle I’d add to you list is rDNS. If you can’t get that set up, you’ll have a hard time reaching many mail servers. Besides port blocking, that’s one of the many reason it’s a non-starter on consumer ISP.
I actually started on a static ISDN line when rDNS wasn’t an issue for running a mail server. Moved to business class dsl, and Ameritech actually delegated rDNS to me for my /29. When I moved to Comcast business, they wouldn’t delegate the rDNS for the IPv4. They did create rDNS entries for me, and they did delegate the rDNS for the IPv6 block. Though the way they deal with the /56 IPv6 block means only the first /64 is useable for rDNS.
But, everything you list has been things I’ve needed to deal with over the years.
Yeah, I totally forgot about reverse DNS. Good catch. I probably left out a few other things what with the repressed trauma of it all. lol.
I had to deal with Suddenlink business, and they were (somehow) surprisingly worse than what you described for Comcast (I didn’t know that was possible, TBH). Suddenlink wouldn’t even unblock the SMTP ports at all let alone delegate rDNS to our static.
Obligatory PSA: ProtonMail isn’t any more secure than Gmail and is likely a honeypot scheme crafted by government agencies: https://encryp.ch/blog/disturbing-facts-about-protonmail/
I know the title of that sounds clickbaity, but they cite their sources. It’s worth the read for those curious about ProtonMail’s history and their CEOs.
Tbh, that document reads like a discovery channel 2am aliens documentary, but it’s not completely without merit.
There are a couple line items about software services they’re using that are shitty that sound pretty legit. The fact that they’re operating in locations where they might have to hand over data sounds pretty legit. Their warrant compliance and logging/handing over a person’s IP address is legit.
The CIA honeypot stuff is all really circumstantial. If the CIA was in as deep as is claimed, a lot of the real evidence people are turning up that they’re not a secure as they could be would be unnecessary.
My best guess is they decided to make an email company based in Switzerland with the schtick that they’re secure (banks amirite?) They’re doing what they can to appear secure without spending too much money. They’re not going to have legal battles to keep your data private, and they are going to comply with agencies request for data. Even if they support end-to-end encryption if they are required by an agency to turn that encryption off for you, they’re going to do it.
They’re probably less likely than Google or Microsoft to sell all of your data to the highest bidder, but realistically there’s no such thing as secure email.
The basic assumption every privacy-concerned person should have about email is that it’s never secure. Unless you use an offline cryptography program to encrypt your email text and then paste it into the email body before you send it, your emails are insecure.
Email was never designed with that in mind. If you want to communicate securely with somebody, use a medium/method that has been designed from the start for that purpose.
I use ProtonMail because it’s not a massive corpo and it’s open source, but I don’t believe that my emails are significantly more secure than on a service like Exchange or Gmail.
This has been my thinking about ProtonMail, even after reading the article on here, and even after reading https://digdeeper.club/articles/email.xhtml (which I have to reread because it keeps getting bigger).
There is no perfect solution, just different levels of trust. That is right, if I want to be “secure” I got to act like a journalist and use a temporary solution or something that has end-to-end encryption.
Besides, email is meant for public communication. No reason to elevate it into some something it will never be.
Yeah. In my experience, you have to be careful in the world of tech privacy/FOSS to not fall off a cliff to the extremes.
You can always find reasons to not trust some piece of tech hardware or software. It’s all too complex and multifaceted to fully vett, and even when you can do that, there isn’t anything that isn’t touched in some way by mega-corps or glowie agencies.
Tor was developed by the US gov, same with the ancestor of the internet. Your network traffic runs on mega-corp wires, through mega-corp servers. Your hardware is developed, built, and distributed by mega-corps, as is most the firmware and microcode in them.
Even Richard Stallman, one of the most hardcore Free Software advocates has concessions he makes for firmware, microcode, and so forth.
The only way to be truly and completely secure tech-wise is to pull a Ted K. And go run into the woods and live in a little cabin, disown any tech built after the turn of the century lol.
It’s “all or something” not, “all or nothing.” Determine your threat model, your ethical bounds, and let those principles guide you. I think fundamentally what all FOSS folks have in common is the idea that the tech you use should serve your needs and desires, not the needs/desires of billion dollar mega-corps farming you as a product.
This is the most sane perspective I have read. For sure it is important to have solid principles and do the right things whenever possible, but no one gets to demand changes for something they never contributed to, especially not those things that took a massive amount of money and human power to build. We are all standing on the soldiers of giants, and it is insane to think we can be Ratatouille, controlling them for out benefit.
The only way to change governments and mega-corps is to make it unprofitable when they do the things we don’t like, or make it so doing the right thing makes them lots of money.
Thanks for this, it is the reality check I need to make good decisions. Even if I do become the Unidumbass, the people I love who would never follow me into that lifestyle.
I actually have a formal methodology for how I engage with software/hardware from a FOSS perspective:
Embrace, Subvert, Accept.
For any task I do currently or want to do, I apply this process:
I first try to find and use any FOSS software/hardware that does that thing well enough to use entirely. (Embrace)
If there isn’t a FOSS solution that exists or does essential things I need, then I use a proprietary technology in a subversive way to do it. So cracked copies, jail broken or otherwise hacked hardware, or using the proprietary service through an unofficial/unapproved 3rd party app. (Subvert)
If I can’t do that either, but the task/need is absolutely critical, only then do I accept using proprietary and unmodified software/hardware. (Accept)
This method has worked pretty great for me. Now about 3 years after starting my FOSS journey, I have almost no software/hardware I use that is in that third category. Basically everything I use is FOSS, hacked, cracked, modded, or runs on platforms that are, and I enjoy tech and computing more than I ever have :)
This is a good method. It is our duty to do everything we can to live by our principles, and be careful about the compromises we make. The more I go deep into FOSS, the more I discover. So much exists, it just takes some work on our part to fit it to our needs. Programming competency does not have to be high, just enough to fix any compile errors.
What’s the saying? If you can’t tell if it’s ignorance or malice, it’s probably the former?
however, with all of these points, even if it is ignorance, the lying about encryption (even though I don’t really use it) is upsetting. That plus the other lies I’ve seen them pull is enough to make me consider switching to something else.
Got any recs? Lol
Fascinating read. I have a lot to research. It is not like ProtonMail is the only alternative provider… there are so many, I just like all the extras that they are attaching to it.
Despite my willingness to self-host almost everything, e-mail remains the last frontier for me. Keeping abreast of standards, keeping up today, avoiding implications in abuse and many, many smaller issues abound … and that’s despite my fixed IP and ISP willing to set up a reverse-DNS for me.
Instead I’ve gone with a paid email provider that I’m REALLY happy with.
I originally did but the maintenance burden was killing me. Then last year Proton unified their subscription with VPN and Mail (also upgrading my Proton VPN only subscription to Proton plus) and from there I decided to just go all in on Proton mail. I integrated my domain to Proton mail and never looked back.
Same. One day I realized that emails where toi important for beeing host by an amateur me. 😉
It seems like the most sane solution. It is not that expensive for the basic tier given my needs and how important email is for daily functioning. Plus, the perks are pretty damn awesome. I have been paying for mullvad, who are solid, but the more I learn about VPNs, the more it feels like warm blanket than real armor, at least for how I use it.
ProtonMail does have some sketchy history that someone pointed out, but I also think that it is really hard to set up a service that offers every feature and not make a concession somewhere.
Well the use case for VPN for me is more into traffic routing than staying secure. Sometimes I experience slow downloads but when I connect to the right VPN endpoint, it speeds up / regain back the download speed. The only reason why I picked ProtonVPN of all places is because it was (and still is) one of the VPN services that was isn’t bought over by a tech conglomerate that buy and stacks up VPN services (https://embed.kumu.io/9ced55e897e74fd807be51990b26b415#vpn-company-relationships/protonvpn)
As for ProtonMail being sketchy and honeypot is as old fear mongering as time itself. If you are sketchy about how ProtonMail works, just remember that ProtonMail requires a bridge client for external clients like Outlook and Thunderbird because of its e2ee nature (therefore not compatible with traditional email clients). The bridge client code is open for you to see as well (https://github.com/ProtonMail/proton-bridge) and you can even compile it yourself if you want to.
Interesting. I had read some of those accusations before, but all the time I was thinking they ain’t google or microsoft, they can’t just give away user data and get paid for it. They need to be clean (enough) to have the growth they did without pissing off most of their users.
The explanation for only being able to use their own client makes sense. I don’t see how they can make attempts at privacy while using established tech that does not care about privacy.
No. But I did consider it. Multiple times.
Why not? I’m too scared! Email is the one service that let’s an attacker nuke each and everything. It’s still the most central/crucial service that almost any service relies on. If I lose access to my mail account, I lose access to pretty much every service.
As much as I would like to host this myself, I simply do not feel comfortable to do it.
Pretty much for this reason for me as well.
I’m a tech hobbyist and I’ve run/currently run things like Nextcloud, Jitsi, Matrix, XMPP, etc. But all that seems pretty small-scale. However with e-mail, nearly everything relies on it, and from the headaches I’ve heard about from those who self-host e-mail, it just seems like a perfect way to screw yourself over 😅
AAAHHH!. Now I am scared too.
So much to consider it is dizzying.
Can’t recommend this enough: https://github.com/docker-mailserver/docker-mailserver
This is has been recommended probably the most. Coming on top as a winner.
I run my own fork where I added MySQL support for aliases. But otherwise it’s great.
Nice! Seems like a cool solution for aliases.
Yes, and I love it.
I use mailjet as a proxy on outgoing emails so that I get fewer of my sent messages rejected, which works.
It was a pain to setup but it’s treating me very well.
Neato! I was so concerned about the logistics of sending and receiving emails, it never occurred to me that I could get fancy and make nice looking emails. All I use is text, yet I can do so much better.
No, I only write plain text emails, mailjet only has ip addresses that are generally not blocked by the big providers and they do all the DCIM stuff.
I get that, I will definitely need to choose a service that helps to not get sending blocked. Still, I was amused that templates were such a big selling point.
I’ve been self-hosting e-mail for over 15 years and hope to continue doing so. Although it’s being made increasingly difficult by big tech players. I wrote about it here: https://proycon.anaproy.nl/posts/rant-against-centralising-e-mail/
I like what you write, I am going to look deeper into it. It really sucks that the nearly utopian promises of the future and newfound freedoms have been progressively squashed. Every ‘disruption’ that looked like a return to that utopia has ultimately been evil and firmly entrenched in the capitalist mindset.
I am glad it is still possible. I think it would be healthy for me and everyone else to practice digital homesteading, to become self-sufficient while still being able to lean on the greater community of like minded people.
Aren’t you afraid about some important email getting discarded without you knowing about it? Or about unnoticed downtime which results in missed mails?
When I am sending? Well, once things are set up properly I’m pretty confident that things arrive (though nobody can ever be 100% sure of course). I also tend to mail to the same recipient domains a lot, like for work and hobby projects, so once those are tested you get pretty confident.
Unnoticed downtime is usually quickly noticed, I depend on my server for a lot of things. Senders are often resilient enough to keep things in their queue and try a few times. There’s also a fallback MX registry at my (3rd party) DNS host which will queue stuff in case the primary MX goes down.
It’s a great learning exercise but challenging to get right and ensure your deliverability and basically impossible from a residential-grade IP address (if you have a business class static IP at home you could pull it off).
I ran an email server for decades but gave in and pay to host my email now.
If google decides you’re a bad guy it’s such a pain to crawl back from that and I prefer my email to just work.
It’s bad out there when it comes to hosting your own email server. This blog post shows somebody’s experience in detail, and it’s worth reading. https://cfenollosa.com/blog/after-self-hosting-my-email-for-twenty-three-years-i-have-thrown-in-the-towel-the-oligopoly-has-won.html
It’s all so sad.
That was a sobering read. We all feel victorious when we see big tech fail after they wronged their users, but fundamental technologies that actually run the world have already been lost, and may never be recoverable for egalitarian use.
a bit late to the party here, but I didnt see iRedmail mentioned. been using this to host my own email on a VPS for a little over a year now and its great. for me its worth, you can absolutely make it secure, and its not stupid to run it off a local computer. unfortunately most ISPs make it insanely difficult to host on your home network.
How do you send mail with it? I’ve played around with using Postfix and never had luck with the outbound mail side, largely because my ISP blocks port 25 and I couldn’t ever figure out how to authenticate with public SMTP relays (like Gmail’s, for instance) such that they will actually let me send emails from my domain.
the documentation for iRedmail covers your question. I abandoned trying to host locally because my ISP blocks all email related ports.
Can you point me to where it describes sending email? I can’t seem to find that mentioned. When you say you abandoned trying to host locally, did you move to a more “traditional” public email service like Outlook or Gmail or did you continue selfhosting, just on a VPS or similar? If the latter, are there any services you recommend?
Okay, what a program. THIS does everything. I mean, just on paper it does it all. Thanks for the suggestion.
I setup my own email server, it was an absolute pain to setup, especially since I had no idea about all the little details of sending and receiving email. It was kind of fun to see everything come together
In the beginning I had a ton of email go into spam boxes, especially with gmail. Later I found out that if you don’t add the proper email headers like
to: "Name Of Recipient" <email@example.com>
it goes straight to the spam folder. (So you always need to provide a name)I am afraid to touch anything now though, as it is currently very really stable (on a vpn btw)
That seems to be the common theme, you get it working now DON’T TOUCH IT!
I guess I need to be in the habit of formatting my emails correctly.
Just take a look at https://docs.mailcow.email/
This runs from a small box with everything included. It gives you all the tools and config needed for running a secure and feature rich email service. Webmail, some sort of exchange emulation, webcalender on top of a solid postfix/dovecot install with rspamd as spam filter. Everything is configurable via a nice web UI.
After 15y running my own mail service and editing a lot of config files, I use this piece of free and open software and find it very good. All you need is a box somewhere in the internet. Running from a homelab will instantly fail, expect you have a static ip.
Neato! There seems to be a lot of solutions for running a mail server.
Yeah, I think it is time, I need to get familiar with Docker.
Yeah, I was clueless thinking I could run it from my home. Hah. I just wanted to avoid paying for a VPS. Which is silly because I buy too much crap all the the time and have multiple subscriptions.
This is actually valauable.
mailcow lists a small german vps hoster with a fair price and the right sizing. It’s not a big hoster, gmail and microsoft are not blocking the ip-range and the ASN is not listed on any blacklist.
The support is quick and helpful, rDNS was a matter of minutes to set up. You don’t need any deeper knowlegde of docker, since it is a one-time job to set the things up und get the stack running. The documentation of mailcow is very good.
You can run it from home, but you will need a forward host like sendgrid and maybe a backup mx. You can set a primary ip and a backup ip wich will get all the mails when the primary host is down. I guess, there a comercial or free backup-mx services out there. No problem. If you have a static ip for your homelab or at least a dynamic dns-name, it will work. Recieving is easy. But you will need a good forward-service for sending.
Needing an extra service to forward emails seems to defeat the purpose of having everything local. Everything I read about email, being clear-text and whatever, makes it so it is impossible to improve. Email is a dead end, so I probably don’t actually want to get too involved with it the more I learn.
I mean, growing up I really thought the internet would become a way to connect directly to people, computer to computer interaction. Everything requires an intermediate service, making everything insecure and expensive. What a stupid future.
That’s right. Also important, email is not a playground for experiments. Once it runs, you should not touch it anymore, except for updates. Otherwise, you will do harm to your own way of communicating. One error, and you will lose all your reputation and someone spams half of the internet with your domain as sender.
An when it runs, the only thing to improve is tuning the spam-filter for your instance. Implementing all the rules that you fight the other day, because otherwise your inbox explodes. So you have to do all the shady things and block ips, filter with blacklists and check every dns for all those extra entries, needed for delivering mail… You must become a part of the problem, spammers all behind every cracked wordpress and insecure vps out there.
Damn, email seems to fragile. I am getting so many perspective, but the main thing that seems like such a gotcha is managing spam, which seems like such a headache.
No, I do not want to become part of the problem.
Not worth the hassle - best compromise is to get your own domain but use a provider like fastmail to host it.
If they turn sour you can move your domain to another mail host.
I think this is the solution I was thinking about in the first place. I was just musing about it being part of a home lab. I have to consider whether this solution is is better than just paying for secure email.
There are advantages to having your own domain - you can use something like vendor8832@yourdomain.com so each site you sign up to gets their own unique “to” address, that way you can easily send their mail to trash when you dont’ need to deal with them anymore, and will also let you know what company had a data breach if that unique email address starts to get spam.
This is what I want! I want that granular control of having an email address compartmentalized for specific kinds of communication. I mean, I know it is something provided by basically all email providers, but I don’t know, for sure there are limitations. A unique address for each website seems like such a smart thing to do, on top of being stingy with giving out my email address.
Protonmail at certain levels gives you simple login with unlimited aliases. Something to look into. I love it and have been with them for years.
Firefox Relay is by far the easiest (and imo best) solution for that
You can try it for free and if you use it enough it only costs $24 a year
Neato. Yeah, just today I spent more than that on a haircut. Will deeply consider it.
Your first 5 email masks are free and if you install the extension a little icon will appear in most email fields. Let’s you create a new mask right there.
If you buy the premium version you can get your own custom subdomain: @XXXX.mozmail.com where you pick XXXX
This way you don’t even need the extension. You can just do something like “Lemmy@XXXX.mozmail.com” and Relay will “create” that email for you. Cannot recommend it enough, especially since it’s free to start
That actually seems really awesome, like it defeats the reason I would ever want to create multiple email accounts, which is to manage different contexts like professional, personal for family and friends, commercial email for online stores, and email lists.
I used to run my own mail server about 2 years ago but unfortunately the spam got so bad I didn’t have the time to manage all the filters. I moved over to ProtonMail since I can still use my own domain there. So I guess I would say it’s not really worth it also it really sucks if your power is out and not having access to sent your power company a strongly worded email.