You're in the right place if you're looking for instructions on how to make a Minecraft server. Follow the steps below to create your own Minecraft server for free.

Hosting With a Provider

If you do not want to go through the trouble of opening ports on your router (possibly opening your home network to malicious intrusions) and configuring your Minecraft server from scratch, we recommend RentaServer.io, a Minecraft server provider. They have an easy to use and intuitive control panel. They also offer free Minecraft server trials and the ability to host multiple game servers (not just Minecraft) through paid dedicated servers.

Port Forwarding

If you choose to host your Minecraft server locally, you will first need to port forward. Port forwarding simply means opening part of your home firewall to outside connections. By default, home firewalls block all incoming connections. When you open your ports, you are allowing other people and Minecraft clients to connect to your server through the specified port.

First, find your WAN IP address or public ip address. Your public IP address may change depending on your ISP so you should check if it has changed frequently. Visit https://whatismyip.com to find your public IP address.

You will also need to grab your local private or local IP address as well. Write both of these values down.

public ip address

Double check your private or local IP address by bringing up Command Prompt or Windows PowerShell and typing in ipconfig.

You should see something similar to this:

ipconfig

Look for IP Address or IPv4 Address and double check it with the private or local IP address value provided from https://whatismyip.com. Make sure you are not behind a VPN or your values may be incorrect!

In order to port forward, you will need access to your home router's control panel. There should be a menu item within the control panel that either says Firewall or Port Forwarding. If you are having trouble with your router, find your router's version on your routing device and visit PortForward.com to find your router's specific instructions.

The default ports for Minecraft server are the following:

TCP Protocol: 25565
    UDP Protocol: 25565

These default ports can be changed in your Minecraft server.properties file later but it is best to leave them as they are for now for convenience's sake.

Your router's control panel for port forwarding should look something like this:

router port forward

The Start to End or Port Number are listed above. There are two application protocols, TCP and UDP, it is recommended to add them both.

Enter the previously written down IP Address or IPv4 Address into the IP Address, LAN Address, Internal Address, or NAT Address field. Whichever is present for your router.

Save your configuration and port forwarding should be set up.

Hosting Locally (Mac & Windows)

  1. Install the latest Java version from here
  2. Download and install the latest Minecraft version from here
  3. Create a new file directory for your server and place the just downloaded server.jar file in that directory
  4. Run the server.jar file once by double-clicking on the executable. The folder logs, the file eula.txt, and the file server.properties should now have been created in your server directory
  5. Open eula.txt and change the line eula=false to eula=true to accept Mojang's EULA policy and then save the file
  6. Run the server.jar file again and a GUI should pop up.

If you favor running things from command line with more control over Java's resource use, run the following command in Command Prompt or PowerShell:

java -Xmx1024M -Xms1024M -jar server.jar nogui

-Xmx1024M is the maximum amount of memory the server instance should be allowed to use.
    -Xms1024M is the minimum amount of memory the server instance should be using.

Configure the server.properties file to fit your Minecraft server requirements. If you are asked to select a program to open the file, select Notepad. A list of available Minecraft configuration options and their descriptions can be found here.

If you are having any issues connecting to your Minecraft server, see Troubleshooting

Hosting On A Server (Ubuntu Linux)

  1. Update your Ubuntu Server by running apt-get update && apt-get upgrade -y
  2. Install OracleJDK 11
    1. Install required packages: apt-get install software-properties-common -y
    2. Add the OracleJDK 11 repository PPA: add-apt-repository ppa:linuxuprising/java
    3. Refresh your applications list: apt-get update
    4. Install Java 11: apt-get install oracle-java11-installer -y
  3. Download and install the latest Minecraft version from here
  4. Create a new file directory for your server with mkdir and place the just downloaded server.jar file in that directory
  5. Run the server.jar file once by typing the following command in terminal:

java -Xmx1024M -Xms1024M -jar server.jar nogui

The folder logs, the file eula.txt, and the file server.properties should now have been created in your server directory. Edit eula.txt with the command nano eula.txt and change the line eula=false to eula=true to accept Mojang's EULA policy and then save the file.

Configure the server.properties file with the command nano server.properties to fit your Minecraft server requirements.

The command to save in nano is Ctrl + X. Press Y to confirm your changes. A list of available Minecraft configuration options and their descriptions can be found here.

Modding Minecraft Server

Now that you have your Minecraft server set up, you may be thinking about adding mods to it. Check out our How To Mod a Minecraft Server Page

Troubleshooting

If you're having trouble connecting your Minecraft server and everything else seems to be running fine, check your ports. With your server running, visit https://canyouseeme.org/ to check if your ports are opened and accessible by the public internet.

Enter in your Minecraft server's port numbers or the default port number 25565, , and to check if your Minecraft server is accessible to the public.