Cockpit is a modern, web-based server management interface that lets you administer your Debian 13 server directly from a browser: manage storage, networking, updates, performance, and logs from a clean web UI.

On RHEL-based systems, Cockpit comes nicely integrated out of the box. On Debian 13, we can achieve a similar full-featured but lean setup by installing Cockpit and only the necessary components—without pulling in extra roles you don’t need.

In this guide, we’ll:

  • (Optionally) enable Debian backports
  • Install Cockpit with the right modules
  • Add missing packages for full server admin functionality
  • Avoid unnecessary roles and bloat

1. Prerequisites

You’ll need:

  • Debian 13 server (or VM) with root or sudo access
  • Basic terminal familiarity
  • Port 9090/tcp open in your firewall

Update your system first:

sudo apt update
sudo apt upgrade -y

2. (Optional) Enable Debian Backports

Cockpit is available in Debian repositories, but newer builds and components may appear first in backports. Enabling backports gives you the option to install newer versions when needed.

Check your sources in the directory below, check all the .soruces files:

/etc/apt/sources.list.d/

If you don’t see a backports line, add one (replace trixie with your actual codename if needed):

echo "deb http://deb.debian.org/debian trixie-backports main contrib non-free-firmware" | sudo tee /etc/apt/sources.list.d/trixie-backports.list
sudo apt update

Backports are optional but recommended if you want more up-to-date Cockpit components.


3. Understanding the Cockpit Components

Instead of installing random roles, we’re deliberately choosing a minimal but complete set of packages to mirror a full-featured RHEL-style Cockpit:

Core Web Console

  • cockpit
    The main Cockpit web console. Provides the web service on port 9090 and core UI.
  • cockpit-bridge
    Connects the web frontend to system services on the server. This is essential for Cockpit to function.
  • cockpit-system
    System overview dashboard, logs, services, users, and general system management.

Networking

  • cockpit-networkmanager
    Adds a graphical networking panel to Cockpit, powered by NetworkManager.
  • network-manager
    The actual network management daemon Cockpit will control. Without this, the network page in Cockpit is limited.

Storage

  • cockpit-storaged
    Storage management module (note the trailing d). Provides disk, partition, filesystem, and basic LVM management in the Cockpit UI.

Performance Monitoring

  • cockpit-pcp
    Integrates Performance Co-Pilot into Cockpit, giving you rich performance graphs and historical metrics.
  • pcp
    The backend performance data collection system used by cockpit-pcp.

Updates & Packages

  • cockpit-packagekit
    Provides an updates/packages page in Cockpit using PackageKit, so you can review and apply updates from the browser.

Diagnostics

  • cockpit-sosreport
    Lets you create diagnostic sosreport bundles directly from Cockpit for support and troubleshooting.

This stack gives you:

  • System overview
  • Logs & services
  • Network configuration
  • Storage management
  • Performance graphs
  • Package updates
  • Diagnostic reports

…all without pulling in container, virtualization, or cloud roles you might not want.


4. Install Cockpit and All Required Components

Run the following command:

sudo apt install \
  cockpit \
  cockpit-bridge \
  cockpit-system \
  cockpit-networkmanager \
  cockpit-storaged \
  cockpit-pcp \
  cockpit-sosreport \
  cockpit-packagekit \
  network-manager \
  pcp

What this does:

  1. Installs the Cockpit web console and core integration (cockpit, cockpit-bridge, cockpit-system).
  2. Enables network management via NetworkManager (cockpit-networkmanager, network-manager).
  3. Adds storage management with the correct package: cockpit-storaged.
  4. Adds performance monitoring via PCP (cockpit-pcp, pcp).
  5. Integrates updates and diagnostic tools (cockpit-packagekit, cockpit-sosreport).

We’re explicitly not installing extra roles like containers or virtualization, so this remains lean and focused on standard server admin.


5. Enable and Start Cockpit

Cockpit normally runs via a systemd socket on port 9090.

Enable and start it:

sudo systemctl enable --now cockpit.socket

Check its status:

systemctl status cockpit.socket

Next, ensure NetworkManager and PCP are running:

sudo systemctl enable --now NetworkManager
sudo systemctl enable --now pmcd

6. Open Firewall Port 9090

If you use ufw:

sudo ufw allow 9090/tcp
sudo ufw reload

If you use iptables or nftables, make sure port 9090/tcp is allowed from your management network (ideally not from everywhere on the internet).


7. Log In to Cockpit

Open your browser and go to:

https://your-server-ip:9090

or (if TLS isn’t set up yet):

http://your-server-ip:9090

You might see a warning about a self-signed certificate; you can accept it or later configure a proper certificate using a reverse proxy (Nginx/Apache) or direct cert handling.

Log in with:

  • Your regular Debian user that has sudo access, or
  • The root user (if enabled — generally not recommended over the internet)

8. What You Get With This Setup

With the above package list, Cockpit on Debian 13 offers:

System Overview & Logs

  • CPU, memory, storage usage at a glance
  • OS details, uptime, connected users
  • Journald logs in a searchable, filterable interface
  • Services (systemd units) with start/stop/restart controls

Network Management (NetworkManager UI)

  • View and configure network interfaces
  • Set static IP addresses, gateways, DNS, and routes
  • Manage bridges, bonds, VLANs (where supported)

Storage Management (cockpit-storaged)

  • View disks and partitions
  • Create, format, and mount filesystems
  • Manage LVM volumes and basic RAID setups
  • Easily see what’s mounted where

Performance Monitoring (PCP Integration)

  • Historical graphs for CPU, memory, disk, and more
  • Drill-down into performance issues beyond simple “top” output
  • PCP backend (pcp) provides robust metrics collection

Updates & Packages

  • See available updates from the Cockpit UI
  • Trigger package updates via cockpit-packagekit
  • Keep the server patched without SSHing in every time

Diagnostics (sosreport)

  • Generate sosreport with one click for deep diagnostics
  • Useful for support, incident analysis, or archiving detailed system state

9. Roles Not Installed (By Design)

To keep the server focused and secure, we did not install:

  • cockpit-machines (VM/virtualization management)
  • cockpit-podman or container-related roles
  • Specialized modules you may never touch on a typical server

If in the future you decide you need them, you can always add them individually, for example:

sudo apt install cockpit-machines
# or
sudo apt install cockpit-podman

This way your base setup stays clean and only grows when you explicitly want more features.


10. Keeping Cockpit Up to Date

Regularly update your system:

sudo apt update
sudo apt upgrade

If you want newer Cockpit versions from backports, you can selectively upgrade:

sudo apt -t trixie-backports install cockpit cockpit-bridge cockpit-system

Conclusion

By combining the main Cockpit package with a carefully chosen set of modules, you can turn Debian 13 into a powerful, browser-manageable server very similar to how Cockpit is integrated in RHEL — without adding unnecessary roles.

The key install line is:

sudo apt install cockpit cockpit-bridge cockpit-system cockpit-networkmanager cockpit-storaged cockpit-pcp cockpit-sosreport cockpit-packagekit network-manager pcp

Last Update: November 23, 2025

Tagged in:

, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,