X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=modules%2Fprivate%2Fmail%2Fopensmtpd.nix;h=a7be066f4f95bf780501fab39f53250dc84d96e3;hb=e05c9acce708e8467817e0f3b7367c299c41dc40;hp=7831ac0d587bcf352426d72962b2e33ce74c16c6;hpb=deca5e9bf0cfd02c52c39e051753aeb9640a66f3;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/modules/private/mail/opensmtpd.nix b/modules/private/mail/opensmtpd.nix index 7831ac0..a7be066 100644 --- a/modules/private/mail/opensmtpd.nix +++ b/modules/private/mail/opensmtpd.nix @@ -8,26 +8,35 @@ group = "smtpd"; permissions = "0400"; text = '' - eldiron ${name}:${config.myEnv.servers."${name}".ldap.password} + eldiron ${name}:${config.hostEnv.ldap.password} ''; } ]; users.users.smtpd.extraGroups = [ "keys" ]; services.opensmtpd = { enable = true; - serverConfiguration = '' + serverConfiguration = let + filter-rewrite-from = pkgs.runCommand "filter-rewrite-from.py" { + buildInputs = [ pkgs.python3 ]; + } '' + cp ${./filter-rewrite-from.py} $out + patchShebangs $out + ''; + in '' table creds \ "${config.secrets.fullPaths."opensmtpd/creds"}" - # FIXME: filtering requires 6.6 + # FIXME: filtering requires 6.6, uncomment following lines when + # upgrading # filter "fixfrom" \ - # proc-exec "${pkgs.procmail}/bin/formail -i 'From: ${name}@immae.eu'" + # proc-exec "${filter-rewrite-from} ${name}@immae.eu" + # listen on socket filter "fixfrom" action "relay-rewrite-from" relay \ - helo ${config.hostEnv.FQDN} \ + helo ${config.hostEnv.fqdn} \ host smtp+tls://eldiron@eldiron.immae.eu:587 \ auth \ mail-from ${name}@immae.eu action "relay" relay \ - helo ${config.hostEnv.FQDN} \ + helo ${config.hostEnv.fqdn} \ host smtp+tls://eldiron@eldiron.immae.eu:587 \ auth match for any !mail-from "@immae.eu" action "relay-rewrite-from"