Skip to content

Commit e95186f

Browse files
committed
Cockpit 330
1 parent 964a342 commit e95186f

File tree

1 file changed

+43
-0
lines changed

1 file changed

+43
-0
lines changed

_posts/2024-12-04-cockpit-330.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
---
2+
title: Cockpit 330
3+
author: martinpitt
4+
date: '2024-12-04'
5+
tags: cockpit
6+
slug: cockpit-330
7+
category: release
8+
summary: 'bootc support, sysext development mode'
9+
---
10+
11+
Cockpit is the [modern Linux admin interface](https://cockpit-project.org/).
12+
We release regularly.
13+
14+
Here are the release notes from Cockpit 330:
15+
16+
17+
## Web server: Increased sandboxing, `setuid` removal, `bootc` support
18+
19+
Cockpit's web server already had low privilege levels, but previously used a [setuid](https://en.wikipedia.org/wiki/Setuid) helper program `cockpit-session` for user logins. That helper had restricted permissions and was only executable by Cockpit (through group ownership). Its sole purpose was to run at the system level and immediately drop permissions to log in to a specific user account. However, the binary was still `setuid`, and `setuid` should be avoided for security reasons.
20+
21+
This release removes the `setuid` flag from the helper. `cockpit-session` now starts via systemd socket activation, with the Cockpit web server connecting to it using a protected UNIX socket in the `/run` directory. This approach enables tighter sandbox security by preventing the login session from being a direct descendant of the web server process. It also [fixes Cockpit on bootc images](https://github.com/cockpit-project/cockpit/issues/21201).
22+
23+
All Cockpit components now run as dynamic users created at startup using the `DynamicUser=` systemd feature. Existing systems may still have a `cockpit-ws` user (and very old systems might even have associated TLS certificates). However, this `cockpit-ws` user is no longer required and can be safely deleted.
24+
25+
## Development: New install mode using `systemd-sysext`
26+
27+
To simplify development, a new build tool can install Cockpit as a [systemd-sysext](https://www.freedesktop.org/software/systemd/man/latest/systemd-sysext.html) (system extension). This enables testing all parts of Cockpit (web server, login page, systemd units, and bridge) directly on the host system, safely and quickly, without modifying the disk or having to use a virtual machine. Installation is temporary in `/run/extensions/` and cleared on reboot.
28+
29+
Read [the documentation for detailed instructions](https://github.com/cockpit-project/cockpit/blob/main/HACKING.md#working-on-your-local-machine-systemd-sysext).
30+
31+
32+
## Try it out
33+
34+
Cockpit 330 is available now:
35+
36+
* [For your Linux system](https://cockpit-project.org/running.html)
37+
* [Cockpit Client](https://flathub.org/apps/details/org.cockpit_project.CockpitClient)
38+
39+
* [Cockpit Source Tarball](https://github.com/cockpit-project/cockpit/releases/tag/330)
40+
* [Cockpit Fedora 41](https://bodhi.fedoraproject.org/updates/FEDORA-2024-60684a3b16)
41+
* [Cockpit Fedora 40](https://bodhi.fedoraproject.org/updates/FEDORA-2024-ba2375d278)
42+
43+
*[TLS]: Transport Layer Security

0 commit comments

Comments
 (0)