Installing PufferPanel¶
System Requirements¶
A VPS or Dedicated server (32-bit IS NOT supported)
SSH access and administrative (root or sudo) privileges on the server
One of the following operating systems:
OS/Version |
AMD64 |
ARM64 |
|---|---|---|
Ubuntu Focal (20.04) |
No |
No |
Ubuntu Jammy (22.04) |
Yes |
Yes |
Ubuntu Noble (24.04) |
Yes |
Yes |
Debian Buster (10) |
Yes |
Yes |
Debian Bullseye (11) |
Yes |
Yes |
Raspbian Buster (10) |
No |
Yes |
Raspbian Bullseye (11) |
No |
Yes |
Ports¶
The following ports are used by PufferPanel. Please allow traffic to/from these ports to fully use your installation.
8080: Web access
5657: SFTP
Installing¶
For easiest installation, if you have one of the listed supported distributions, you can simply install our package and get going!.
sudo apt-get install curl gnupg apt-transport-https
curl -fsSL https://packagecloud.io/pufferpanel/pufferpanel/gpgkey | gpg --dearmor | sudo tee /etc/apt/keyrings/pufferpanel.gpg > /dev/null
echo "X-Repolib-Name: PufferPanel
Types: deb
URIs: https://packagecloud.io/pufferpanel/pufferpanel/any/
Suites: any
Components: main
Signed-By: /etc/apt/keyrings/pufferpanel.gpg" | sudo tee /etc/apt/sources.list.d/pufferpanel.sources > /dev/null
sudo apt update
sudo apt-get install pufferpanel
echo "[pufferpanel]
name=pufferpanel
baseurl=https://packagecloud.io/pufferpanel/pufferpanel/rpm_any/rpm_any/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/pufferpanel/pufferpanel/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300" | sudo tee /etc/yum.repos.d/pufferpanel.repo > /dev/null
sudo yum install pufferpanel
docker volume create pufferpanel-config
docker volume create pufferpanel-servers
docker create --name pufferpanel \
-p 8080:8080 -p 5657:5657 \
-v pufferpanel-config:/etc/pufferpanel \
-v pufferpanel-servers:/var/lib/pufferpanel:z \
-v /var/run/docker.sock:/var/run/docker.sock \
--restart=on-failure \
pufferpanel/pufferpanel:latest
Adding an admin¶
To create your first user, run the following command. Be sure to enter “Y” when it asks if this is an admin so you can fully use your panel.
sudo pufferpanel user add
docker start pufferpanel
docker exec -it pufferpanel /pufferpanel/bin/pufferpanel user add
Starting the panel¶
sudo systemctl enable --now pufferpanel
docker start pufferpanel
Managing the service¶
PufferPanel uses Systemd to manage the service, consult the man page man systemctl or a guide for instructions on how to use it.
Securing Servers¶
Servers can run in several different environments depending on the security required. It is HIGHLY recommended to configure and use Docker for your servers as this will result in better file and process protection.
Refer to Using Docker with PufferPanel to configure Docker so that PufferPanel can use it.
Using “standard” is NOT a secure environment, and WILL result in servers being able to access host files. This should ONLY be used for testing purposes and not for live servers.
Done!¶
And that’s it! Your panel is now available on port 8080 of your server.
Additional resources: