Adding a minecraft server

This commit is contained in:
Lyes Saadi 2026-03-16 15:54:29 +01:00
parent fba02c0c19
commit a1e1272ebb
Signed by: lyes
GPG key ID: 55A1D803917CF39A
3 changed files with 79 additions and 0 deletions

View file

@ -26,6 +26,7 @@
../../modules/server/link
../../modules/server/maistro
../../modules/server/mikau
../../modules/server/midona
../../modules/server/nayru
../../modules/server/taf
../../modules/server/tetra

View file

@ -8,6 +8,7 @@
- `link` : Kanidm (`auth.lyes.eu`)
- `maistro` : Incus
- `mikau` : Jellyfin (`media.lyes.eu`)
- `midona` : Gate Minecraft Server Proxy
- `mogma` : VPN NetNS Configuration
- `nayru` : Komga/Manga (`manga.lyes.eu`)
- `taf` : Mail (`taf.lyes.eu`/`mail.lyes.eu`)

View file

@ -0,0 +1,77 @@
{ lib, pkgs, ... }:
let
config = lib.toFile "config.yml" ''
config:
lite:
enabled: true
routes:
- host: stepson.minecraft.minish.link
backend: 10.0.100.80:25565
'';
in
{
environment.systemPackages = with pkgs; [ gate ];
systemd.services.gate = {
description = "Gate Minecraft Proxy";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
serviceConfig = {
ExecStart = "${pkgs.gate}/bin/gate --config ${config}";
Restart = "always";
# StandardInput = "socket";
# StandardOutput = "journal";
# StandardError = "journal";
# Hardening
CapabilityBoundingSet = [ "" ];
DeviceAllow = [ "" ];
LockPersonality = true;
PrivateDevices = true;
PrivateTmp = true;
PrivateUsers = true;
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectProc = "invisible";
RestrictAddressFamilies = [
"AF_INET"
"AF_INET6"
];
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
SystemCallArchitectures = "native";
UMask = "0077";
};
};
services.nginx.streamConfig = ''
server {
listen 24454;
proxy_pass 10.0.100.80:24454;
}
server {
listen 24454 udp;
proxy_pass 10.0.100.80:24454;
}
'';
networking.firewall = {
allowedTCPPorts = [
25565
24454 # Simple Voice Chat stepson
];
allowedUDPPorts = [
25565
24454 # Simple Voice Chat stepson
];
};
}