Cockpit – A Powerful Tool to Monitor and Administer Multiple Linux Servers Using a Web Browser

Cockpit is an easy-to-use, lightweight and simple yet powerful remote manager for GNU/Linux servers, it’s an interactive server administration user interface that offers a live Linux session via a web browser.

It can run on several Linux distributions including Debian, Ubuntu, Fedora, CentOS, RHEL, Arch Linux among others.

Cockpit makes Linux discoverable thereby enabling system administrators to easily and reliably carry out tasks such as starting containers, managing storage, network configurations, log inspections coupled with several others.

Suggested Read: 20 Command Line Tools to Monitor Linux Performance

While using it, users can easily switch between the Linux terminal and web browser without any hustles. Importantly, when a user starts a service via Cockpit, it can be stopped via the terminal, and just in case of an error that occurs in the terminal, it is shown in the Cockpit journal interface.

Features of Cockpit:

  1. Enables managing of multiple servers in one Cockpit session.
  2. Offers a web-based shell in a terminal window.
  3. Containers can be managed via Docker.
  4. Supports efficient management of system user accounts.
  5. Collects system performance information using Performance Co-Pilot framework and displays it in a graph.
  6. Supports gathering of system configuration and diagnostic information using sos-report.
  7. Also supports Kubernetes cluster or an Openshift v3 cluster.
  8. Allows modification of network settings and many more.

How to Install Cockpit in Linux Systems

You can install Cockpit in all Linux distributions from their default official repositories as shown:

Install Cockpit on Fedora and CentOS

To install and enable Cockpit on Fedora distributions, use the following commands.

# yum install cockpit
# systemctl enable --now cockpit.socket
# firewall-cmd --add-service=cockpit
# firewall-cmd --add-service=cockpit --permanent

Install Cockpit on RHEL

Cockpit is added to the Red Hat Enterprise Linux Extras repository from versions 7.1 and later:

# subscription-manager repos --enable rhel-7-server-extras-rpms
# systemctl enable --now cockpit.socket
# firewall-cmd --add-service=cockpit
# firewall-cmd --add-service=cockpit --permanent

Install Cockpit on Debian

Cockpit is not included in Debian official repositories, but you install it using following repository that contains weekly builds specially for Debian unstable:

First add the following repository to /etc/apt/sources.list file.

deb https://fedorapeople.org/groups/cockpit/debian unstable main

Next, import Cockpit’s signing key and then run the following series of commands to install it.

$ sudo apt-key adv --keyserver sks-keyservers.net --recv-keys F1BAA57C
$ sudo apt-get update
$ sudo apt-get install cockpit
$ sudo systemctl enable --now cockpit.socket

Install Cockpit on Ubuntu and Linux Mint

In Ubuntu and Linux Mint distributions, Cockpit is not included, but you can install it from official Cockpit PPA by executing the following commands:

$ sudo add-apt-repository ppa:cockpit-project/cockpit
$ sudo apt-get update
$ sudo apt-get install cockpit
$ sudo systemctl enable --now cockpit.socket

Install Cockpit on Arch Linux

Arch Linux users can install Cockpit from the Arch User Repository using following command.

# yaourt cockpit
# systemctl start cockpit
# systemctl enable cockpit.socket

How to Use Cockpit in Linux

After Cockpit installed successfully, you can access it using a web browser at the following locations.

https://ip-address:9090
OR
https://server.domain.com:9090

Enter system username and password to login in the interface below:

Cockpit Web Interface

Cockpit Web Interface

After logging in, you will be presented with a summary of your system information and performance graphs for CPU, Memory, Disk I/O, and Network traffic as seen in the next image:

Linux System Performance Summary

Linux System Performance Summary

Next on the dashboard menu, is Services. Here you can view Targets, System Services, Sockets, Timers and Paths pages.

The interface below shows running services on your system.

Showing Current Running Services on Linux

Showing Current Running Services on Linux

You can click on a single service to manage it. Simply click on the drop down menus to get the functionality you want.

View Linux Service Summary

View Linux Service Summary

The Logs menu item displays the logs page which allows for logs inspection. The logs are categorized into Errors, Warnings, Notices and All as in the image below.

Additionally you can as well view logs based on time such as logs for the last 24HRs or 7 days.

Suggested Read: 4 Best Log Monitoring and Management Tools for Linux

To inspect a single log entry, simply click on it.

Linux Logs Monitoring

Linux Logs Monitoring

Cockpit also enables you to manage user accounts on the system, go to Tools and click on Accounts. Clicking on a user account allows you to view the users account details.

Manage Linux User Accounts

Manage Linux User Accounts

To add a system user, click on β€œCreate New Account” button and enter the necessary user information in the interface below.

Create User Account in Linux

Create User Account in Linux

To get a terminal window, go to Tools β†’ Terminal.

Cockpit - Linux Web Terminal

Cockpit – Linux Web Terminal

How to Add Linux Server to Cockpit

Important: Be aware that you must install Cockpit on all remote Linux servers in order to monitor them on Cockpit dashboard. So, please install it before adding any new server to Cockpit..

To add another server, click on dashboard, you will see the screen below. Click on the (+) sign and enter the server IP address. Remember that information for each server you add is displayed in Cockpit using a distinct color.

Add Linux Server to Cockpit

Add Linux Server to Cockpit

Cockpit - Remote Linux Server Monitoring

Cockpit – Remote Linux Server Monitoring

Same way, you can add many Linux servers under Cockpit and manage it efficiently without any trouble..

That is it for now, however, you can explore more in case you have installed this simple and wonderful server remote manager.

Cockpit Official Documentation: http://cockpit-project.org/guide/latest/

For any questions or suggestions as well as feedback on the topic, do not hesitate to use the comment section below to get back to us.

Best Affordable Linux and WordPress Services For Your Business
Outsource Your Linux and WordPress Project and Get it Promptly Completed Remotely and Delivered Online.

If You Appreciate What We Do Here On TecMint, You Should Consider:

  1. Stay Connected to: Twitter | Facebook | Google Plus
  2. Subscribe to our email updates: Sign Up Now
  3. Get your own self-hosted blog with a Free Domain at ($3.45/month).
  4. Become a Supporter - Make a contribution via PayPal
  5. Support us by purchasing our premium books in PDF format.
  6. Support us by taking our online Linux courses

We are thankful for your never ending support.

Aaron Kili

Aaron Kili is a Linux and F.O.S.S enthusiast, an upcoming Linux SysAdmin, web developer, and currently a content creator for TecMint who loves working with computers and strongly believes in sharing knowledge.

Your name can also be listed here. Got a tip? Submit it here to become an TecMint author.

RedHat RHCE and RHCSA Certification Book
Linux Foundation LFCS and LFCE Certification Preparation Guide

You may also like...

31 Responses

  1. nehru says:

    Hi,

    I have installed on Cent OS 7, but did not showing the Dashboard. Please share the info

  2. MGi says:

    Looks interesting, but it wants to install GUI on my server. That’s unacceptable.

    • Aaron Kili says:

      @MGi

      Yes, it’s a GUI so if you want to use it, then you have to install a GUI on your server.

    • guvnayyc says:

      It’s a WebUI, it has the same security implications as SSH or console.

      I’m guessing GUI is bad from your standpoint in respect to resource overhead (read: X-Window System, Desktop).

      That’s not the case with the WebUI.

      I just installed it on a head server and looking at the resources being logged in and managing a dozen other servers, it’s nominal.

      Just putting it out there so you have a second point of reference.

      Cheers, and good luck with your endeavour!!
      Nick

  3. Sof says:

    Did not work for me.

    $ sudo apt-key adv --keyserver sks-keyservers.net --recv-keys F1BAA57C 
    

    I had to use :

    $ sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys F1BAA57C
    

Leave a Reply to prashant kumar Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.