Prepay & save up to 40% · 3 months −20% · 6 months −30% · 12 months −40% Client Area
Guide

How to Make a Minecraft Server for Friends

Minecraft··8 min read
Minecraft: Java Edition key art — How to Make a Minecraft Server for Friends

A server for friends has different needs from a public one. You do not need a server list entry, a spawn hub or anti-cheat. You need four things: the right edition for the people you play with, a whitelist so only they can get in, operator rights for yourself, and an address that works from their houses. This guide sets those up in order, including the whitelist change in Minecraft 26.3 that has been locking people out of their own servers.

First, which edition are your friends on?

This decides everything else, so settle it before you set anything up:

  • Everyone on PC with Minecraft: Java Edition — run a Java server. This is the flexible option: Paper plugins, Forge and Fabric modpacks, full control.
  • Everyone on console, mobile or Windows Bedrock — run a Bedrock server. Java servers cannot be joined from Bedrock without extra software.
  • A mix of both — run a Java server with Geyser and Floodgate. Geyser translates between the two editions; Floodgate lets Bedrock players join without owning a Java account. There is one catch, covered in Step 6: Geyser follows Java releases with a delay.

If three people play vanilla on one edition, Minecraft Realms may be cheaper than any server — our Minecraft server cost breakdown compares Realms, hosting and running it at home.

Step 1 — Size the server for your group

Pick RAM for what you will actually run. As a rough guide, 3–4 GB is comfortable for vanilla survival with a handful of friends, 6 GB for a plugin-heavy SMP or a mid-sized modpack, and more for large packs. Our RAM calculator gives a figure for your player count and mods. You can move up a plan later without losing the world, so there is no need to buy for the group you might have next year.

If you host on your own PC instead, the Minecraft wiki puts the floor at 2 GB of RAM and 5 GB of disk, and warns that Wi-Fi is a poor choice for the host machine. Current releases (26.1 and newer) need Java 25.

Step 2 — Start the server and accept the EULA

A fresh Java server creates eula.txt on its first run and then shuts down immediately. It will not start until that file says eula=true, which is you accepting Mojang's end user licence agreement. On a hosted server the panel either handles this or asks you to accept on first start; at home, open the file, change false to true, and start the server again.

Let the first start finish. The console prints Done once the world has generated — joining before that point just gets you refused.

Step 3 — Make yourself an operator

Operators can run server commands from inside the game. From the server console, type:

op YourName

In the console you leave off the leading slash; in game chat you include it. This writes you into ops.json at the level set by op-permission-level, which defaults to 4 — full owner rights. Use deop YourName to reverse it. Only op people you would trust with the whole world: an operator can change the game mode, teleport anyone and stop the server.

There is a second reason to do this before Step 4: on Java Edition, operators can always join, even when they are not on the whitelist. That makes it much harder to lock yourself out.

Step 4 — Turn on the whitelist and add your friends

The whitelist is what makes the server private. Only players on it can join, so a stranger who finds your address gets turned away. The commands, run from the console or by an operator in game:

  • /whitelist on and /whitelist off — switch it on or off
  • /whitelist add Name — add a player (they do not need to be online)
  • /whitelist remove Name — take one off
  • /whitelist list — see who is on it
  • /whitelist reload — re-read whitelist.json after you edit the file by hand

Watch out for the 26.3 change. Since Minecraft 26.3 the whitelist is on by default in server.properties (white-list=true); it used to default to off. A brand-new 26.3 server with an empty whitelist lets nobody in except operators. If your friends see "You are not white-listed on this server" on a server you just created, that is why — add them and it clears.

Two related settings are worth knowing. enforce-whitelist=true kicks anyone already online who is not on the list when the whitelist is reloaded — useful when you remove someone. And keep online-mode=true: with it off, anyone can connect under any username, including one that is on your whitelist, so the whitelist stops protecting anything.

Running Bedrock rather than Java? The same idea is called the allowlist there, managed with /allowlist.

Step 5 — Share the address

Your friends need the server address and, unless it is the default, the port: address:port. Java uses TCP 25565 by default and Bedrock uses UDP 19132, but hosted servers often sit on another port, so copy the address from your panel rather than typing it from memory. A Java player adds it under Multiplayer → Add Server; a Bedrock player adds it under Servers → Add Server, with the port in its own field.

If you host at home, the address is your public IP and you need port forwarding on your router. Players inside your house should use the host's local IP instead. When someone cannot connect, the exact error text says where to look — see our connection error guide.

Step 6 — Let Bedrock friends in with Geyser

For a mixed group, install Geyser and Floodgate on a Paper server. Geyser listens for Bedrock players on UDP 19132 by default; Floodgate means they do not need a Java account. On our crossplay servers both come preinstalled and Geyser reuses the Java port number, so Bedrock players type the same address and port as everyone else.

The version catch: Geyser has to support the Java version your server runs, and it trails new releases. At the time of writing it supports Java 26.2 but not yet 26.3, which is why our crossplay servers run 26.2. Do not update the server past the version Geyser supports, or Bedrock players will stop connecting.

Whitelisting Bedrock players works differently, because Floodgate gives them a prefixed name — a dot by default, so Steve becomes .Steve:

  • The easiest route is Floodgate's own command, /fwhitelist add Steve, using the Bedrock name without the dot. It only works once that player has joined a Geyser server before.
  • With the normal command you need the prefix and quotes: /whitelist add ".Steve".
  • If neither works, turn the whitelist off briefly, let them join once, add them, and turn it back on.

Step 7 — Set the rules for your group

A few server.properties values change how the server feels for a small group. Stop the server before editing, then start it again:

  • difficulty — defaults to easy. Most survival groups want normal or hard.
  • max-players — defaults to 20. It is a cap, not a guarantee; the hardware decides how many can play smoothly.
  • spawn-protection — defaults to 16 blocks, where only operators can build. Set it to 0 if everyone should be able to build at spawn.
  • view-distance and simulation-distance — both default to 10. Lowering them is the cheapest way to reduce lag; raising them costs CPU and memory fast.

PvP is no longer a server.properties setting — since 1.21.9 it is a game rule, changed in game by an operator. Old tutorials that tell you to set pvp=false in the file are out of date.

Finally, make sure backups run. A friends' server is years of shared builds, and one bad plugin update or a griefer who got past the whitelist before you turned it on can undo them. Our plans take backups automatically; if you self-host, schedule your own copy of the world folder.

Lag once everyone is online? Our lag guide covers the usual causes.

Get a Minecraft server for your friends →

Minecraft server for friends FAQ

How do I make my Minecraft server private?
Turn on the whitelist with /whitelist on and add each friend with /whitelist add Name. Keep online-mode set to true, otherwise anyone can join under a whitelisted name.
Why does my new server say I am not white-listed?
Since Minecraft 26.3 the whitelist is on by default, so a new server with an empty list only lets operators in. Op yourself from the console, then add your friends with /whitelist add.
Can Bedrock and Java friends play on the same server?
Yes, with Geyser and Floodgate on a Java server. Geyser trails new Java releases, so the server has to stay on a version Geyser supports, which was 26.2 at the end of September 2026.
How do I whitelist a Bedrock player on a Geyser server?
Use /fwhitelist add followed by their Bedrock name without the prefix, after they have joined once. With the normal command you need the Floodgate prefix and quotes, for example /whitelist add ".Steve".
Do my friends need to own Minecraft?
Yes. Java players need Minecraft: Java Edition and Bedrock players need a Bedrock version. With Floodgate, Bedrock players do not also need a Java account.

Related guides

Share:Twitter / XFacebookRedditWhatsApp

Ready to play?

Deploy your server in under 60 seconds — 7-day money-back guarantee.

Browse games