Search our Knowledge Base

How To Use Cockpit in Fedora 23

Several free options exist for remotely managing Linux servers through a graphical user interface. While some seek to replicate the full range of features available in paid control panels such as Plesk or cPanel, others are focused on helping you perform common tasks and manage essential services. The GUI for remote server administration that ships with Fedora 23, Cockpit, falls into the latter category.

Pre-Flight Check

This article is intended as an introduction to the Cockpit GUI on Fedora 23 Server edition.

We’ll be logging in as root to a Liquid Web Self-Managed Fedora 23 server.

Step #1: Enable Cockpit

Cockpit is included as part of the default installation of Fedora 23. It is not, however, automatically enabled. Fortunately, it’s easy to get it up and running:

Starting Cockpit requires only a single command:

systemctl start cockpit

Note: The source image for some Fedora 23 servers, depending on when the server was created, may not have included Cockpit. If the above command returns an error, you can install it with: dnf -y install cockpit

Now that the service is running, we’ll need to make sure it’s accessible. Cockpit runs on port 9090, so you’ll need to allow it through the firewall. You can either add the service itself using:

firewall-cmd --add-service=cockpit

or simply open the port with:

firewall-cmd --permanent --add-port=9090/tcp

You now should reload the firewall for the rule to take effect:

firewall-cmd --reload

Step #2: Log into Cockpit

Point your browser to the Cockpit Dashboard at your server’s IP address and the Cockpit port, 9090:

https://123.123.123.123:9090

to arrive at Cockpit’s login screen.

Use your server’s root credentials to log in.

The server’s self-signed SSL certificate likely will trigger a browser warning, and you’ll need to accept the security certificate to proceed.

Note: A self-signed certificate uses the same level of encryption as a verified certificate, except that it is you who are verifying your server’s identity, rather than a third party.

Step #3: Explore Cockpit

Once logged in you’ll see the Dashboard:

The Dashboard loads the System tab by default, containing information about the server itself and graphs showing CPU and Memory Usage as well as Disk I/O and Network Traffic. Each chart label links to a more detailed view.

Cockpit’s main menu items allow you to perform a multitude of server management functions:

Containers allows you to manage your Docker containers. You can search for new containers, add or remove containers, start and stop them, and set runtime variables on this page.

Logs displays the server’s system and service logs, and allows you to click on any entry for more detailed information, such as the process ID.

Storage gives you a graphical look at disk reads and writes, and also allows you to view relevant logs. In addition, you can set up and manage RAID devices and volume groups, and format, partition, and mount/unmount drives.

Networking contains an overview of inbound and outbound traffic, along with relevant logs and network interface information. You also can configure the network interface from this page.

The Tools menu expands to offer two additional user and server management tools:

Accounts lets you add and manage users, set up and change passwords, and add and manage public SSH keys for each user.

Terminal contains a fully functional terminal, with tab completion, allowing you to perform any task you could perform through its web interface with the same privileges your login credentials would allow via SSH.