VPS · Guide

How to Set Up a VPS for Game Servers

Updated October 10, 2026 7 min read

On this page
  1. VPS or managed game hosting: pick honestly
  2. Choosing a VPS for game servers
  3. First steps: SSH keys, updates, a user and a firewall
  4. Installing Pterodactyl: panel, Docker and Wings
  5. Nodes, allocations and game ports
  6. Backups you can actually restore
  7. Running it on a HytHost VPS
  8. FAQ

A VPS gives you a whole Linux machine to yourself: run a Minecraft server next to a Valheim world, add a Discord bot, change anything you like. What it does not give you is a panel, backups or a firewall — those you set up yourself, and the order you do it in matters.

This guide takes a fresh VPS to a working multi-game host with Pterodactyl, the free, open-source game server panel: securing the first login, installing Docker, the panel and its Wings daemon, opening the right ports and keeping backups. It also says plainly when a managed game server would save you the trouble.

VPS or managed game hosting: pick honestly

Your own VPSManaged game server
ControlEverything: OS, panel, any game, any softwareThe game and its settings
SetupAn afternoon with this guideOrder and play
Updates, security, backupsYour jobHandled for you
Several games on one machineYes, sharing the same RAM and CPUOne server per game

Choose a VPS if you enjoy running Linux, want several games and services side by side, or need software no game panel offers. Choose a managed game server if you just want the game online: the panel, the backups and the updates come with it.

Want the control? HytHost KVM VPS plans with full root start at €2.92/mo.

See VPS plans

Choosing a VPS for game servers

  • KVM virtualisation. Pterodactyl's game servers run in Docker containers, and Pterodactyl's own docs say KVM is certain to work, while container-based VPS (OpenVZ, LXC) usually cannot run Docker properly. Check with systemd-detect-virt: the answer should be kvm.
  • RAM. Add up what each game needs, then leave room for the system and the panel (its database, cache and web server). As a rough start: a small vanilla Minecraft server 2–3 GB, a modded one 6–9 GB, Valheim 4 GB, Terraria 2 GB, plus 1.5–2 GB for everything else.
  • CPU. Most game servers simulate the world on one main thread, so a few fast cores beat many slow ones. Each game server you add wants at least one core to itself.
  • Disk. Worlds grow, and backups stored on the same machine double the space they take.
What you want to runPlan to start with
The panel plus one small game serverVPS 2 — 4 vCPU, 4 GB, €7.00/mo
Two or three servers, or one modded serverVPS 3 — 4 vCPU, 8 GB, €15.00/mo
Heavy modpacks or a small community of serversVPS 4 — 6 vCPU, 16 GB, €27.00/mo

Pick Ubuntu 24.04 as the operating system: Pterodactyl supports it and it ships the PHP version the panel needs, with no extra repositories.

First steps: SSH keys, updates, a user and a firewall

  1. Log in with a key, not a password. On your own PC, create a key and copy it to the server:
    ssh-keygen -t ed25519
    ssh-copy-id root@YOUR_SERVER_IP
  2. Update everything.
    apt update && apt upgrade -y
    Ubuntu installs security updates on its own through unattended-upgrades, which is on by default.
  3. Create a user with sudo for everyday work, so you are not logged in as root all the time:
    adduser gameadmin
    adduser gameadmin sudo
  4. Turn on the firewall — allowing SSH first, or you lock yourself out:
    ufw allow 22/tcp
    ufw allow 80/tcp
    ufw allow 443/tcp
    ufw allow 8080/tcp
    ufw allow 2022/tcp
    ufw enable
    Ports 80 and 443 are the panel, 8080 is the Wings daemon and 2022 is its SFTP server.
The firewall does not cover your game servers. Docker publishes container ports past ufw, so the game ports you assign in the panel are reachable whatever ufw says. That is what makes them work — but it also means ufw cannot be used to close them. Remove an allocation in the panel instead.

Installing Pterodactyl: panel, Docker and Wings

Pterodactyl has two parts: the panel, a web app where you create and manage servers, and Wings, the daemon that runs each game server in its own Docker container. Both can live on the same VPS. The current releases are panel 1.15 and Wings 1.13 (August 2026); the 2.0 version is still a pre-release, so follow the 1.x documentation at docs.pterodactyl.io/v1.

1. The panel

The panel needs PHP 8.2 or 8.3 (not 8.4), MariaDB, Redis, nginx and Composer. On Ubuntu 24.04 these all come from the standard repositories. The official guide walks through every command; the shape of it is:

  1. Install the packages, download the latest panel release into /var/www/pterodactyl and run composer install.
  2. Create a database and user, then run the setup commands: php artisan key:generate --force — back up the key it writes into .env, because without it your encrypted data cannot be recovered — then p:environment:setup, p:environment:database, migrate --seed --force and p:user:make for your admin account.
  3. Add the cron job and the queue worker service, and point nginx at the panel. Use a domain name with a Let's Encrypt certificate if you can.

2. Docker

curl -sSL https://get.docker.com/ | CHANNEL=stable bash
systemctl enable --now docker

3. Wings

mkdir -p /etc/pterodactyl
curl -L -o /usr/local/bin/wings "https://github.com/pterodactyl/wings/releases/latest/download/wings_linux_amd64"
chmod u+x /usr/local/bin/wings

In the panel, go to Nodes > Create New, then open the node's Configuration tab and copy the configuration into /etc/pterodactyl/config.yml. Run wings --debug once to see it connect, stop it with Ctrl+C, then install it as a service with the wings.service unit from the official docs and systemctl enable --now wings.

A quick health check: curl http://127.0.0.1:8080/api/system on the VPS should answer 401. That means Wings is running and simply asking for a token.

Nodes, allocations and game ports

Every game server needs at least one allocation: your VPS's public IP plus a port. Add them on the node's Allocation tab — single ports or ranges such as 25565-25570. Use the public IP, never 127.0.0.1, and when you test a game port, test it from outside the VPS.

GameDefault port
Minecraft Java25565 TCP
Minecraft Bedrock19132
Counter-Strike 1.627015 UDP
Valheim2456–2457 UDP
Terraria7777 TCP
Project Zomboid16261–16262 UDP
Palworld8211 UDP

The panel comes with ready-made "eggs" — templates for each game — and the community publishes many more. Our game guides cover each game's own settings, for example Valheim or CS 1.6. Running just one Minecraft server without a panel? How to host a Minecraft server on a VPS is the simpler route.

Backups you can actually restore

Pterodactyl has backups built in: each server gets a Backups tab, and by default Wings stores them in /var/lib/pterodactyl/backups — on the same disk as the servers themselves. That protects against a bad mod update, not against losing the VPS.

  • Off the machine: the panel can send backups to any S3-compatible storage instead, set in its configuration.
  • The whole VPS: a snapshot captures the system, the panel and every server at once. On HytHost this is the BackUp VPS Snapshot add-on.
  • Test a restore once, before you need it.

Running it on a HytHost VPS

HytHost VPS plans run on KVM with full root access, SSD storage and DDoS protection in front of the network — everything Pterodactyl needs. Choose Ubuntu 24.04 when you order and follow the steps above. The VPS is unmanaged by default: the operating system and everything on it are yours to run, and you can upgrade the plan later as your servers grow.

If the setup above sounds like more than you want to maintain, a managed game server does the same job without it: our game servers come with the panel, automatic backups and updates already in place.

KVM, full root and SSD storage: a HytHost VPS with 4 GB for the panel and your first game is €7.00/mo.

See VPS plans
FAQ

Frequently asked questions

Add up what each game needs and leave about 1.5 to 2 GB for the system and the panel. 4 GB runs the panel and one small server, 8 GB two or three servers or one modded server, and 16 GB heavy modpacks or several busy servers.

Ubuntu 24.04. Pterodactyl supports it, and it ships the PHP version the panel needs without extra repositories. Debian 12 works too. Windows is not supported for Wings, the part that runs the game servers.

Yes. The Pterodactyl panel and Wings are free and open source under the MIT licence. You only pay for the VPS it runs on.

Yes. Pterodactyl runs each game server in its own container, each with its own port, RAM and CPU limits. They share the VPS's total resources, so plan the RAM and keep at least one CPU core per busy server.

Log in with an SSH key, keep the system updated, work as a user with sudo rather than root, and turn on ufw after allowing SSH. Remember that Docker game ports bypass ufw, so close a game port by removing its allocation in the panel, and keep backups off the machine.

Your own machine for every game you run

HytHost KVM VPS plans with full root, SSD storage and DDoS protection start at €2.92/mo — or let us run the game server for you.

Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hours

Was this guide helpful?