summaryrefslogtreecommitdiff
path: root/hosts/cloud/proxy/authentik.nix
blob: c6c9685298cb3c3a0f2791caced2f5d09e3d3e9b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# TODO: integrade with oxalab-wg
{ config, ... }:
{
  # authentik
  services.nginx.upstreams.authentik = {
    extraConfig = ''
          keepalive 10;
    '';
    servers =
      {
        "10.89.88.2:9000" = { };
        "[fd31:185d:722f::2]:9000" = { };
      };
    };

    services.nginx.virtualHosts."sso.oxapentane.com" = {
      forceSSL = true;
      enableACME = true;
      locations."/" = {
        proxyWebsockets = true;
        proxyPass = "http://authentik";
        extraConfig = ''
          proxy_set_header X-Forwarded-Proto $scheme;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header Host $host;
          proxy_set_header Upgrade $http_upgrade;
          proxy_set_header Connection $connection_upgrade;
        '';
      };
    };
  }