PufferPanel

An open source web-based game server management panel.

Accessing PufferPanel

Open your browser and visit: https://<SERVER_IP>

A browser SSL warning is expected (self-signed certificate).

Run the following command on the server to create your first user. Be sure to enter “Y” when it asks if this is an admin so you can fully use your panel.

pufferpanel user add

Log in with your admin account.

Navigate to Settings and configure:

  • Master URL (e.g., https://<SERVER_IP>)
  • Control user registration
  • Email setup (optional)

Ports

  • Web UI: 8080
  • SFTP: 5657

Important Files & Directories

  • Panel configuration: /etc/pufferpanel/config.json
  • Panel logs: /var/log/pufferpanel
  • Web root (nginx): /var/www/pufferpanel
  • SSL Certificates: /etc/nginx/ssl/pufferpanel.crt & /etc/nginx/ssl/pufferpanel.key

Service Management

PufferPanel:

systemctl start pufferpanel
systemctl stop pufferpanel
systemctl restart pufferpanel
systemctl status pufferpanel

Nginx:

systemctl start nginx
systemctl stop nginx
systemctl restart nginx
systemctl reload nginx
systemctl status nginx

Enabling SSL with a Domain

1. Point your domain to the server IP.

2. Edit Nginx config and replace both server_name <IP>; with your domain (<your-domain>) for both HTTP (port 80) and HTTPS (port 443) blocks:

vim /etc/nginx/sites-available/pufferpanel.conf

3. Install Certbot:

apt install -y certbot python3-certbot-nginx

4. Run the following command to generate a valid Let’s Encrypt certificate:

certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com

5. Replace SSL paths in Nginx config:

vim /etc/nginx/sites-available/pufferpanel.conf
# Before:
    # ssl_certificate     /etc/nginx/ssl/pufferpanel.crt;
    # ssl_certificate_key /etc/nginx/ssl/pufferpanel.key;
# After:
    # ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
    # ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;

6. Restart Nginx to apply the changes:

systemctl restart nginx

7. Set Master URL in web UI Settings to https://yourdomain.com

8. Open your browser and visit: https://yourdomain.com

Notes

  • Nginx is configured to redirect HTTP → HTTPS automatically.
  • SSL is self-signed. For production, consider using Let’s Encrypt / Certbot.
  • Docker is installed and the pufferpanel user is added to the Docker group.

Application Details