PostgreSQL 9.1 installs its pid into a different folder than 9.2
Allow # in mail_db_password

I had a # in my mail_db_password and spent the last 2 hours trying to figure out why I couldn't connect by IMAP. A # is only allowed if the connect string is wrapped in quotes.
Making main user's shell configurable
quote password environment variable in case it contains shell metacharacters
Docs on setting up a DNS txt record for DKIM

To take advantage of the OpenDKIM installation it's important to set up a DNS txt record. This documentation addition explains how to do that.
Quote password variables (they may contain spaces)

String-valued variables containing spaces can be substituted into an ansible
tasks file but they will not be interpreted correctly.
Quote password substitution (may contain spaces)
polish to match the replacement of MySQL.

polish to match the replacement of MySQL with PostgreSQL.
Replace ufw with shorewall
WIP Modular firewall rules with ferm

This is UNTESTED, just work in progress.
See mailserver for an idea how the firewall could be configured
modular.
Replace ufw with shorewall
Remove residue
Remove firewall rules
Remove more old firewall things