So, in this post, I will show how to install Cockpit on OpenSUSE 15.1.
Cockpit is a web application that allows you to control one server or several Linux servers. Everything from a web interface that you can open from your favorite web browser. In this way, we can perform common and not so common tasks on the server with just a few clicks.
Using Cockpit It is easy to start containers, administer storage, configure networks, and inspect logs.
On the other hand, Cockpit gets along very well with after-server applications such as Ansible. This means that the integration with the server is practically complete. In addition, the application is quite well supported by its creators and is available for the largest Linux distributions.
Install Cockpit on OpenSUSE 15.1
The easiest way to install Cockpit on OpenSUSE 15.1 is through a distribution-specific repository. However, this is not enabled by default, so you have to enable it first.
Open a terminal emulator or connect to your server using ssh.
Then, add the repository with the following command:
:~$ sudo zypper addrepo https://download.opensuse.org/repositories/systemsmanagement:cockpit/openSUSE_Leap_15.1/systemsmanagement:cockpit.repo
Adding repository 'cockpit-project.org (openSUSE_Leap_15.1)' ……………………………………………………………………………………………………………………………………………………………………………………………. Repository 'cockpit-project.org (openSUSE_Leap_15.1)' successfully added URI : http://download.opensuse.org/repositories/systemsmanagement:/cockpit/openSUSE_Leap_15.1/ Enabled : Yes GPG Check : Yes Autorefresh : No Priority : 99 (default priority) Repository priorities are without effect. All enabled repositories share the same priority
Then, refresh the cache of the repositories. When you first use this repository, you will be asked to accept the repository’s GPG key. You do this by pressing the “a” key.
:~$ sudo zypper refresh Repository 'Non-OSS Repository' is up to date. Repository 'Main Repository' is up to date. Retrieving repository 'Main Update Repository' metadata ……………………………………………………………………………………………..[done] Building repository 'Main Update Repository' cache ………………………………………………………………………………………………….[done] Repository 'Update Repository (Non-Oss)' is up to date. Retrieving repository 'cockpit-project.org (openSUSE_Leap_15.1)' metadata --------------------------------------------------------------------------------------------[-] New repository or package signing key received: Repository: cockpit-project.org (openSUSE_Leap_15.1) Key Name: systemsmanagement OBS Project [email protected] Key Fingerprint: 50E60431 54485D99 0732B5D6 ACAA9CF7 E6E5A213 Key Created: Wed 24 Jul 2019 11:26:49 AM -04 Key Expires: Fri 01 Oct 2021 11:26:49 AM -04 Rpm Name: gpg-pubkey-e6e5a213-5d3878b9 Do you want to reject the key, trust temporarily, or trust always? r/t/a/?: a Retrieving repository 'cockpit-project.org (openSUSE_Leap_15.1)' metadata ……………………………………………………………………………..[done] Building repository 'cockpit-project.org (openSUSE_Leap_15.1)' cache ………………………………………………………………………………….[done] All repositories have been refreshed.
After that, you can install Cockpit without any problems.
:~$ sudo zypper in cockpit Loading repository data… Reading installed packages… Resolving package dependencies… The following 4 NEW packages are going to be installed: cockpit cockpit-bridge cockpit-system cockpit-ws 4 new packages to install. Overall download size: 2,4 MiB. Already cached: 0 B. After the operation, additional 3,9 MiB will be used. Continue? y/n/v/…? shows all options: y
Also, you can install some additional Cockpit packages:
:~$ sudo zypper in cockpit-bridge cockpit-docker cockpit-pcp cockpit-tests cockpit-ws
After installation, the cockpit service must be started:
:~$ sudo systemctl start cockpit
And then, verify that the service is running correctly:
:~$ sudo systemctl status cockpit ● cockpit.service - Cockpit Web Service Loaded: loaded (/usr/lib/systemd/system/cockpit.service; static; vendor preset: disabled) Active: active (running) since Wed 2020-01-29 13:55:23 -04; 21s ago Docs: man:cockpit-ws(8) Process: 2213 ExecStartPre=/usr/sbin/remotectl certificate --ensure --user=root --group=cockpit-ws --selinux-type=etc_t (code=exited, status=0/SUCCESS) Main PID: 2226 (cockpit-ws) Tasks: 2 (limit: 4915) CGroup: /system.slice/cockpit.service └─2226 /usr/lib/cockpit-ws Jan 29 13:55:22 linux-s6ig systemd[1]: Starting Cockpit Web Service… Jan 29 13:55:22 linux-s6ig remotectl[2213]: Generating temporary certificate using: sscg --quiet --lifetime 3650 --key-strength 2048 --cert-key-file /etc/cockpit/ws-cer> Jan 29 13:55:22 linux-s6ig remotectl[2213]: Error generating temporary dummy cert using sscg, falling back to openssl Jan 29 13:55:22 linux-s6ig remotectl[2213]: Generating temporary certificate using: openssl req -x509 -days 36500 -newkey rsa:2048 -keyout /etc/cockpit/ws-certs.d/0-sel> Jan 29 13:55:23 linux-s6ig remotectl[2213]: /usr/bin/chcon: can't apply partial context to unlabeled file '/etc/cockpit/ws-certs.d/0-self-signed.cert' Jan 29 13:55:23 linux-s6ig systemd[1]: Started Cockpit Web Service. Jan 29 13:55:23 linux-s6ig cockpit-ws[2226]: Using certificate: /etc/cockpit/ws-certs.d/0-self-signed.cert lines 1-17/17 (END)
Finally, you have to open the Cockpit ports in the firewall. Just the following command is enough:
:~$ sudo firewall-cmd --add-service=cockpit --zone=public --permanent success
And restart the firewall service:
:~$ sudo firewall-cmd --reload success
Now we can really use it.
Using Cockpit
Once we have installed Cockpit, we can open a favorite web browser and access https://your-server:9090
Replace your-server by the IP address of the computer or by the domain name.
You will see the following:
you must now log in with your username and password. The same ones you use for the system. Then, you will see the following:
As you can see, the system information is displayed. But you can also check the system logs on the left side.
Moreover, you can also easily create new users of the system.
You can also see the services of the system.
Cockpit even has a built-in terminal in case you need to run a command quickly.
So, enjoy it.
Conclusion
Managing a system is not an easy task, that’s why specialized applications are required to facilitate the task. Cockpit combines the simplicity of a fairly polished web interface with the robustness of having great options available.
So, share this post and join our Telegram channel.