Instalacja serwera Minecraft na Ubuntu Linux: przewodnik krok po kroku
Instalacja własnego serwera Minecraft na Ubuntu Linux daje pełną kontrolę nad pluginami, wydajnością i bezpieczeństwem. W MineGuard pomagamy setkom właścicieli serwerów i zdecydowana większość z nich działa właśnie na Ubuntu. W tym przewodniku przeprowadzimy cię przez wszystkie etapy: od czystego systemu do gotowego do pracy serwera.
Wymagania
Zanim zaczniesz, upewnij się, że masz:
- Ubuntu 22.04 LTS albo Ubuntu 24.04 LTS (dla nowych serwerów polecamy 24.04)
- Java 21 (obowiązkowa dla Minecrafta 1.21+)
- Minimum 2 GB pamięci RAM (4 GB+ dla 10+ graczy)
- VPS albo serwer dedykowany z dostępem root lub sudo
- Stabilne łącze internetowe z prędkością co najmniej 10 Mbit/s
Jeśli uruchamiasz serwer w domu, trzeba będzie też skonfigurować przekierowanie portów. O tym piszemy na końcu.
Krok 1: Aktualizacja systemu
Zawsze zaczynaj od aktualizacji pakietów:
sudo apt update && sudo apt upgrade -y
To zapewni zainstalowanie wszystkich łatek bezpieczeństwa i aktualny indeks pakietów.
Krok 2: Instalacja Javy 21
Minecraft 1.21+ wymaga Javy 21. Zainstaluj JRE:
sudo apt install openjdk-21-jre-headless -y
Sprawdź instalację:
java -version
Powinieneś zobaczyć coś w stylu:
openjdk version "21.0.4" 2024-07-16
Jeśli w repozytoriach twojej wersji Ubuntu nie ma Javy 21, dodaj repozytorium Adoptium:
sudo apt install wget apt-transport-https -y
wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | sudo tee /etc/apt/trusted.gpg.d/adoptium.asc
echo "deb https://packages.adoptium.net/artifactory/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/adoptium.list
sudo apt update
sudo apt install temurin-21-jre -y
Krok 3: Utworzenie dedykowanego użytkownika
Nigdy nie uruchamiaj serwera Minecraft z konta root. Utwórz osobnego użytkownika:
sudo useradd -r -m -d /opt/minecraft -s /bin/bash minecraft
To utworzy systemowego użytkownika minecraft z katalogiem domowym /opt/minecraft.
Krok 4: Pobranie Paper (albo Purpur)
Polecamy Paper dla większości serwerów. Zapewnia najlepszą równowagę między wydajnością a kompatybilnością z pluginami. Dla dodatkowych możliwości dostosowania spróbuj Purpur.
Przełącz się na użytkownika minecraft i pobierz serwerowy jar:
sudo su - minecraft
mkdir -p /opt/minecraft/server
cd /opt/minecraft/server
wget -O paper.jar https://api.papermc.io/v2/projects/paper/versions/1.21.4/builds/123/downloads/paper-1.21.4-123.jar
Zastąp URL najnowszą wersją ze strony pobierania Paper.
Krok 5: Akceptacja EULA
Uruchom serwer raz, żeby wygenerować pliki konfiguracyjne:
java -jar paper.jar --nogui
Serwer zatrzyma się i poprosi o akceptację EULA. Zedytuj plik:
nano eula.txt
Zmień eula=false na:
eula=true
Zapisz i wyjdź (Ctrl+X, Y, Enter).
Krok 6: Konfiguracja server.properties
Zedytuj główny plik konfiguracyjny:
nano server.properties
Kluczowe parametry:
server-port=25565
max-players=50
view-distance=10
simulation-distance=8
motd=My Minecraft Server
online-mode=true
enable-command-block=false
spawn-protection=16
Ważne: Zostaw online-mode=true, jeśli nie używasz proxy typu Velocity. Wyłączenie pozwoli każdemu wejść z dowolnym nickiem.
Krok 7: Flagi JVM Aikara
Te flagi JVM to złoty standard wydajności serwerów Minecraft. Optymalizują garbage collection i zużycie pamięci:
java -Xms2G -Xmx2G -XX:+UseG1GC -XX:+ParallelRefProcEnabled \
-XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions \
-XX:+DisableExplicitGC -XX:+AlwaysPreTouch \
-XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 \
-XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 \
-XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 \
-XX:G1MixedGCLiveThresholdPercent=90 \
-XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 \
-XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 \
-jar paper.jar --nogui
Zmień -Xms i -Xmx zgodnie z dostępnym RAM-em. Zawsze ustawiaj taką samą wartość. Nie przydzielaj całej pamięci, zostaw minimum 1 GB dla systemu operacyjnego.
Krok 8: Utworzenie usługi systemd
Użycie screen albo tmux nadaje się do testów, ale na produkcję lepiej użyć systemd. Zapewnia autostart przy ładowaniu i autorestart przy awariach.
Najpierw wróć do użytkownika z sudo:
exit
Utwórz plik usługi:
sudo nano /etc/systemd/system/minecraft.service
Wklej konfigurację:
[Unit]
Description=Minecraft Server
After=network.target
[Service]
User=minecraft
Group=minecraft
WorkingDirectory=/opt/minecraft/server
ExecStart=/usr/bin/java -Xms2G -Xmx2G -XX:+UseG1GC -XX:+ParallelRefProcEnabled \
-XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions \
-XX:+DisableExplicitGC -XX:+AlwaysPreTouch \
-XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 \
-XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 \
-XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 \
-XX:G1MixedGCLiveThresholdPercent=90 \
-XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 \
-XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 \
-jar paper.jar --nogui
Restart=on-failure
RestartSec=10
StandardInput=null
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
Aktywuj i uruchom usługę:
sudo systemctl daemon-reload
sudo systemctl enable minecraft.service
sudo systemctl start minecraft.service
Sprawdź status:
sudo systemctl status minecraft.service
Podgląd logów w czasie rzeczywistym:
sudo journalctl -u minecraft.service -f
Screen/tmux czy systemd
Wiele przewodników nadal poleca screen albo tmux. Nadają się do developmentu, ale mają wady w zastosowaniach produkcyjnych:
- Nie startują automatycznie po restarcie
- Nie restartują serwera przy crashu
- Trzeba ręcznie podłączać się do sesji
systemd rozwiązuje wszystkie te problemy automatycznie. Jeśli potrzebujesz dostępu do konsoli, użyj mcrcon do wysyłania komend przez RCON.
Krok 9: Konfiguracja firewalla
Ubuntu jest dostarczane z ufw (Uncomplicated Firewall). Zezwól na ruch Minecrafta:
sudo ufw allow 25565/tcp
Jeśli potrzebujesz dostępu SSH (raczej tak):
sudo ufw allow ssh
Włącz firewall:
sudo ufw enable
Sprawdź status:
sudo ufw status
Port 25565/tcp powinien być na liście ALLOW.
Jeśli twój serwer używa GeyserMC dla graczy Bedrock, otwórz też port UDP:
sudo ufw allow 19132/udp
Krok 10: Uprawnienia plików
Upewnij się, że wszystkie pliki serwera należą do użytkownika minecraft:
sudo chown -R minecraft:minecraft /opt/minecraft
Ustaw poprawne uprawnienia:
sudo find /opt/minecraft -type d -exec chmod 750 {} \;
sudo find /opt/minecraft -type f -exec chmod 640 {} \;
sudo chmod 750 /opt/minecraft/server/paper.jar
To zapobiegnie odczytowi lub modyfikacji plików serwera przez innych użytkowników systemu.
Połączenie z zewnątrz
VPS / Serwer dedykowany
Jeśli twój serwer działa na VPS albo serwerze dedykowanym z publicznym IP, gracze mogą się podłączać bezpośrednio po adresie IP i porcie 25565. Dodatkowa konfiguracja nie jest potrzebna, wystarczą reguły firewalla powyżej.
Sieć domowa
Jeśli uruchamiasz serwer w domu, trzeba skonfigurować przekierowanie portów:
- Sprawdź lokalny IP serwera:
ip addr show - Wejdź w panel routera (zazwyczaj 192.168.1.1 albo 192.168.0.1)
- Znajdź sekcję przekierowania portów (port forwarding)
- Przekieruj zewnętrzny port 25565 (TCP) na lokalny IP serwera, port 25565
- Udostępnij publiczny IP graczom (sprawdzisz go na whatismyip.com)
Dla bardziej profesjonalnego rozwiązania rozważ wynajem VPS. Dostawcy tacy jak Hetzner, OVH i Netcup oferują budżetowe opcje od 5$/miesiąc.
Autorestart przy crashach
Utworzona przez nas usługa systemd już obsługuje restarty parametrem Restart=on-failure. Jeśli proces Javy padnie, systemd poczeka 10 sekund i uruchomi go ponownie.
Dla większej niezawodności można dodać watchdog. Dodaj tę linię w sekcji [Service]:
WatchdogSec=120
To nakaże systemd zrestartować usługę, jeśli nie odpowiada przez 120 sekund. Pamiętaj, że Paper domyślnie nie wysyła sygnałów watchdog, więc działa to jako skrajny timeout.
Chroń serwer z MineGuard
Gdy twój serwer Minecraft zacznie działać, stanie się celem ataków. Ataki DDoS są niesamowicie powszechne w społeczności Minecrafta, i nawet małe serwery dostają oberwać. Stworzyliśmy MineGuard właśnie po to, żeby rozwiązać ten problem.
Nasz darmowy plan zapewnia ochronę DDoS bez żadnej konfiguracji. Po prostu wskaż swoją domenę na nasz filtr, a my zajmiemy się resztą. Bez pluginów, bez zmian w oprogramowaniu serwera. Konfiguracja zajmuje około 5 minut i działa z Paper, Purpur, Velocity i dowolnym innym oprogramowaniem serwerowym.
Podsumowanie
Oto, co omówiliśmy w tym przewodniku:
- Zaktualizowaliśmy Ubuntu i zainstalowaliśmy Javę 21
- Utworzyliśmy dedykowanego użytkownika
minecraft(nigdy nie uruchamiaj z root) - Pobraliśmy serwer Paper
- Zaakceptowaliśmy EULA i skonfigurowaliśmy server.properties
- Zastosowaliśmy flagi JVM Aikara dla optymalnej wydajności
- Utworzyliśmy usługę systemd dla autostartu i odzyskiwania po awariach
- Skonfigurowaliśmy reguły firewalla ufw
- Ustawiliśmy poprawne uprawnienia plików
- Omówiliśmy przekierowanie portów dla sieci domowych
Twój serwer jest gotowy na przyjmowanie graczy. Jeśli masz pytania o ochronę przed atakami, zajrzyj do naszej dokumentacji albo napisz do nas przez panel. Zawsze chętnie pomożemy.
Chroń swój serwer przed atakami DDoS
Darmowa ochrona z konfiguracją w 5 minut. 1 TB ruchu w zestawie.
Wypróbuj za darmoPowiązane artykuły
Jak podłączyć serwer Minecraft do MineGuard: instrukcja krok po kroku
Szczegółowa instrukcja podłączenia twojego serwera Minecraft do ochrony MineGuard. Rejestracja, konfiguracja sieci, domena, proxy protocol, firewall. Cały proces zajmuje około 5 minut.
Serwer Bedrock Minecraft: kompletny poradnik konfiguracji w 2026
Poradnik krok po kroku uruchomienia serwera Bedrock Minecraft. Instalacja BDS, konfiguracja GeyserMC do cross-playa Java+Bedrock, optymalizacja wydajności i ochrona przed DDoS.
Aternos vs płatny hosting: kiedy darmowy wystarczy, a kiedy trzeba zapłacić
Szczery przegląd Aternos w 2026: realne limity, idle sleep, reklamy, kolejka startu. I porównanie z Minehut, Exaroton, Falix oraz płatnymi hostingami od 3 dolarów.