diff --git a/nix-system-configs/modules/system/traefik.nix b/nix-system-configs/modules/system/traefik.nix index 92b089e..891096f 100644 --- a/nix-system-configs/modules/system/traefik.nix +++ b/nix-system-configs/modules/system/traefik.nix @@ -296,6 +296,11 @@ in { address = "[::]:993"; }; + # SMPT TCP entrypoint (For Pelican's Wings file service) + pelican-wings-file = { + address = "[::]:25565"; + }; + # Minecraft TCP entrypoint (Minecraft Java Edition default port) minecraft = { address = "[::]:25565"; @@ -385,12 +390,6 @@ in { tls = {certresolver = "acme";}; }; - wings-file = { - rule = "Host(`wings1.prg-radio.org`)"; - service = "wings-pelican-file"; - entryPoints = ["websecure"]; - tls = {certresolver = "acme";}; - }; # Matrix HTTP router for client requests (Element etc.) matrix = { @@ -498,12 +497,6 @@ in { passHostHeader = true; }; - wings-pelican-file.loadBalancer = { - servers = [ - {url = "http://10.1.1.249:2022";} - ]; - passHostHeader = true; - }; wings-pelican.loadBalancer = { servers = [ @@ -591,7 +584,12 @@ in { entryPoints = ["imaps"]; tls = {passthrough = true;}; }; - + pelican-wings-file = { + # Use catch-all SNI rule because Minecraft clients don't use TLS/SNI + rule = "HostSNI(`*`)"; + service = "pelican-wings-file"; + entryPoints = ["pelican-wings-file"]; + }; # TCP router for Minecraft (plain TCP on 25565) minecraft = { # Use catch-all SNI rule because Minecraft clients don't use TLS/SNI @@ -645,6 +643,13 @@ in { servers = [{address = "10.1.1.15:993";}]; }; + # TCP service for SMTP of the Pelican + pelican-wings-file.loadBalancer = { + servers = [ + {address = "10.1.1.249:2022";} + ]; + }; + # TCP service for Minecraft minecraft.loadBalancer = { servers = [ @@ -654,10 +659,10 @@ in { # TCP game services openra.loadBalancer = { - servers = [{address = "10.1.1.244:1234";}]; + servers = [{address = "10.1.1.249:1234";}]; }; openttd.loadBalancer = { - servers = [{address = "10.1.1.244:3979";}]; + servers = [{address = "10.1.1.249:3979";}]; }; }; @@ -707,16 +712,16 @@ in { # UDP game services (Valheim and Xonotic) "valheim-2456".loadBalancer = { - servers = [{address = "10.1.1.244:2456";}]; + servers = [{address = "10.1.1.249:2456";}]; }; "valheim-2457".loadBalancer = { - servers = [{address = "10.1.1.244:2457";}]; + servers = [{address = "10.1.1.249:2457";}]; }; "valheim-2458".loadBalancer = { - servers = [{address = "10.1.1.244:2458";}]; + servers = [{address = "10.1.1.249:2458";}]; }; xonotic.loadBalancer = { - servers = [{address = "10.1.1.244:26000";}]; + servers = [{address = "10.1.1.249:26000";}]; }; }; };