Skip to main content
Server10 min read

How to Set Up a Bedrock Dedicated Server

Step-by-step guide to downloading, configuring, and running an official Minecraft Bedrock Dedicated Server on Windows or Linux.

What is BDS?

Bedrock Dedicated Server (BDS) is the official server software released by Mojang for hosting Minecraft Bedrock Edition worlds. It allows you to run a persistent multiplayer world that players on Windows, mobile, and console can join. BDS runs on Windows 10/11 (64-bit) and Ubuntu Linux (64-bit).

System Requirements

  • OS: Windows 10/11 64-bit or Ubuntu 22.04+ 64-bit
  • CPU: 2+ cores recommended, modern x86-64 processor
  • RAM: 1 GB minimum, 2+ GB recommended for multiple players
  • Storage: 500 MB for the server software, plus world data
  • Network: Stable internet connection, ability to forward ports

Downloading BDS

Download the latest version from the official Minecraft website. Select the appropriate version for your operating system. The download is a ZIP file containing the server executable and default configuration files.

Extract the ZIP file to a dedicated folder. On Linux, make the binary executable:

chmod +x bedrock_server

Configuration

The main configuration file is server.properties. Key settings include:

server-name=My Bedrock Server
gamemode=survival
difficulty=normal
max-players=10
server-port=19132
server-portv6=19133
level-name=Bedrock level
level-seed=
online-mode=true
allow-cheats=false
view-distance=32
tick-distance=4
player-idle-timeout=0
max-threads=8
texturepack-required=false
content-log-file-enabled=false
compression-threshold=1
server-authoritative-movement=server-auth
player-movement-score-threshold=20
player-movement-action-direction-threshold=0.85
player-movement-distance-threshold=0.3
player-movement-duration-threshold-in-ms=500
correct-player-movement=false

Adjust these values based on your hardware and preferences. The server-port is the UDP port that players connect to (default 19132).

Starting the Server

Windows

bedrock_server.exe

Double-click the executable or run it from a command prompt.

Linux

LD_LIBRARY_PATH=. ./bedrock_server

The LD_LIBRARY_PATH=. ensures the server can find its bundled libraries.

Running as a Service (Linux)

To keep the server running after you close the terminal, create a systemd service file:

[Unit]
Description=Minecraft Bedrock Server
After=network.target

[Service]
Type=simple
User=minecraft
WorkingDirectory=/opt/bedrock-server
ExecStart=/opt/bedrock-server/bedrock_server
Environment=LD_LIBRARY_PATH=/opt/bedrock-server
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

Enable and start the service:

sudo systemctl enable minecraft-bedrock
sudo systemctl start minecraft-bedrock

Port Forwarding

For players outside your local network to connect, you need to forward UDP port 19132 (or your custom port) on your router. The exact steps vary by router model, but generally:

  1. Log in to your router admin panel (usually 192.168.1.1 or 192.168.0.1).
  2. Find the port forwarding section.
  3. Create a new rule forwarding external UDP port 19132 to your server's local IP address on port 19132.
  4. Save the configuration.

Players connect using your public IP address and the configured port.

Whitelisting and Permissions

Edit the allowlist.json file to control who can join:

[
  {
    "name": "PlayerName",
    "xuid": "1234567890",
    "ignoresPlayerLimit": false
  }
]

Set allow-list=true in server.properties to enable the whitelist.

The permissions.json file controls operator levels:

[
  {
    "permission": "operator",
    "xuid": "1234567890"
  }
]

Updating the Server

To update BDS, download the new version and extract it over the existing files. Back up your world data and configuration files first. The world data is stored in the worlds folder. Copy your server.properties, allowlist.json, and permissions.json to the new installation.

Console Commands

The server console accepts standard Bedrock commands without the forward slash:

say Hello everyone
stop
save hold
save resume
save query
whitelist add PlayerName
op PlayerName

Troubleshooting

  • If players cannot connect, check that the port is forwarded and the firewall allows UDP traffic on port 19132.
  • If the server crashes on startup, verify you have the correct 64-bit version for your OS.
  • On Linux, if you get library errors, make sure you set LD_LIBRARY_PATH correctly.
  • Console players may need to add the server through a companion app or DNS workaround if custom servers are restricted on their platform.

Related Astroworld Resources

Related Guides