I’ve needed to update my email server for a while. This time I wanted to do the installation with Saltstack:
- Saltstack is fun
- It means I have an easy-to-read document about what is on the server and how it is installed.
Tools like Saltstack are not just for when you’ve got lots of servers. Having a simple set of files that show exactly what has been changed from default and why is invaluable.
Ok – there are a few parts to this system.
- exim4 handles the SMTP part – incoming and outgoing email;
- SpamAssassin will do the SPAM filtering;
- dovecot will handle reading email via IMAP
Plus we need various security bits and pieces, user accounts and so on.
I’ll be running SaltStack in masterless mode – there isn’t any point in running a dedicated Salt Master server.
Salt starts at top.sls which looks like this:
# Top file for putting an email server together # Will be used from Masterless mode so always trigger everything base: '*': - saltmasterless - ntp - exim - spam-assassin - dovecot - users - fail2ban - logcheck - backup
This will pull in the .sls files containing all the details for each component.