Creating Your Own Minecraft Server
Running your own Minecraft server lets you build a community, customize gameplay, and play with friends on your terms. This guide covers everything from the initial setup to getting your first players.
Choosing Your Server Type
Vanilla
The default Minecraft server from Mojang. No modifications, just pure Minecraft. Good for small friend groups.
Paper / Purpur
Performance-optimized forks of the vanilla server. Support Bukkit/Spigot plugins. Recommended for most servers.
Forge / NeoForge
For modded Minecraft. Players need to install the same mods. Great for modpacks like ATM, RLCraft, etc.
Fabric
Lightweight mod loader. Growing modding community with focus on performance (Lithium, Sodium mods).
Bedrock Dedicated Server (BDS)
Official Bedrock server software. Limited plugin support via addons.
Hardware Requirements
| Players | RAM | CPU | Storage |
|---------|-----|-----|---------|
| 1-5 | 2 GB | 2 cores | 10 GB SSD |
| 5-20 | 4 GB | 3 cores | 20 GB SSD |
| 20-50 | 6 GB | 4 cores | 40 GB SSD |
| 50-100 | 8-12 GB | 6 cores | 60 GB SSD |
| 100+ | 16+ GB | 8+ cores | 100+ GB NVMe |
Self-Hosting Setup (Java Edition)
1. Install Java
Download and install Java 21 (required for MC 1.20.5+):
- Windows: Download from Adoptium
- Linux:
sudo apt install openjdk-21-jre-headless
2. Download Server Software
Download Paper from papermc.io — it's the most popular choice for good reason.
3. Create Start Script
Create a start.sh (Linux) or start.bat (Windows):
java -Xms2G -Xmx4G -jar paper.jar --nogui4. First Run & Configuration
Run the script. It'll generate files. Edit:
server.properties— Game settings (difficulty, gamemode, max players)eula.txt— Change toeula=truebukkit.yml/spigot.yml/paper.yml— Performance settings
5. Port Forwarding
Open port 25565 on your router:
- 1Find your router's admin page (usually 192.168.1.1)
- 2Navigate to Port Forwarding settings
- 3Add a rule: External port 25565 → Internal IP, port 25565 (TCP)
6. Firewall
- Windows: Add Java to Windows Firewall exceptions
- Linux:
sudo ufw allow 25565/tcp
Essential Plugins
Every server should have these:
- EssentialsX — Core commands (/home, /tpa, /warp)
- LuckPerms — Permission management
- Vault — Economy API
- WorldGuard — Region protection
- CoreProtect — Block logging and rollbacks
- GriefPrevention — Player land claiming
Getting Your First Players
Once your server is ready:
- 1List it on BMCSL — Add your server for free visibility
- 2Create a Discord — Community hub for your players
- 3Set up Votifier — Let players vote for rewards
- 4Post on forums — r/mcservers, Minecraft Forum, Planet Minecraft
- 5Be active — Play on your own server and engage with new players
VPS Hosting Alternative
If self-hosting isn't an option, rent a VPS:
- Hetzner — Best value in Europe (€4/month for 4GB)
- OVH — Budget-friendly with Minecraft-optimized VPS
- Contabo — Cheapest high-RAM servers
Install the server software the same way as self-hosting, but skip port forwarding — VPS ports are already open.
Next Steps
- Listing Your Server — Get visibility on BMCSL
- Voting System — Set up Votifier for engagement