nixos-config/mastus/www.nix

38 lines
995 B
Nix
Raw Normal View History

2015-10-25 09:29:49 +01:00
{ config, pkgs, ... }:
{
2016-06-17 07:48:07 +02:00
systemd.services.createNginxDH = rec {
2015-10-25 09:29:49 +01:00
path = [ pkgs.openssl ];
serviceConfig = { Type = "oneshot"; RemainAfterExit = "yes"; };
wantedBy = [ "nginx.service" ];
2016-06-17 07:48:07 +02:00
before = wantedBy;
2015-10-25 09:29:49 +01:00
script = ''
if [ ! -f /etc/nginx/dhparam.pem ]; then
mkdir -p /etc/nginx/
openssl dhparam 2048 >/etc/nginx/dhparam.pem
fi
'';
};
services.nginx = {
enable = true;
2015-12-05 13:41:20 +01:00
2019-08-25 18:04:33 +02:00
recommendedTlsSettings = true;
recommendedOptimisation = true;
2015-12-05 13:41:20 +01:00
2019-08-25 18:04:33 +02:00
sslDhparam = "/etc/nginx/dhparam.pem";
virtualHosts."_" = {
default = true;
addSSL = true;
useACMEHost = "gebner.org";
globalRedirect = "gebner.org";
2018-04-07 11:08:09 +02:00
};
2015-10-25 09:29:49 +01:00
};
2020-06-13 13:08:34 +02:00
# TODO: acme certificates are owned by root
# This workaround is from https://github.com/NixOS/nixpkgs/pull/84960
services.nginx.appendConfig = let cfg = config.services.nginx; in ''user ${cfg.user} ${cfg.group};'';
systemd.services.nginx.serviceConfig.User = pkgs.lib.mkForce "root";
2015-10-25 09:29:49 +01:00
}