Get your free server today! View Plans →
Home Plans Blog About Contact Panel Join Discord
Minecraft

How to set up your first Minecraft server

A plain, friendly walkthrough to run a Minecraft server for friends, covering RAM, Java, the EULA, server.properties, port forwarding, ops, whitelists and your first backup.

How to set up your first Minecraft server

So you want to run a Minecraft server for you and a few friends. Good call. It's not as scary as it looks, and once you've done it once you'll wonder why you waited. This walkthrough takes you from nothing to a running server, with a real focus on the stuff that trips people up the first time.

What you actually need

A Minecraft server is just a program that runs in the background and waits for players to connect. It doesn't need a graphics card or a gaming rig. What it cares about is RAM, a decent CPU, and a stable internet connection.

Here's a rough RAM guide for small groups. These are sensible starting points, not hard limits, and modded servers eat far more than vanilla.

PlayersVanilla / PaperLight mods or plugins
2 to 52 GB3 to 4 GB
5 to 103 to 4 GB4 to 6 GB
10 to 204 to 6 GB6 to 8 GB

For a handful of friends building and exploring, 4 GB is a comfortable spot. You can always bump it later. The most common beginner mistake is giving the server too little RAM and then blaming lag on something else.

Home hosting or a host?

You've got two ways to do this. Run it on a spare computer at home, or rent a server from a host. Both work. They just suit different people.

Running it at home is free if you've already got a PC sitting around. The catch is that the machine has to stay on whenever anyone wants to play, it uses your home internet (so your upload speed matters), and you'll need to open a port on your router so people outside your house can connect. More on that in a second, because it's where most people get stuck.

A host runs the server on hardware in a data center that's online all the time. You don't tie up your own PC, you don't touch your router, and you usually get a control panel to manage everything. The trade off is cost, though plenty of hosts offer a free tier to start. If you want to skip the home networking headache entirely, our free Coal plan at Bytte.cloud lets you spin up a small server and see if hosting is for you before you spend a penny.

Honestly, if you've never done this before and the goal is just to play with friends without babysitting a PC, a host is the easier road. But there's nothing wrong with learning on your own machine first. You'll understand the moving parts better.

Picking a version and a server type

First, decide on a Minecraft version. Match it to whatever version you and your friends play on. If you're all on the latest release, use that. If someone has mods tied to an older version, everyone needs to be on the same one. The server and the client have to match exactly or people just won't connect.

Next, the server type. This matters more than people expect:

If you just want better performance and the option to add things like permissions or homes later, go with Paper. You can run plugins such as EssentialsX and LuckPerms on it without any drama.

Installing the right Java version

Minecraft servers run on Java, and the version matters. Newer Minecraft needs newer Java. As a rough guide, modern versions (1.20 and up) want Java 21, while slightly older ones run on Java 17. If you try to start a server with the wrong Java, it'll either refuse to launch or throw an unsupported class version error.

Grab a free build from Adoptium (Temurin) or Azul Zulu rather than the consumer Java download. After installing, check it from a terminal:

java -version

You want to see the major version match what your server needs. If you're on a host, this is usually handled for you in the panel, which is one less thing to get wrong.

First start and the EULA

Put your server jar in its own empty folder. Don't drop it on your desktop or in Downloads, because the server creates a pile of files and folders around itself the first time it runs. Give it a clean home.

Run it once. On the first launch it'll generate some files and then stop almost immediately with a message about agreeing to the EULA. That's expected. Mojang requires you to accept the end user license agreement before the server will run.

Open the file called eula.txt and change the line so it reads:

eula=true

Save it, then start the server again. This time it'll build the world and open up properly. If you ever see the server quit straight away with no obvious error, this is the first thing to check.

The server.properties settings to change first

After that first proper start, you'll have a file called server.properties. This is the main config and it's plain text, so any editor works. You don't need to touch most of it, but a few lines are worth setting right away:

motd=Our little server
max-players=10
difficulty=normal
gamemode=survival
pvp=true
view-distance=10
white-list=true
online-mode=true

A few notes on these. The motd is the little description shown in the server list, so make it yours. Set max-players to match your RAM, not your ambition. view-distance at 10 is fine for a small group, and dropping it to 8 helps if things feel sluggish. Leave online-mode set to true so only people with real Minecraft accounts can join, which keeps random strangers out.

I turned on white-list in that example on purpose. We'll come back to why in a moment.

Port forwarding, and why home hosting needs it

If you're running at home, this is the part that catches everyone. Your server listens on port 25565 by default. On your own network, friends in the same house can connect using your computer's local address. But anyone outside your house can't reach it until you tell your router to send traffic on that port to the right machine. That's port forwarding.

The steps look roughly like this:

  1. Give the server computer a fixed local IP so it doesn't change.
  2. Log into your router's admin page (usually something like 192.168.0.1).
  3. Find the port forwarding section.
  4. Forward TCP port 25565 to that computer's local IP.
  5. Give friends your public IP address so they can connect.

It works, but be honest with yourself about the downsides. Forwarding a port exposes your home network a little more than before, so keep the server updated and don't run weird unknown plugins. Your public IP can change unless you pay for a static one, which means handing out a new address now and then. And your home upload speed becomes the ceiling for how many people can play smoothly. A quick warning: never share your router login or post your IP in public Discord channels.

This is the single biggest reason people move to a host. A rented server comes with its own address and the port already handled, so there's nothing to forward and nothing about your home network to worry about.

Make yourself operator and use a whitelist

Once the server is up, you want admin powers. In the server console, type:

op YourMinecraftUsername

That makes you an operator, which lets you run commands, change the time, give items and manage other players in game. Only op people you actually trust. An operator can do almost anything.

Now the whitelist. Because you set white-list=true earlier, only approved players can join. Add each friend by name from the console:

whitelist add FriendUsername
whitelist reload

For a server meant for friends, I'd always run with a whitelist on. It's the simplest way to make sure that the only people connecting are the ones you invited. Without it, anyone who finds your address can wander in.

Take your first backup

Before you and your friends pour hours into a base, make a backup. Worlds get corrupted, lightning strikes the wrong creeper, someone runs a command they shouldn't. A backup turns a disaster into a minor annoyance.

The world lives in the world folder next to your server jar (plus world_nether and world_the_end if they exist). The safest way to copy it is to stop the server first so the files aren't mid write, then zip the whole folder:

stop

Then, once it's fully shut down, copy or zip the world folders somewhere safe like an external drive or cloud storage. On a host, this is usually a one click backup button in the panel, and you can often schedule it to happen automatically. Either way, get into the habit early. The first backup you actually need is the one you'll be glad you took.

Where to go from here

That's the whole loop. Pick a version, get the right Java, accept the EULA, set a few values in server.properties, sort out port forwarding if you're at home, op yourself, whitelist your friends, and back things up. Once it's running you can start adding plugins, tweaking the difficulty, or trying a small mod pack.

Start simple. Get four friends on a plain Paper server before you go building a giant modded world with twenty plugins. You'll learn what each setting does, and when something breaks you'll have a much better idea where to look. Have fun with it.

Common questions

How much RAM do I need for a small Minecraft server?

For 2 to 5 friends on vanilla or Paper, 2 GB is a fine start and 4 GB is comfortable. Light plugins or mods push that to 4 to 6 GB. Modded packs need more. Giving the server too little RAM is the most common cause of lag for beginners.

Which Java version do I need?

It depends on the Minecraft version. Modern versions (1.20 and up) generally want Java 21, while slightly older ones run on Java 17. Run java -version to check what you have, and grab a free build from Adoptium Temurin or Azul Zulu if you need to update.

Why won't my server start after the first run?

The most common reason is the EULA. On first launch the server creates eula.txt and stops, waiting for you to agree. Open eula.txt, change the line to eula=true, save it, and start the server again. It should build the world and run properly.

Do I have to do port forwarding?

Only if you host at home. Your server listens on port 25565, and you must forward that port on your router so people outside your house can connect. If you rent a server from a host, the address and port are handled for you, so there is nothing to forward.

How do I keep strangers off my server?

Set white-list=true in server.properties, then add each friend with whitelist add FriendUsername in the console. Keep online-mode set to true so only real Minecraft accounts can join. Only op people you fully trust, since an operator can run almost any command.

ML
Marcus Lee
Infrastructure Lead at Bytte.cloud

Part of the Bytte.cloud team. We run game servers, bots and websites for a living, and we write these guides from what we see day to day in support and on our own servers.

Want to try this on real hardware?

Bytte.cloud has free plans for game servers, bots and websites. No credit card, set up in seconds.

Start for free See the plans