nsroot: Minimalist Process Isolation Tool Implemented With Linux Namespaces
Inge Alexander Raknes, +Bjørn Fjukstad, Lars Ailo Bongo
(Submitted on 13 Sep 2016)


Data analyses in the life sciences are moving from tools run on a personal computer to services run on large computing platforms. This creates a need to package tools and dependencies for easy installation, configuration and deployment on distributed platforms. In addition, for secure execution there is a need for process isolation on a shared platform. Existing virtual machine and container technologies are often more complex than traditional Unix utilities, like chroot, and often require root privileges in order to set up or use. This is especially challenging on HPC systems where users typically do not have root access. We therefore present nsroot, a lightweight Linux namespaces based process isolation tool. It allows restricting the runtime environment of data analysis tools that may not have been designed with security as a top priority, in order to reduce the risk and consequences of security breaches, without requiring any special privileges. The codebase of nsroot is small, and it provides a command line interface similar to chroot. It can be used on all Linux kernels that implement user namespaces. In addition, we propose combining nsroot with the #AppImage format for secure execution of packaged applications. nsroot is open sourced and available at https://github.com/uit-no/nsroot

Full paper:

The main advantage of nsroot over nsjail and firejail is that nsroot maintains
compatibility with the chroot command and it has a smaller codebase (...)
As future work we intend to implement the proposed integration with AppImage (...)
Shared publiclyView activity