Maddy: Difference between revisions

From NixOS Wiki
imported>Onny
Initial example setup Maddy mail server
 
imported>Onny
mNo edit summary
Line 5: Line 5:
{{Note|Following example describes the usage of an experimental module which is still being reviewed as an open PR and might not be ready for production.}}
{{Note|Following example describes the usage of an experimental module which is still being reviewed as an open PR and might not be ready for production.}}


The following example enables the Maddy mail server listening on mail delivery SMTP/Submission ports (<code>25,  587</code>) and IMAP/IMAPS ports (<code>143/993</code>) for mail clients to connect to.
The following example enables the Maddy mail server listening on mail delivery SMTP/Submission ports (<code>25,  587</code>) and IMAP/IMAPS ports (<code>143/993</code>) for mail clients to connect to. The server is configured to send and receive mails for the primary domain <code>example.org</code>.


{{file|/etc/nixos/configuration.nix|nix|<nowiki>
{{file|/etc/nixos/configuration.nix|nix|<nowiki>
Line 11: Line 11:
   enable = true;
   enable = true;
   openFirewall = true;
   openFirewall = true;
  primaryDomain = "example.org";
   tls = {
   tls = {
     certPath = /tmp/example.org.crt;
     certPath = /tmp/example.org.crt;

Revision as of 18:07, 2 August 2022

Maddy is a composable, modern mail server written in Go. It includes everything required to manage users, inboxes, send and receive mails while supporting all important secure protocols and standards.

Installation

Note: Following example describes the usage of an experimental module which is still being reviewed as an open PR and might not be ready for production.

The following example enables the Maddy mail server listening on mail delivery SMTP/Submission ports (25, 587) and IMAP/IMAPS ports (143/993) for mail clients to connect to. The server is configured to send and receive mails for the primary domain example.org.

/etc/nixos/configuration.nix
services.maddy = {
  enable = true;
  openFirewall = true;
  primaryDomain = "example.org";
  tls = {
    certPath = /tmp/example.org.crt;
    keyPath = /tmp/example.org.key;
  };
  imap = {
    port = 143;
    tlsEnable = true;
    tlsPort = 993;
  };
};
services.rspamd.enable = true;

Configuration