diff --git a/configuration.nix b/configuration.nix index 7fb941a..48176a3 100644 --- a/configuration.nix +++ b/configuration.nix @@ -7,6 +7,7 @@ ./packages.nix ./jobs.nix ./matrix.nix + ./email.nix ./magnetico.nix ./nameserver.nix ./custom @@ -36,6 +37,8 @@ firewall.allowedTCPPorts = [ 443 80 # reverse proxy + 993 # imaps server + 25 465 # smtp(s) server 8080 # hubot 5349 # turn server 5350 # turn server @@ -371,6 +374,12 @@ # Syncthing locations."/sync/".proxyPass = "http://localhost:8384/"; + + # User static files + locations."/~rnhmjoj/" = { + alias = "/home/rnhmjoj/www/"; + extraConfig = "charset UTF-8;"; + }; }; # Breve URL shortner diff --git a/email.nix b/email.nix new file mode 100644 index 0000000..f01a19e --- /dev/null +++ b/email.nix @@ -0,0 +1,47 @@ +{ config, ... }: + +{ + imports = [ + (builtins.fetchTarball { + url = "https://gitlab.com/simple-nixos-mailserver/nixos-mailserver/-/archive/nixos-20.09/nixos-mailserver-nixos-20.09.tar.gz"; + sha256 = "0vsvgxxg5cgmzwj98171j7h5l028f1yq784alb3lxgbk8znfk51y"; + }) + ]; + + security.acme = { + email = "rnhmjoj@inventati.org"; + acceptTerms = true; + }; + + mailserver = { + enable = true; + fqdn = "mail.eurofusion.eu"; + domains = [ "eurofusion.eu"]; + + loginAccounts = config.secrets.emailAccounts; + + extraVirtualAliases = { + "abuse@eurofusion.eu" = "rnhmjoj@eurofusion.eu"; + }; + + # Use Let's Encrypt certificate + certificateScheme = 3; + + # There is one already (pdns-recursor) + localDnsResolver = false; + + # Enable IMAP, SMTP + enableImapSsl = true; + enableSubmissionSsl = true; + }; + + # Improve hashing speed + services.dovecot2.extraConfig = '' + auth_cache_verify_password_with_worker = yes + ''; + # Prefer IPv6 + services.postfix.extraConfig = '' + smtp_address_preference = ipv6 + ''; + +} diff --git a/secrets/default.nix b/secrets/default.nix index 4d35e97..a373bec 100644 --- a/secrets/default.nix +++ b/secrets/default.nix @@ -1,45 +1,56 @@ -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 -0ZB2qpqpQFoblaEoHDjgboWgbDkjSNDmKQ== +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 diff --git a/secrets/pass/gmarcer.pwd b/secrets/pass/gmarcer.pwd new file mode 100644 index 0000000..c1083d1 --- /dev/null +++ b/secrets/pass/gmarcer.pwd @@ -0,0 +1,2 @@ +U2FsdGVkX196+2n2N30QJgKlS5tkir0VWlFSEcP4Yrqg38w/Il8PL/8SRklXLXwD +5NTcgNA4EXp8+ccS8n3cmS2RjqSZNp8ZGlgONxZPxwdcY2gV diff --git a/secrets/pass/rnhmjoj.pwd b/secrets/pass/rnhmjoj.pwd new file mode 100644 index 0000000..707d614 --- /dev/null +++ b/secrets/pass/rnhmjoj.pwd @@ -0,0 +1,2 @@ +U2FsdGVkX1+hzdJWty+aSUN/FIN3b8/9VyaEVNG5G+2FG0CgFOavWfW3g/o4ZcwD +3OCWEgTo7rqsQGGCbi92y/TnuTbMytrN+84eGQ0dVkV1COJD