From 877e806b3a3a6ea70277087ce7f660a4e9feaf83 Mon Sep 17 00:00:00 2001 From: Grisha Shipunov Date: Wed, 5 Feb 2025 18:11:49 +0000 Subject: add conduwuit matrix server --- hosts/cloud/proxy/conduwuit.nix | 45 +++++++++++++++++++++++++++++++++++++++++ hosts/cloud/proxy/default.nix | 1 + 2 files changed, 46 insertions(+) create mode 100644 hosts/cloud/proxy/conduwuit.nix (limited to 'hosts/cloud') diff --git a/hosts/cloud/proxy/conduwuit.nix b/hosts/cloud/proxy/conduwuit.nix new file mode 100644 index 0000000..323590d --- /dev/null +++ b/hosts/cloud/proxy/conduwuit.nix @@ -0,0 +1,45 @@ +{ self, ... }: +let + proxy-conf = '' + client_max_body_size 50M; + proxy_buffering off; + + proxy_set_header Host $host; + 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 $scheme; + proxy_set_header Access-Control-Allow-Origin *; + + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + + proxy_read_timeout 600s; + proxy_send_timeout 600s; + send_timeout 600s; + ''; + +in +{ + services.nginx.upstreams.conduwuit = { + servers = { + "10.89.88.16:6167" = { }; + "[fd31:185d:722f::16]:6167" = { }; + }; + }; + + services.nginx.virtualHosts."oxapentane.com" = { + locations."/_matrix/" = { + proxyPass = "http://conduwuit$request_uri"; + extraConfig = proxy-conf; + }; + locations."/_conduwuit/" = { + proxyPass = "http://conduwuit$request_uri"; + extraConfig = proxy-conf; + }; + locations."/.well-known/matrix" = { + proxyPass = "http://conduwuit$request_uri"; + extraConfig = proxy-conf; + }; + }; +} diff --git a/hosts/cloud/proxy/default.nix b/hosts/cloud/proxy/default.nix index d092b02..e233e65 100644 --- a/hosts/cloud/proxy/default.nix +++ b/hosts/cloud/proxy/default.nix @@ -5,6 +5,7 @@ in { imports = [ ./auth.nix + ./conduwuit.nix ./dav.nix ./git.nix ./immich.nix -- cgit v1.3.1