nixfiles/hosts/hetzner-vm/containers/mail/modules/mailserver/ssl.nix

28 lines
620 B
Nix
Raw Normal View History

{
config,
lib,
...
}: let
2023-09-18 03:56:58 +01:00
inherit (lib.modules) mkIf;
mailConfig = config.services.mailserver;
2022-11-17 12:06:16 +00:00
acmeRoot = "/var/lib/acme/acme-challenge";
in {
2023-09-18 03:56:58 +01:00
config = mkIf (mailConfig.enable && mailConfig.sslConfig.useACME) {
2022-11-17 12:06:16 +00:00
services.nginx = {
enable = true;
2023-09-18 03:56:58 +01:00
virtualHosts."${mailConfig.fqdn}" = {
serverName = mailConfig.fqdn;
serverAliases = mailConfig.domains;
2022-11-17 12:06:16 +00:00
forceSSL = true;
enableACME = true;
acmeRoot = acmeRoot;
};
};
2023-09-18 03:56:58 +01:00
security.acme.certs."${mailConfig.fqdn}" = {
reloadServices = ["postfix.service" "dovecot2.service"];
2022-11-17 12:06:16 +00:00
};
};
2022-11-17 12:06:16 +00:00
}