I recommend iRedMail to people who want to self-host their email. It handles lots and lots of stuff. DKIM, mailing lists, database-backed addresses and domains, etc. But don’t kid yourself. It’s hard. So many things to manage:
• spam filtering
• email scanning/virus scanning
• a database server
• inbox protocols (e.g. imap and exchange)
• web mail (with a web server)
• TLS (maintaining the certificate and integrating it with all the various services)
• OS-level maintenance/backup, etc.