From fc53809803cd2bc2434e312b19a18fa36776da12 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 12 Jun 2024 05:50:40 +0200 Subject: Adding upstream version 256. Signed-off-by: Daniel Baumann --- man/systemd-nsresourced.service.xml | 81 +++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 man/systemd-nsresourced.service.xml (limited to 'man/systemd-nsresourced.service.xml') diff --git a/man/systemd-nsresourced.service.xml b/man/systemd-nsresourced.service.xml new file mode 100644 index 0000000..d0a561e --- /dev/null +++ b/man/systemd-nsresourced.service.xml @@ -0,0 +1,81 @@ + + + + + + + + systemd-nsresourced.service + systemd + + + + systemd-nsresourced.service + 8 + + + + systemd-nsresourced.service + systemd-nsresourced + User Namespace Resource Delegation Service + + + + systemd-nsresourced.service + /usr/lib/systemd/systemd-nsresourced + + + + Description + + systemd-nsresourced is a system service that permits transient delegation of a a + UID/GID range to a user namespace (see user_namespaces7) + allocated by a client, via a Varlink IPC API. + + Unprivileged clients may allocate a user namespace, and then request a UID/GID range to be assigned + to it via this service. The user namespace may then be used to run containers and other sandboxes, and/or + apply it to an id-mapped mount. + + Allocations of UIDs/GIDs this way are transient: when a user namespace goes away, its UID/GID range + is returned to the pool of available ranges. In order to ensure that clients cannot gain persistency in + their transient UID/GID range a BPF-LSM based policy is enforced that ensures that user namespaces set up + this way can only write to file systems they allocate themselves or that are explicitly allowlisted via + systemd-nsresourced. + + systemd-nsresourced automatically ensures that any registered UID ranges show up + in the system's NSS database via the User/Group Record + Lookup API via Varlink. + + Currently, only UID/GID ranges consisting of either exactly 1 or exactly 65536 UIDs/GIDs can be + registered with this service. Moreover, UIDs and GIDs are always allocated together, and + symmetrically. + + The service provides API calls to allowlist mounts (referenced via their mount file descriptors as + per Linux fsmount() API), to pass ownership of a cgroup subtree to the user + namespace and to delegate a virtual Ethernet device pair to the user namespace. When used in combination + this is sufficient to implement fully unprivileged container environments, as implemented by + systemd-nspawn1, fully + unprivileged RootImage= (see + systemd.exec5) or + fully unprivileged disk image tools such as + systemd-dissect1. + + This service provides one Varlink service: + io.systemd.NamespaceResource allows registering user namespaces, and assign mounts, + cgroups and network interfaces to it. + + + + See Also + + systemd1, + systemd-mountfsd.service8, + systemd-nspawn1, + systemd.exec5, + systemd-dissect1, + user_namespaces7 + + + -- cgit v1.2.3