Monday, February 17, 2014

My personal technology stack: Mail Server

As I mentioned in my previous post My personal technology stack: My Server I feel that it's important to have a technology stack that's important to you and that solves technology problems that you deal with on a day to day basis. In that post I outlined the hardware I use to run my server and services. In this post I'd like to talk specifically about my mail server.

I run my mail server on a virtual machine running Slackware 13.37. Slackware is one of the oldest running Linux distributions and is EXTREMELY stable. Slackware doesn't provide a lot of bells and whistles in terms of GUI utilities. I find that the lack of GUI utilities actually helps me to learn and understand the underpinnings of Linux.

My mail server runs Qmail (setup via the wonderful instructions provided by Roberto Puzzanghera) for mail queuing and STMP as well as Dovecot for IMAP with the Pigeonhole Sieve plugin for dynamic filtering support.

Unfortunately we live in a world where SPAM is out of control. This is especially true if you're email can be found anywhere on the Internet. In order to deal with the constant onslaught of SPAM I also install and run Spamassassin.

Running Qmail and Dovecot allows me to connect any modern email client to send and receive email via IMAP/POP/SMTP. One of the things that's important to me is consistency in mail clients. In order to really have my mail accessible from anywhere I run a web based frontend to provide web access to my email from any HTTPS enabled browser. I've chosen Roundcube as my web mail frontend. Roundcube is a very mature web based mail client which support things like drag & drop and integrates well with my Spassassin and Sieve (mail filtering) services via built in plugins.

With this setup my wife and I are able to access our email accounts from our phones (previously iOS and currently Android), our home laptops (Chromebook Pixel and MacBook), as well as our work computers (Windows and OS X). The experience is pretty seemless. On our phones we use the native email client and on our work and home computers we use the web based interface as it provides a consistent experience across all our laptop/desktop machines.

This is just a small part of my home technology stack. But it gives you an idea of how I invest in technology from home. I'll write a few posts in the future with some details of the other parts of my technology stack.


  1. Great post Paul. What made you say, "let me build my mail server"? talks about various ways of getting the same service. But, you didn't pick any of that. Did you build it because you wanted to learn about all the pieces of the mail server? Is it cheaper to have your own mail server and not worry about the monthly/yearly subscriptions? What are some of the pros and cons of having your own mail server?

    1. It started out as me wanting to learn about the ins and outs of running mail server in a Linux environment. But I've continued to do so because I like owning my own data and having full control of what services are available to me for consuming that data.