mailsystem: Configure rspamd as spam filter
This commit is contained in:
parent
b805502099
commit
9149f03384
6 changed files with 143 additions and 2 deletions
27
mailsystem/redis.nix
Normal file
27
mailsystem/redis.nix
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.mailsystem;
|
||||
redisCfg = config.services.redis.servers.rspamd;
|
||||
rspamdCfg = config.services.rspamd;
|
||||
in {
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.redis.servers.rspamd = {
|
||||
enable = true;
|
||||
# Don't accept connections via tcp
|
||||
port = 0;
|
||||
unixSocketPerm = 600;
|
||||
};
|
||||
|
||||
# TODO: Run commands as service user instead of as root?
|
||||
systemd.services.redis-rspamd.serviceConfig.ExecStartPost =
|
||||
"+"
|
||||
+ pkgs.writeShellScript "redis-rspamd-postStart" ''
|
||||
${pkgs.acl.bin}/bin/setfacl -m "u:${rspamdCfg.user}:x" "${builtins.dirOf redisCfg.unixSocket}"
|
||||
${pkgs.acl.bin}/bin/setfacl -m "u:${rspamdCfg.user}:rw" "${redisCfg.unixSocket}"
|
||||
'';
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue