Compare commits

...

3 commits

Author SHA1 Message Date
fi
f73990a427
WIP 2026-04-07 22:59:15 +02:00
fi
f19436b178
Allow proxy protocol to reverse proxy 2026-04-07 22:03:15 +02:00
fi
fe86c128ed
Put matrix federation behind reverse proxy 2026-04-07 21:32:12 +02:00
6 changed files with 35 additions and 12 deletions

View file

@ -11,10 +11,17 @@
addr = "0.0.0.0";
port = 80;
}
{
addr = "0.0.0.0";
port = 8443;
ssl = true;
proxyProtocol = true;
}
{
addr = "0.0.0.0";
port = 8448;
ssl = true;
proxyProtocol = true;
}
];
locations = {
@ -49,8 +56,6 @@
};
};
extraConfig = ''
listen 0.0.0.0:8443 http2 ssl proxy_protocol;
set_real_ip_from 10.202.41.100; # IPv4 from web-public-2
set_real_ip_from 10.203.10.3; # IPv6 from valkyrie
real_ip_header proxy_protocol;
@ -64,6 +69,12 @@
addr = "0.0.0.0";
port = 80;
}
{
addr = "0.0.0.0";
port = 8443;
ssl = true;
proxyProtocol = true;
}
];
locations = {
"/" = {
@ -79,8 +90,6 @@
};
};
extraConfig = ''
listen 0.0.0.0:8443 http2 ssl proxy_protocol;
set_real_ip_from 10.202.41.100; # IPv4 from web-public-2
set_real_ip_from 10.203.10.3; # IPv6 from valkyrie
real_ip_header proxy_protocol;
@ -94,6 +103,12 @@
addr = "0.0.0.0";
port = 80;
}
{
addr = "0.0.0.0";
port = 8443;
ssl = true;
proxyProtocol = true;
}
];
locations."^~ /livekit/jwt/" = {
proxyPass = "http://localhost:8082/";
@ -103,8 +118,6 @@
proxyWebsockets = true;
};
extraConfig = ''
listen 0.0.0.0:8443 http2 ssl proxy_protocol;
set_real_ip_from 10.202.41.100; # IPv4 from web-public-2
set_real_ip_from 10.203.10.3; # IPv6 from valkyrie
real_ip_header proxy_protocol;

View file

@ -7,7 +7,7 @@
nftables.enable = true;
firewall = {
enable = true;
allowedTCPPorts = [ 80 443 ];
allowedTCPPorts = [ 80 443 8448 ];
allowedUDPPorts = [ 51820 51821 51822 51824 51827 51828 51829 51830 ];
};
wireguard = {

View file

@ -58,6 +58,11 @@
ssl_preread on;
proxy_protocol on;
}
server {
listen [::]:8448;
proxy_pass 10.202.41.112:8448; # matrix federation port
proxy_protocol on;
}
'';
};
}

View file

@ -21,7 +21,7 @@
hostName = "web-public-2";
firewall = {
enable = true;
allowedTCPPorts = [ 80 443 5000 8448 ];
allowedTCPPorts = [ 80 443 5000 8443 8448 ];
};
};

View file

@ -17,8 +17,8 @@
stream {
map $ssl_preread_server_name $address {
cloud.nekover.se 10.202.41.122:8443;
element.nekover.se 127.0.0.1:8443;
element-admin.nekover.se 127.0.0.1:8443;
element.nekover.se 10.202.41.100:8443;
element-admin.nekover.se 10.202.41.100:8443;
fi.nekover.se 10.202.41.125:8443;
git.nekover.se 10.202.41.106:8443;
hydra.nekover.se 10.202.41.121:8443;
@ -26,7 +26,7 @@
mas.nekover.se 10.202.41.112:8443;
matrix.nekover.se 10.202.41.112:8443;
matrix-rtc.nekover.se 10.202.41.112:8443;
nekover.se 127.0.0.1:8443;
nekover.se 10.202.41.100:8443;
mesh.nekover.se 10.202.41.126:8443;
nix-cache.nekover.se 10.202.41.121:8443;
searx.nekover.se 10.202.41.105:8443;
@ -38,6 +38,11 @@
ssl_preread on;
proxy_protocol on;
}
server {
listen 0.0.0.0:8448;
proxy_pass 10.202.41.112:8448; # matrix federation port
proxy_protocol on;
}
}
'';

View file

@ -4,7 +4,7 @@
forceSSL = true;
enableACME = true;
listen = [{
addr = "localhost";
addr = "0.0.0.0";
port = 8443;
ssl = true;
extraParameters = ["proxy_protocol"];