Greetings. I’m Jeff Johnson and I founded Digital Ruby in 2009 in order to learn how to run a software company, teach myself mobile programming and expand my skills and knowledge. I craft iOS apps, websites and server software.
My latest blog post:
Jul 9, 2018
It’s 2018. We’ve had since the very early 1980s to write email server software. You’d think we would have it nailed down, super easy and have a few top choices that just worked out of the box on Windows and Linux.
Recently I had the need to setup a mail server on Ubuntu server that could perform unlimited message sending. Having looked at gmail and other ‘free’ options, I realized there were many limitations such as send limits, and more seriously the fact that Google harvests all mail message data for their own purposes. I therefore got to work finding free software to setup on a Linux VPS.
Open source software was my first check and almost every solution had problems or was very confusing to setup, especially when needing to read in SSL certificates. Most options did not actually send the email on to the destination which seems like such an obvious feature. So I thought that maybe Linux just has a really good pre-installed option…
So I researched standard built in Linux smtp servers and discovered that postfix was the most popular option. After spending several hours banging my head against cryptic configuration files and a myriad of strange errors and crashes, I realized that this kind of configuration nightmare was not for me. Maybe Windows has a better option I thought…
Scouring the Interwebs, I found a few other Windows smtp server implementations, like hMailServer, but unfortunately hMailServer does not allow a single pfx certificate file, among other oddities.
Of course like any good developer, I decided to re-implement the wheel (⸮) and I spent a day writing Mail Demon, a C# smtp server written and compatible with .NET core 2.0+. This is a very lean, fast and easy to configure mail server. Set a few options in a json configuration file (appsettings.json) and you are done. SSL, TLS, certificate horrors, useless error messages and send limit agony are now a thing of the past. I also added smarts to drop bad clients and block them out. If you don’t want to install .NET core, you can do a “self contained” publish of the software to your Windows, Linux or MAC server and eliminate the need to have any additional software installed.
Mail Demon is currently designed to be a one way mail server. This is not what you want if you want to receive email, do spam filtering and allow people to login and and manage their email. This is strictly for sending email messages, probably from a [email protected]*** or [email protected]*** address. Combined with this sms email gateway list I put up a while ago, this will let you send unlimited emails and text messages. With great power comes great responsibility, please don’t send spam or other unwanted messages.
Mail Demon is hosted on github. Right now the support is fairly simple, with STARTTLS, plain authentication and text/html messages supported. Binary message format, line format, etc. will come later. This is enough to send notifications and announcements to your customers without limits which is a great start.
Enjoy, and please give feedback and pull requests.
- The Sorry State of SMTP Server Software
- You Doodle Update 2018
- Cryptocurrency is Going Bananas
- Cryptocurrency is Partying Like it’s 1999
- Time Management – A Small Nugget of Wisdom About Agile Software Development
- Apple Limits App Titles to 50 Characters, Still Doesn’t Get Search
- Getting a Properly Rotated UIImage from AVCaptureSession
- Really Cheap Home NAS (Network Attached Storage)
- Customer Service Tips
- Solving the Problem of Online Voting
- Shader – How to do Simple Bit Masking in an OpengL / Unity Shader
- Unity – My Experience Making Unity Assets
- Happy New Year 2016
- AdMob Crashes Apps… Again.
- iOS Core Graphics vs Android Canvas API
- You Doodle for Android Progress Update
- Using Xamarin to put You Doodle on Android
- H Pylori is no Fun – H Pylori Treatment, and H Pylori Success Story
- AdMob Outperforms iAd and Facebook Audience Network
- Procedural Lightning Featured on Unity Asset Store
- Xamarin Product Tiers Analysis
- Facebook Audience Network Ads Crash Big Time
- Lightning Particle System for Unity 3D – Procedural Lightning
- iAd vs. Facebook Audience Network
- The Value of Your App Portfolio