Several of my self hosted services need to be able to send minor occasional emails for things like changing passwords or other notifications.
I’ve never been interested in the hassle of self-hosting my personal email, since I’ve heard about it being difficult. But for my little local services to have one admin@ or noreply@ to send from, with just a small handful of friends and family as users, maybe it’s simpler than a full personal email replacement would be? I’m not too concerned, for example, if they have to check their spam folders. As long as the email still lands. And probably wouldn’t need to worry about incoming emails.
What are you using for this type of thing? Hoping to have something not too complicated, and FOSS.
Edit: I also would like it to come from ____@mydomain.com
Postfix + Amazon SES free tier
I have every one of my selfhosted domains, apps and even list monk sending mail (tho I don’t have an actual newsletter yet)
My domain registrar hosts my email too, so I set up a mailbox for self-hosted services to send emails from. Is this an option for you? For me I figured it would be a lot easier than setting up a mailserver myself and doing the research you’re now doing.
I’m hosting Mailcow in a cheap VPS, for both personal/family and system emails. Not something I’d necessarily recommend (it’s overkill for your requirements anyway), but the initial setup and maintenance are not nearly as difficult as people will try to make you believe. Before that I just used Gmail. You can point your sending application to
smtp.gmail.com, STARTLS on port 587 or SSL on port 465, username is your email address, and a Gmail app password you create beforehand.For inbound, I use Postfix + rspamd + dovecot directly to my server. Outbound, I used to send it directly from my server. I did this 15+ years with DKIM, DMARC, and SPF. It worked well for like 95% of the emails I sent, but I started relaying through smtp2go.com after I had just a couple really important emails not get delivered or me not be sure if the recipient saw them.
I use smtp2go.com rather than deal with ptr records on my dynamic residential address
I also use this service.
What are you using for this type of thing?
I just created a send-only mailbox in the account I already have at my hosting service and use this in all my services.
I’m not going to set up a mail server and deal with all the security issues and problems with private dial-up IP addresses myself. Been there, done that. Wasn’t fun.
I’m not too concerned, for example, if they have to check their spam folders. As long as the email still lands.
In that case, it really isn’t that much of a hassle. A basic mail system isn’t that complicated to set up (just make sure you have proper authentication and such, don’t host an open relay!). I actually did this not too long ago, using maddy, which unlike the traditional postfix+dovecot setup (which I had also been looking into) means you don’t even have to host separate services for SMTP and IMAP, and it also automates most additional things that are necessary nowadays for you, like TLS, DKIM, DMARC, and so on. Not quite everything though, there’s still stuff needed to do manually, mostly to set the SPF and DMARC records in the DNS, but it’s been working really well so far.
And really, the only mail provider you have to worry about for putting your mails into spam is gmail. They’re the worst. (maybe microsoft-hosted outlook too, but I haven’t encountered anyone using that)
Good answer! I get tired of the self hosted email FUD. Sure there’s more to it than “docker up” (Maddy is close though) but it’s not that hard and it’s thoroughly documented at this point. So many tutorials.
The big problem you’ll run into is that it’s very likely outgoing connections to port 25 is blocked. In my experience it’s very uncommon that residential ISPs allow it, and even most VPS providers will block it unless you request access. So you’ll most likely need some form of relay anyway, and at that point you may as well send directly to the relay.
Port 25 being blocked on residential connections is still a thing, but it’s much less of a thing than it used to be.
I’ve never had an issue just using the submission port when the default smtp port was blocked :D
I’ve never run into it being blocked on a VPS or ded host provider. I wonder if this is a locale thing or if you’ve been unlucky enough to choose providers that attract enough abusers to require these policies.
On residential connections, that’s probably the case, yes. I’m hosting it on a VPS though and have had no problems with blocked ports so far. I imagine it depends on the provider?
I verified my domain with Proton and I can send mails from my domain through their servers and pass all sender verification and reputation tests. This works without needing to control a public IP in a range that is allowed to send mail to the common mail services.
I’m not too concerned, for example, if they have to check their spam folders
Then you can self host. I use stalwart but in your case I would probably use mox
@crandall selfhosting an email server is far from being a hassle. Nowadays it is really easy. You can setup everything in less an hour.
I use stalwart + a postfix relay on a cheap vps.Ah yes. Fuck with dns, reverse dns/ptr records, dmarc, dkim, spf, verify server is not on a blacklisted ip in spamhaus, stand up a server, then implement anti spam filters, and hope anything you send doesn’t end up in someone else’s spam filters, as well as monthly checks to make sure no spam lists have sudddenly added your domain/ip to said lists.
But hey easy right?
It is kind of a hassle to get all your DNS set up so your mail doesn’t go to spam. If you don’t already know what you’re doing it will probably take over an hour.
My ISP offers unauthenticated SMTP for their customer addresses. It’s pretty heavily rate limited, but well enough for the occasional status email my system throws out. At least around here they are pretty common for residential customers, so that might be an option.
Other possibility is to set up SMTP relay to your network and give it credentials to an actual email account (with SMTP support, which isn’t granted these days). It can take in emails from your network without credentials and throw them to the internet with your account. It’s pretty simple to set up, search for postfix + smarthost. Added bonus is that you can read the replies to that address too via your email provider services.
I use Brevo.com which gives a generous 300 emails per day limit on the free plan.
I will say that the web portal is a bit confusing but once you set it up you basically never need to go there again.
Maybe it’s a bit off-topic, but for my transactional emails, I use Scaleway TEM’s free tier. 300 mails/month are included, if you go above, it’s 0.25€ per 1000 mails. Dirt cheap. Never have I gone above the free tier limit. And it saves me from the hassle to have to setup something to send emails on thr server itself. Note that I had strange behavior while I tried to validate my domain while I used CloudFlare’s nameservers.
I’m using nullmailer, it’s as simple as it gets and has worked flawlessly for me for many years now:
If its internal network traffic only, you can just use stalwart and add the DNS records to your network so that stuff can use SMTP.
Otherwise, (also with stalwart or your preferred software), you will want to use an SMTP relay so that outgoing messages will be delivered without the hassle of getting your domain reputational enough for sent messages not getting junked by the big email providers.
I’m extra lazy and haven’t set this up, so I just have a public mail server that only receives messages because my outgoing SMTP port is blocked by my ISP.












