A VPS gives you complete control over your Minecraft server. No game panel limitations, no shared resources, and the freedom to configure everything exactly as you want. The trade-off: you have to set everything up yourself. In this guide, we walk through the installation step by step, from a bare Linux VPS to a running, optimized Minecraft server.
Step 1: choose a VPS and log in
Choose a VPS with at least 4 GB RAM and 2 CPU cores for a small server (up to 10 players). For larger communities, go with 8 GB or more. Ubuntu 24.04 LTS or Debian 12 are solid choices for the operating system.
Log in via SSH: ssh root@YOUR_IP. First, update the system:
apt update && apt upgrade -y
Step 2: install Java 25
Minecraft 26.x requires Java 25. Install it:
apt install -y wget wget https://download.eclipse.org/adoptium/25/latest/jdk/x64/linux/OpenJDK25-jdk_x64_linux_hotspot.tar.gz tar -xzf OpenJDK25-jdk_x64_linux_hotspot.tar.gz mv jdk-25* /opt/java-25
Add Java to your PATH by adding to /etc/profile.d/java.sh:
export JAVA_HOME=/opt/java-25 export PATH=$JAVA_HOME/bin:$PATH
Source it: source /etc/profile.d/java.sh and verify: java -version.
Step 3: create a dedicated user
Never run a Minecraft server as root. Create a dedicated user:
useradd -m -s /bin/bash minecraft
Step 4: download and configure Paper
Switch to the minecraft user and set up the server:
su - minecraft mkdir server && cd server wget https://api.papermc.io/v2/projects/paper/versions/26.3/builds/LATEST/downloads/paper-26.3-LATEST.jar -O paper.jar
Create a start script start.sh with optimized JVM flags (Aikar's flags):
#!/bin/bash java -Xms4G -Xmx4G -XX:+UseG1GC -XX:+ParallelRefProcEnabled \ -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions \ -XX:+DisableExplicitGC -XX:+AlwaysPreTouch \ -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 \ -XX:InitiatingHeapOccupancyPercent=15 \ -XX:G1MixedGCLiveThresholdPercent=90 \ -XX:G1RSetUpdatingPauseTimePercent=5 \ -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem \ -XX:MaxTenuringThreshold=1 \ -jar paper.jar --nogui
Make it executable: chmod +x start.sh. Run it once to generate the files, accept the EULA by editing eula.txt to eula=true, then run again.
Step 5: configure server.properties
Key settings to adjust in server.properties:
server-port=25565(or your preferred port)view-distance=10(reduce to 8 or 6 for better performance)simulation-distance=6(keeps entity processing manageable)max-players=20(set to your expected player count)motd=(your server's description)
Step 6: open the firewall
ufw allow 25565/tcp ufw allow 22/tcp ufw enable
Step 7: auto-start with systemd
Create /etc/systemd/system/minecraft.service so the server starts on boot and restarts on crash:
[Unit] Description=Minecraft Server After=network.target [Service] User=minecraft WorkingDirectory=/home/minecraft/server ExecStart=/home/minecraft/server/start.sh Restart=on-failure RestartSec=10 [Install] WantedBy=multi-user.target
Enable and start: systemctl enable minecraft && systemctl start minecraft.
Step 8: optimization
For the best performance:
- In
paper-global.yml: enable async chunk loading, reduce entity activation range. - In
spigot.yml: reduce mob spawn limits, increase merge radius for items and XP orbs. - Install anti-lag plugins like ClearLagg for automatic entity cleanup.
- Set up automated restarts every 6 to 12 hours to prevent memory buildup.
Should I use a game panel on my VPS?
Optional but recommended if you manage multiple servers. Pterodactyl is a popular free panel that provides a web interface for file management, console, and player management. For a single server, command-line management with screen or tmux works fine.
How do I update the server?
Stop the server, download the latest Paper jar, replace the old one, and start again. Your world, plugins, and configuration are preserved. Always back up before updating.
Can I run multiple servers on one VPS?
Yes, if you have enough RAM. Each server needs its own directory and port. A VPS with 16 GB RAM can comfortably run 2 to 3 small servers. Use different ports (25565, 25566, etc.) or set up a Velocity proxy.
Need a VPS for your Minecraft server? Check our VPS plans starting at 4 GB RAM, or go with managed Minecraft hosting if you prefer a ready-to-use setup.