nix-configs/hosts/katzencafe/proxy.nix
2023-04-25 14:53:25 +02:00

61 lines
1.5 KiB
Nix

{ inputs, config, pkgs, ... }:
{
security.acme = {
acceptTerms = true;
defaults.email = "jade@schrottkatze.de";
defaults.server = "https://acme-staging-v02.api.letsencrypt.org/directory";
defaults.webroot = "/var/lib/acme/acme-challenge";
certs = {
"ck.katzen.cafe" = {
group = "nginx";
keyType = "rsa4096";
};
"meet.katzen.cafe" = {
group = "nginx";
keyType = "rsa4096";
};
"wiki.phtanum-b.katzen.cafe" = {
group = "nginx";
keyType = "rsa4096";
};
"mumble.katzen.cafe" = {
group = "murmur";
keyType = "rsa4096";
};
};
};
services.nginx = {
enable = true;
recommendedGzipSettings = true;
recommendedOptimisation = true;
recommendedProxySettings = true;
recommendedTlsSettings = true;
virtualHosts = {
"ck.katzen.cafe" = {
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass = "http://localhost:3000";
proxyWebsockets = true;
extraConfig = ''
client_max_body_size 8M;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
'';
};
};
"wiki.phtanum-b.katzen.cafe" = {
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass = "http://localhost:8099";
};
};
};
};
}