This guide installs Mojang's official Bedrock Dedicated Server (BDS) on Windows or Linux (Ubuntu 22.04 or newer), opens UDP ports 19132/19133 and runs it as a service. Allow 15 to 30 minutes; the server is free, has no RCON or Java plugins, and needs at least 4 GB of RAM according to the Minecraft Wiki.
Step-by-step installation
Check the requirements (OS, 4 GB RAM, UDP open).
Download the server ZIP from minecraft.net/en-us/download/server/bedrock (Windows or Linux, Release version).
Extract it into a dedicated folder (the server writes its data to the working directory).
Edit server.properties (name, game mode, allow-list) with our tool.
Run bedrock_server.exe (Windows) or ./bedrock_server (Linux) and wait for “Server started”.
Add yourself to allowlist.json if allow-list=true, then test the connection on the LAN.
Open 19132/UDP (IPv4) and 19133/UDP (IPv6) on the firewall, router and provider.
Create a systemd service (Linux) or a scheduled task (Windows) for automatic start.
Schedule backups and updates, keeping worlds/, server.properties, allowlist.json and permissions.json.
Add your server on game-rank.com/jeux/bedrock.
1. Requirements
According to the Minecraft Wiki (Bedrock Dedicated Server page):
- Windows: Windows 10 (10.0.15063 or later) or Windows Server 2016 and later. Linux: Ubuntu 22.04 or newer is officially supported (glibc 2.35+ for other x86-64 distributions).
- CPU: dual-core minimum, quad-core x86-64 at 3 GHz or higher recommended. RAM: 4 GB minimum, more beyond 10 players. Startup/maximum memory cannot be set manually.
- Network: about 5 Mbps up and 10 Mbps down per 10 players; Ethernet preferred, static IP recommended. Disk: 180 MB minimum, 1 GB recommended for several worlds.
- No license key is needed to host. Players connect with Minecraft (Bedrock); with online-mode=true, Xbox Live authentication is required.
- Limits (wiki): no RCON, no SRV record support (the port must be specified), /reload does not reload the server (a restart is needed), MOTD cannot be set on the server.
2. Local install (Windows)
Extract the ZIP (right click > Extract all) into for example C:\bedrock, then double-click bedrock_server.exe; accept the Windows firewall prompt for private networks. The folder also contains bedrock_server_how_to.html, Mojang's bundled manual. From another device on the same network, add a server with the PC's local IP and port 19132. If the game runs on the same PC as the server, Windows may block loopback connections: try the PC's local IP and read the bundled manual.
cd /d C:\bedrock
bedrock_server.exe3. Install on a Linux VPS (Ubuntu)
Create a dedicated user, copy the Linux ZIP link from the official download page (replace <ZIP_URL>), extract it and start the server. Setting LD_LIBRARY_PATH=. is the common practice to load the libraries from the folder (not detailed on the official pages consulted; check bedrock_server_how_to.html).
sudo adduser --system --group --home /opt/bedrock bedrock
sudo apt update && sudo apt install -y unzip curl
sudo -u bedrock curl -L -o /opt/bedrock/bedrock.zip "<ZIP_URL>"
cd /opt/bedrock && sudo -u bedrock unzip bedrock.zip && sudo chmod +x bedrock_server
sudo -u bedrock env LD_LIBRARY_PATH=. ./bedrock_server4. Ports to open
Bedrock uses UDP (not TCP like Java). Ports are changed in server.properties (server-port, server-portv6).
- 19132/UDP — IPv4 (server-port, default 19132).
- 19133/UDP — IPv6 (server-portv6, default 19133).
- Provider firewall (OVH, Hetzner, Scaleway… “security group”): also allow these UDP ports on the provider side.
- Local hosting: forward 19132/UDP (and 19133/UDP for IPv6) from the router to the server's local IP. UDP can't be tested with “nc -vz”: test from outside (mobile data) by adding your public IP in Minecraft.
# Linux (ufw)
sudo ufw allow 19132/udp
sudo ufw allow 19133/udp
sudo ufw status
# Windows (PowerShell admin)
# netsh advfirewall firewall add rule name="Minecraft Bedrock v4" dir=in action=allow protocol=UDP localport=19132
# netsh advfirewall firewall add rule name="Minecraft Bedrock v6" dir=in action=allow protocol=UDP localport=191335. Automatic start (systemd + screen)
The Bedrock server is controlled through its console (stop command). This unit runs it in a screen session and sends “stop” on shutdown through a small script; install screen (sudo apt install screen), create /opt/bedrock/stop.sh (chmod +x), then sudo systemctl daemon-reload && sudo systemctl enable --now bedrock. Console: sudo -u bedrock screen -r bedrock (Ctrl+A then D to leave). On Windows, use a scheduled task “at startup” running bedrock_server.exe. Since the server's SIGTERM behaviour is not documented on the pages consulted, we go through the stop command.
# /etc/systemd/system/bedrock.service
[Unit]
Description=Minecraft Bedrock server
After=network-online.target
Wants=network-online.target
[Service]
User=bedrock
WorkingDirectory=/opt/bedrock
Environment=LD_LIBRARY_PATH=.
ExecStart=/usr/bin/screen -DmS bedrock ./bedrock_server
ExecStop=/opt/bedrock/stop.sh
Restart=on-failure
TimeoutStopSec=60
[Install]
WantedBy=multi-user.target6. Clean stop script
This script (place it at /opt/bedrock/stop.sh) sends the stop command to the screen session and waits for the session to end.
#!/bin/bash
screen -S bedrock -X stuff $'stop\r'
for i in $(seq 1 30); do
screen -list | grep -q '\.bedrock' || exit 0
sleep 1
done
exit 07. Updates and backups
Stop the server, back up the worlds/ folder (and server.properties, allowlist.json, permissions.json), download the new ZIP and extract it over the old one without replacing those files/folders (unzip's -x option excludes them). Clients must match the server version: update as soon as a new version is released. The save hold / save query / save resume commands allow a hot backup, but the stopped-server copy below is simpler and safer. Schedule it with cron.
#!/bin/bash
# /opt/bedrock/backup.sh (root, cron: 0 4 * * * /opt/bedrock/backup.sh)
set -e
systemctl stop bedrock
mkdir -p /opt/bedrock-backups
tar -czf /opt/bedrock-backups/worlds-$(date +%F).tar.gz -C /opt/bedrock worlds server.properties allowlist.json permissions.json
systemctl start bedrock
find /opt/bedrock-backups -name 'worlds-*.tar.gz' -mtime +14 -delete
# Update (server stopped, from /opt/bedrock):
# sudo -u bedrock unzip -o bedrock-new.zip -x server.properties allowlist.json permissions.json 'worlds/*'8. List your server
Add your server on game-rank.com/jeux/bedrock (the owner's site for these tools). Provide the IP or domain and the UDP port: Bedrock does not support SRV records, so the port must always be specified if it is not 19132. According to the Minecraft Wiki, Xbox, PlayStation and Switch players can only connect through LAN or a custom DNS.
9. Troubleshooting
- Can't connect from the Internet: open 19132/UDP (not TCP) on the system firewall, the provider's and the router forwarding; behind CGNAT (no public IP), use a VPS.
- A player is refused while the server is online: allow-list is true (default according to the wiki) and the player isn't in allowlist.json, or online-mode=true and the account isn't authenticated.
- Version error (“client outdated/newer”): client and server must be on the same version. Update the server or the client; make sure you aren't running a Preview server build.
- Server won't start on Linux (library or “GLIBC” error): check Ubuntu 22.04+ (glibc 2.35+), run with LD_LIBRARY_PATH=. from the server folder and chmod +x bedrock_server.
- Console players can't see the server: according to the wiki, Xbox, PlayStation and Switch only join via LAN or custom DNS; adding an IP directly isn't available.
Frequently asked questions
- Is the Bedrock server free?
- Yes, the Bedrock Dedicated Server is a free download on minecraft.net. You only pay for the machine or VPS that hosts it.
- Can I install plugins?
- Not Java plugins (Paper, Spigot). The official server supports Mojang behavior packs and scripting (the config/default/ folder lists allowed script modules); third-party servers exist but are not covered by this guide.
- How much RAM do I need?
- The wiki states 4 GB minimum, more beyond 10 players. Bedrock doesn't let you set startup/maximum memory: watch real usage and size the machine accordingly.
- Can I host Java and Bedrock on the same machine?
- Yes: they are two separate programs with different ports (25565/TCP for Java, 19132/UDP for Bedrock by default) and separate worlds. Plan RAM for both.
