How to enable Cockpit on CentOS 8 Linux or Stream

The cockpit is a Linux web-based opensource server managing tool. It allows us to monitor Linux servers, their storages, containers, the configuration of networks and inspection of logs using a graphical user interface. It is really handy to give web-based GUI to command line servers; it could be your web server, database server, FTP server etc. running on Linux such as CentOS, Debian, Redhat, Ubuntu, Amazon Linux etc.

Lately, the CentOS has announced its new operating systems CentOS 8 Linux and CentOS Stream, however, both are same except the CentOS 8 is a Long term supported OS where the Stream is a rolling-based with frequent updates & upgrades, that means it will get all updates of applications and packages instantly for testing and developing purpose. Whereas the LTS version will be for servers those want a stable and rigid performance.

The best thing if you are using the CentOS 8 Linux command line or GUI server, you will get the Cockpit Linux web interface tool as pre-installed (in a standard installation). Which help us to control and manage our server remotely or locally using web browser via cockpit Linux web interface dashboard. Also, it features the terminal. However, by default, it is not enabled and needs to do it manually, here is the command to do that.

Open CentOS 8 Linux Terminal

Go to your CentOS 8, if you are on GUI then click on the Activities option given on the left top side of the Gnome Desktop environment and click on the terminal icon given on the left side strip. Users those are on Command line server they can directly move to the next step.

Login as Root

To enable the Cockpit server management GUI, you must have the root access of the server. Type: su and then the password for the root user.

Enable Cockpit Linux web GUI

Optional command: If you are on old CentOS such as 7 or 6 and want to install it simply use this command:

 yum install cockpit

To enable the web graphical user interface of the Cockpit on CentOS 8 or CentOS stream Linux run the following command:

sysmtemctl enable --now cockpit.socket
cockpit

Start the Cockpit web service

First, check whether the Cockpit service is running on your Linux distro or not. For that type:

service cockpit status

You will get the following output:

[root@localhost raj]# service cockpit status
Redirecting to /bin/systemctl status cockpit.service
● cockpit.service - Cockpit Web Service
   Loaded: loaded (/usr/lib/systemd/system/cockpit.service; static; vendor pres>
   Active: inactive (dead) since Fri 2019-09-27 00:59:52 EDT; 21min ago
     Docs: man:cockpit-ws(8)
  Process: 10397 ExecStart=/usr/libexec/cockpit-ws (code=exited, status=0/SUCCE>
  Process: 10395 ExecStartPre=/usr/sbin/remotectl certificate --ensure --user=r>
 Main PID: 10397 (code=exited, status=0/SUCCESS)

Sep 27 00:58:22 localhost.localdomain systemd[1]: Starting Cockpit Web Service.>
Sep 27 00:58:22 localhost.localdomain systemd[1]: Started Cockpit Web Service.
Sep 27 00:58:22 localhost.localdomain cockpit-ws[10397]: Using certificate: /et>
start cockpit web service

Although the service of this server web management tool automatically gets started, in case not then use the following command to start it:

service cockpit start

Furthermore in future to stop and restart:

service cockpit stop
service cockpit restart

Log in to the Web interface of Cockpit

Now, open your web-browser and type: http://localhost:9090 or http://server-ip-address:9090

You can check the IP address of the server using the command:

ifconfig

On the web interface, it will ask you to enter the username and password. Use your server system username and password where the cockpit has been installed.

Log in to the Web interface of Cockpit

Cockpit web-based Dashboard

Here is the Dashboard of the Server management tool with beautiful and easy to use GUI. You can also access the terminal from here to directly issue the command to your local or remote server.

Cockpit web-based Dashboard on CentOS 8 and Stream Linux