POSIX capabilities

So, going back to our fictional packcap example application, how do we run the process—which requires root, it seems—without root privileges (no root login, setuid-root, or sudo(8) allowed) and yet have it perform its tasks correctly?

Enter the POSIX Capabilities model: In this model, instead of giving a process blanket access as a root (or other) user, there is a way to embed particular capabilities into both the process and/or binary file. The Linux kernel supports the POSIX capabilities model from very early on—the 2.2 Linux kernels (at the time of writing, we are now in the 4.x kernel series). From a practical viewpoint, the features we describe as follows are available from Linux kernel version 2.6.24 (released January ...

Get Hands-On System Programming with Linux now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.