Deploy Open Game Panel (OGP) on a VPS
Free, open-source game server management panel supporting 100+ games — deploy, manage, and monitor Minecraft, CS2, ARK, Rust, and more from a single web interface.
At a Glance
| Project | Open Game Panel |
| License | GPL v3 |
| Recommended Plan | RamNode Cloud VPS 2 GB+ (4 GB+ for multiple game servers) |
| OS | Ubuntu 22.04 LTS |
| Stack | Apache, MariaDB, PHP, Perl |
| Estimated Setup Time | 25–35 minutes |
Prerequisites
- A RamNode VPS with at least 2 GB RAM and 2 vCPU cores (4 GB+ recommended for multiple game servers)
- Ubuntu 22.04 LTS selected as the operating system
- Root SSH access to your VPS
- A registered domain or subdomain (optional but recommended for HTTPS)
Update the System
apt update && apt upgrade -y
hostnamectl set-hostname ogp-server
rebootInstall the LAMP Stack and Dependencies
apt install -y apache2 mariadb-server php php-gd php-zip php-curl \
php-mysql php-xmlrpc php-mbstring php-bcmath php-xml \
libapache2-mod-php curl subversion unzip git gettextsystemctl enable --now apache2
systemctl enable --now mariadbSecure MariaDB
mysql_secure_installationSet a strong root password, remove anonymous users, disallow remote root login, remove the test database, and reload privilege tables. Answer Y to each prompt.
Install the OGP Web Panel
cd /root
wget "https://github.com/OpenGamePanel/Easy-Installers/raw/master/Linux/Debian-Ubuntu/ogp-panel-latest.deb"
dpkg -i ogp-panel-latest.debapt --fix-broken install -y
dpkg -i ogp-panel-latest.debDuring installation, enter your MariaDB root password when prompted. Note the database credentials displayed at the end.
Complete the Web Panel Setup via Browser
Navigate to http://YOUR_VPS_IP/index.php and complete the wizard:
- Compatibility check — scroll down and click Next
- Database config — enter credentials from the installer output
- Admin account — set username, strong password, and email
rm -f /var/www/html/install.php
chmod 644 /var/www/html/includes/config.inc.phpInstall the OGP Agent
adduser ogpagent
usermod -aG sudo ogpagentapt install -y libxml-parser-perl libpath-class-perl perl-modules \
screen rsync sudo e2fsprogs unzip subversion libarchive-extract-perl \
pure-ftpd libarchive-zip-perl libc6 libgcc-s1 git curl
dpkg --add-architecture i386
apt update
apt install -y lib32gcc-s1 libc6-i386cd /root
wget "https://github.com/OpenGamePanel/OGP-Agent-Linux/archive/master.zip"
unzip master.zip
cd OGP-Agent-Linux-master/
bash install.shImportant: Write down the encryption key during installation — the web panel needs it to communicate with the agent.
Connect the Agent to the Web Panel
In the OGP web panel, go to Administration → Servers → Add Remote Server:
- Agent IP:
127.0.0.1 - Agent Port:
12679 - Encryption Key: the key from agent installation
- Remote Host IP: your VPS public IP
Configure the Firewall
apt install -y ufw
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw allow 12679/tcp
ufw allow 27000:27050/udp
ufw allow 27000:27050/tcp
ufw enableOpen additional ports as needed for specific game servers.
Secure the Panel with Let's Encrypt SSL
apt install -y certbot python3-certbot-apachecat > /etc/apache2/sites-available/ogp.conf << 'EOF'
<VirtualHost *:80>
ServerName ogp.yourdomain.com
DocumentRoot /var/www/html
<Directory /var/www/html>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/ogp_error.log
CustomLog ${APACHE_LOG_DIR}/ogp_access.log combined
</VirtualHost>
EOFa2ensite ogp.conf
a2enmod rewrite
systemctl reload apache2
certbot --apache -d ogp.yourdomain.com
certbot renew --dry-runDeploy Your First Game Server
- Log in to the OGP web panel
- Navigate to Game Servers → Add Game Server
- Select your registered agent
- Browse the game list and select your game (Minecraft, CS2, Rust, etc.)
- Configure install directory, ports, startup parameters, and player slots
- Click Install, then Start when complete
Performance Tuning
cat >> /etc/security/limits.conf << 'EOF'
ogpagent soft nofile 65535
ogpagent hard nofile 65535
EOFcat >> /etc/sysctl.conf << 'EOF'
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.udp_mem = 65536 131072 262144
net.core.netdev_max_backlog = 30000
EOF
sysctl -pMaintenance
- System updates:
apt update && apt upgrade -y - Backup database:
mysqldump -u root -p ogp_panel > /root/ogp_backup_$(date +%F).sql - Agent logs:
tail -f /var/log/ogp_agent.log - Restart agent:
systemctl restart ogp_agent
