From c7349e466fef7ecff5a46b1d0c819975a6bdcb8c Mon Sep 17 00:00:00 2001 From: toufic ar Date: Wed, 22 Apr 2026 14:08:19 +0300 Subject: initial commit --- common/mail.nix | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 common/mail.nix (limited to 'common/mail.nix') diff --git a/common/mail.nix b/common/mail.nix new file mode 100644 index 0000000..fce389c --- /dev/null +++ b/common/mail.nix @@ -0,0 +1,37 @@ +{config, ...}: let + domainFqdn = config.customOps.domain.fqdn; + domainName = config.customOps.domain.name; + domainTld = config.customOps.domain.tld; +in { + customOps.mailAccounts = { + "domain@${domainFqdn}" = { + passwdFile = "mailserver/domain"; + aliases = [ + "dmarc@${domainFqdn}" + "rua@${domainFqdn}" + "ruf@${domainFqdn}" + "caa@${domainFqdn}" + "tls@${domainFqdn}" + ]; + }; + "root@${domainFqdn}" = { + passwdFile = "mailserver/root"; + aliases = [ + "postmaster@${domainFqdn}" + "security@${domainFqdn}" + "abuse@${domainFqdn}" + "webmaster@${domainFqdn}" + "info@${domainFqdn}" + "support@${domainFqdn}" + ]; + aliasesRegex = [ + "/^admin\\..*@${domainName}\\.${domainTld}$/" + ]; + }; + "contact@${domainFqdn}" = { + passwdFile = "mailserver/contact"; + aliases = ["@${domainFqdn}"]; + catchAll = [domainFqdn]; + }; + }; +} -- cgit v1.2.3