setting up nix mailserver
This commit is contained in:
parent
4d7f393319
commit
6a5c8eeda9
|
@ -1,52 +1,66 @@
|
|||
{ pkgs, lib, config, ... }:
|
||||
|
||||
let
|
||||
fqdn = "mail.cochrun.xyz";
|
||||
dn = "cochrun.xyz";
|
||||
in
|
||||
with lib;
|
||||
{
|
||||
mailserver = {
|
||||
enable = true;
|
||||
fqdn = "mail.cochrun.xyz";
|
||||
domains = [ "cochrun.xyz" ];
|
||||
enableManageSieve = true;
|
||||
mailDirectory = "/home/chris/mailserver/docker-data/mail-data";
|
||||
mailboxes = {
|
||||
Archive = {
|
||||
auto = "subsribe";
|
||||
specialUse = "Archive";
|
||||
}
|
||||
Drafts = {
|
||||
auto = "subscribe";
|
||||
specialUse = "Drafts";
|
||||
services.caddy = {
|
||||
virtualHosts = {
|
||||
"mail.cochrun.xyz".extraConfig = ''
|
||||
tls internal {
|
||||
key_type rsa2048
|
||||
}
|
||||
respond "Hello DMS"
|
||||
'' ;
|
||||
};
|
||||
};
|
||||
mailserver = {
|
||||
enable = true;
|
||||
fqdn = fqdn;
|
||||
domains = [ dn ];
|
||||
enableManageSieve = true;
|
||||
mailDirectory = "/home/chris/mailserver/docker-data/mail-data";
|
||||
mailboxes = {
|
||||
Archive = {
|
||||
auto = "subsribe";
|
||||
specialUse = "Archive";
|
||||
};
|
||||
Drafts = {
|
||||
auto = "subscribe";
|
||||
specialUse = "Drafts";
|
||||
};
|
||||
Junk = {
|
||||
auto = "subscribe";
|
||||
specialUse = "Junk";
|
||||
};
|
||||
Sent = {
|
||||
auto = "subscribe";
|
||||
specialUse = "Sent";
|
||||
};
|
||||
Trash = {
|
||||
auto = "no";
|
||||
specialUse = "Trash";
|
||||
};
|
||||
};
|
||||
Junk = {
|
||||
auto = "subscribe";
|
||||
specialUse = "Junk";
|
||||
};
|
||||
Sent = {
|
||||
auto = "subscribe";
|
||||
specialUse = "Sent";
|
||||
};
|
||||
Trash = {
|
||||
auto = "no";
|
||||
specialUse = "Trash";
|
||||
useFsLayout = true;
|
||||
hierarchySeparator = "/";
|
||||
certificateScheme = "acme";
|
||||
certificateFile = "/var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/${fqdn}/${fqdn}.crt";
|
||||
keyFile = "/var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/${fqdn}/${fqdn}.key";
|
||||
loginAccounts = {
|
||||
"chris@cochrun.xyz" = {
|
||||
hashedPasswordFile = "/home/chris/mailp";
|
||||
aliases = [
|
||||
"postmaster@cochrun.xyz"
|
||||
"cxda@cochrun.xyz"
|
||||
"ceth@cochrun.xyz"
|
||||
"clocb@cochrun.xyz"
|
||||
"higdry@cochrun.xyz"
|
||||
"clin@cochrun.xyz"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
useFsLayout = true;
|
||||
hierarchySeparator = "/";
|
||||
certificateScheme = "acme";
|
||||
certificateFile = "/var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/mail.cochrun.xyz/mail.cochrun.xyz.crt";
|
||||
keyFile = "/var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/mail.cochrun.xyz/mail.cochrun.xyz.key";
|
||||
loginAccounts = {
|
||||
"chris@cochrun.xyz" = {
|
||||
hashedPasswordFile = "/home/chris/mailp";
|
||||
aliases = [
|
||||
"postmaster@cochrun.xyz"
|
||||
"cxda@cochrun.xyz"
|
||||
"ceth@cochrun.xyz"
|
||||
"clocb@cochrun.xyz"
|
||||
"higdry@cochrun.xyz"
|
||||
"clin@cochrun.xyz"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
../../modules/servers.nix
|
||||
../../pkgs/base-packages.nix
|
||||
../../modules/audiobookshelf.nix
|
||||
../../modules/mailserver.nix
|
||||
# ../../modules/matrix.nix
|
||||
];
|
||||
|
||||
|
@ -299,14 +300,6 @@
|
|||
reverse_proxy http://127.0.0.1:3000
|
||||
'';
|
||||
};
|
||||
virtualHosts = {
|
||||
"mail.cochrun.xyz".extraConfig = ''
|
||||
tls internal {
|
||||
key_type rsa2048
|
||||
}
|
||||
respond "Hello DMS"
|
||||
'' ;
|
||||
};
|
||||
virtualHosts = {
|
||||
"jelly.cochrun.xyz".extraConfig = ''
|
||||
reverse_proxy localhost:8096
|
||||
|
|
Loading…
Reference in a new issue