Cockpit Is the Free Server Dashboard That Makes You Wonder Why You Ever Paid for cPanel — Here Is How to Set It Up on Any VPS

Cockpit Is the Free Server Dashboard That Makes You Wonder Why You Ever Paid for cPanel — Here Is How to Set It Up on Any VPS

A few weeks ago, my friend Kat — who runs a small Etsy shop that somehow grew into a real business — called me in mild panic. "James, I am paying $47 a month for a Plesk license on top of my VPS, and I just realized I have been paying it for nine months and I have used it exactly twice."

I wanted to be sympathetic. I really did. But I was too busy doing math in my head. That is $423 for a control panel she used to check disk space twice.

I told her about Cockpit. She had it running in under ten minutes. She cancelled Plesk that afternoon.

What Is Cockpit?

Cockpit is an open-source, web-based graphical interface for Linux servers. It is maintained by Red Hat (well, IBM technically, but let us not get into that) and comes pre-installed on Fedora, RHEL, and CentOS Stream. For Debian and Ubuntu, it is one apt command away.

It gives you a browser-based dashboard where you can:

  • Monitor CPU, memory, disk, and network in real time
  • Manage systemd services (start, stop, restart, enable)
  • Configure network interfaces and firewall rules
  • Inspect and search system logs (journalctl, but with a GUI)
  • Manage storage, LVM, and RAID
  • Run and manage Podman containers
  • Open an in-browser terminal (genuine SSH, not some web console toy)
  • Manage user accounts and SSH keys
  • Jump between multiple servers from one dashboard

All of this is free. Not "free tier with limitations" free. Not "free but we removed the useful features" free. Actually, genuinely, no-strings-attached free.

Why Cockpit Is Having a Moment

Cockpit just hit the Hacker News front page with nearly 300 upvotes, and the comment section was full of people saying some version of "I have been using this for years, why does nobody talk about it?" — which is the Hacker News version of a standing ovation.

The timing makes sense. cPanel raised prices again in late 2025 (they do this about once a year, like clockwork, like they are daring people to leave). Plesk is not cheap either. And a lot of people who switched to "just use the terminal" during the pandemic have started to miss having a visual dashboard for the stuff they check daily.

Cockpit is the middle ground: you get a visual interface without giving up terminal access, without paying a monthly fee, and without installing a heavyweight control panel that takes over your entire server.

Setting Up Cockpit on Ubuntu/Debian

I am going to walk through this on Ubuntu 24.04, which is what most people are running on their VPS in 2026 (not sure which VPS to pick? I compared Hetzner, DigitalOcean, and Vultr side by side). Debian 12 is virtually identical.

Step 1: Install Cockpit

sudo apt update
sudo apt install cockpit -y

That is it. I am not being cute. It is genuinely one command. The package is in the default Ubuntu repos.

Step 2: Start and Enable the Service

sudo systemctl enable --now cockpit.socket

Note that it uses a socket, not a service. Cockpit only activates when someone connects, which means it uses essentially zero resources when nobody is logged in. This was a deliberate design decision, and it is one of those details that makes you think "ah, the people who built this actually use servers."

Step 3: Access the Dashboard

Open your browser and navigate to:

https://your-server-ip:9090

You will get a certificate warning because Cockpit generates a self-signed cert. Click through it (or set up a proper cert later — I will show you how). Log in with your regular Linux username and password.

And... that is it. You are looking at your server dashboard.

The first time I set this up, I kept looking for the "catch." Where is the license key prompt? The trial expiration? The "upgrade to Pro" banner? There is none. It just works.

What the Dashboard Actually Looks Like

I cannot embed screenshots (this is a blog, not a slideshow), but let me describe what you see:

Overview Page

See that CPU graph in the top-left? It updates in real time. Not "every 30 seconds" real time — genuine, smooth, watch-the-spikes-happen real time. Below it: memory usage, disk I/O, and network traffic. All with time-series graphs you can zoom into.

My colleague Derek (yes, the same Derek from earlier — he shows up a lot because he manages about 15 servers for his consulting business) said it best: "It is like htop had a baby with Grafana, and the baby did not inherit Grafana's complexity."

Logs

The log viewer is secretly the best feature. You get journalctl output with filters — by service, priority level, time range — in a searchable interface. I have spent embarrassing amounts of time grep-ing through logs that I could have just... filtered in a GUI.

Services

Every systemd service on your machine, with start/stop/restart buttons, enable/disable toggles, and the actual service file contents viewable inline. It is like systemctl but without having to remember whether it is systemctl status nginx or systemctl status nginx.service (it is both, but tell that to my 2 AM brain).

Terminal

A full web terminal. Not the kind that drops your connection every five minutes — an actual, usable, honest-to-god terminal in your browser. I would not write code in it, but for quick commands? Perfect.

Adding Extra Modules

Cockpit has a plugin system. Some of the most useful add-ons:

# Container management (Podman)
sudo apt install cockpit-podman

# Software updates management
sudo apt install cockpit-packagekit

# KVM/QEMU virtual machines
sudo apt install cockpit-machines

The container management is particularly good if you are running Podman (which, if you are not, you maybe should be — but that is a different article). You get a visual list of containers, images, and the ability to start/stop/inspect them without remembering podman CLI syntax.

Setting Up a Proper SSL Certificate

That self-signed cert warning is fine for initial testing, but if you are going to use Cockpit regularly, set up a real cert. If you have a domain pointing at your server:

# Install certbot
sudo apt install certbot -y

# Get a cert
sudo certbot certonly --standalone -d cockpit.yourdomain.com

# Link the cert to Cockpit's config directory
sudo cat /etc/letsencrypt/live/cockpit.yourdomain.com/fullchain.pem     /etc/letsencrypt/live/cockpit.yourdomain.com/privkey.pem     > /etc/cockpit/ws-certs.d/cockpit.cert

# Restart Cockpit
sudo systemctl restart cockpit

Now you access it at https://cockpit.yourdomain.com:9090 with a proper green padlock.

Cockpit vs cPanel vs Plesk vs Webmin: The Honest Comparison

FeatureCockpitcPanelPleskWebmin
PriceFree$15-45/mo$13-58/moFree
Web hosting featuresNo (not its job)Yes (its whole job)YesLimited
System monitoringExcellentBasicBasicGood
Container managementYes (Podman)NoDocker extNo
Terminal in browserYes (great)Yes (okay)NoYes (dated)
Multi-serverYes (SSH)WHM (extra cost)Yes (extra)Webmin cluster
Resource usageMinimal (socket)HeavyHeavyModerate
UI qualityModern, cleanFunctionalPolishedDated
Learning curveLowMediumMediumMedium

The key distinction: Cockpit is a server management tool, not a web hosting panel. It will not create email accounts, manage DNS zones, or deploy WordPress with one click. If you need those things, cPanel and Plesk still have their place.

But if what you actually need is "see what my server is doing, manage services, check logs, maybe restart something, and not pay $180 a year for the privilege" — Cockpit is the answer.

Multi-Server Management

One feature that makes Cockpit genuinely useful for people managing multiple VPS instances: you can add other servers and jump between them from a single dashboard.

On the primary server (the one you log into), go to the top-left dropdown menu and click "Add new host." Enter the IP or hostname and SSH credentials. Cockpit connects over SSH and lets you manage the remote server as if you were logged in locally.

Derek manages 15 servers this way. One Cockpit instance, one browser tab, 15 servers accessible from a dropdown. He told me it replaced about $300/month in Plesk licenses across his fleet. "That is $3,600 a year I was spending to look at disk space charts," he said, sounding like a man who had recently discovered therapy.

What Cockpit Will Not Do

In the interest of being genuinely helpful rather than just enthusiastic:

  • No email management. If you host email on your server (which in 2026, please reconsider), you will need something else.
  • No DNS management. Use your registrar's panel or Cloudflare.
  • No automatic WordPress/CMS deployment. Learn Docker Compose instead. Honestly.
  • No backup management built-in. Use restic, borgbackup, or your VPS provider's snapshot feature.
  • No shared hosting features. This is not for web hosting providers managing 500 client accounts. Use cPanel for that.

Security Hardening (Do This, Seriously)

Running a web interface on port 9090 that accepts root login is... not great, out of the box. If you have not already locked down your file transfer setup, read our Wing FTP lockdown guide too. Do these things:

  1. Firewall port 9090 so only your IP can reach it: sudo ufw allow from YOUR_IP to any port 9090
  2. Use a proper SSL cert (covered above).
  3. Disable root login: Edit /etc/cockpit/disallowed-users and add root. Use a regular sudo user instead.
  4. Consider Cloudflare Tunnel if you want to access it without exposing port 9090 at all.

I have seen people expose Cockpit to the internet with default credentials and then act surprised when someone logs in. Do not be that person. Kat was going to be that person until I intervened.

Should You Switch?

If you are paying for cPanel or Plesk and you are not using their web hosting features (email, DNS, multi-tenant hosting), cancel it today and install Cockpit. You will save money, reduce your server's resource overhead, and get a dashboard that is honestly more useful for day-to-day server management.

If you are a "terminal-only" person who thinks GUIs are for the weak — first of all, calm down. Second, Cockpit uses virtually zero resources when you are not connected, and the log viewer alone might change your mind. Give it fifteen minutes.

If you manage multiple servers and want a single pane of glass without paying for enterprise monitoring — Cockpit's multi-server feature is free and works over SSH. It is not Datadog, but it handles the basics.

And if you are like Kat, quietly spending $47 a month on a panel you never use — well, now you know there is an alternative that costs exactly nothing and takes ten minutes to install.

Found this helpful?

Subscribe to our newsletter for more in-depth reviews and comparisons delivered to your inbox.