kroskinski.com (~$)
jerry@homelab:~/docs

jerry@homelab:~/docs$ cat minecraft.md

Minecraft on Wasteland

I run a Paper server with Geyser and Floodgate, allowing both Java and Bedrock editions to play together on a single server. It also has a BlueMap live map, accessible at minecraft.kroskinski.com.

The Whitelist Exception

Wasteland’s general rule is to never bind a service to 0.0.0.0 (public). Minecraft is the one deliberate exception. I use a strict whitelist and layered access control so friends can connect with a plain IP address, no Tailscale installation required.

  • Java Whitelist: adding usernames requires a full docker compose up -d. Paper starts before the env var is written to the file.
  • Bedrock Whitelist: a different mechanism. I must pre-resolve the Bedrock gamertag’s floodgateUUID and add it to whitelist.json directly. The hex-to-UUID conversion must be precise (e.g., arrange 16-hex XUID into 00000000-0000-0000-XXXX-XXXXXXXXXXXX).

Architecture & Live Map

The BlueMap instance is exposed via Caddy to the shared proxy Docker network (gated by Authelia forward-auth for one_factor security). Only the main web map is publicly accessible over HTTPS; the game ports themselves (25565, 19132) are strictly router-port-forwarded to the LAN IP.

Gotcha: Coordinate Confusion. Make sure you are standing at the right Y-level (F3 Block line) before setting a block or coordinate target. Assuming Y=100 when you are at Y=65 costs time.

jerry@homelab:~/docs$

cd ..