Security

如何在核心中啟用 user_namespaces?(對於無特權的 unshare。)

  • November 9, 2019

我的 Linux 核心在建構時必須配置了user_namespaces,但它們的使用在啟動後受到限制,並且必須顯式啟用。我應該使用哪個 sysctl?

(如果打開它,這將允許執行隔離命令unshare --user --map-root-user --mount-proc --pid --forkchroot

眾所周知,Debian(因此也可能是 Ubuntu)發布了一個具有這種 user_namespaces 限制的核心,並且啟用它的方法是/現在:

sysctl -w kernel.unprivileged_userns_clone=1

(來源:https ://blog.mister-muffin.de/2015/10/25/unshare-without-superuser-privileges/ 。)

ALT 在kernel-image-std-def中也有這樣的限制。與 Debian 不同,它被稱為kernel.userns_restrict.

通常,它是 1(即“受限”):

$ cat /proc/sys/kernel/userns_restrict 
1

要啟用此功能,echo 0 > /proc/sys/kernel/userns_restrict(當然,或sysctl如上所述使用)。

引用自:https://unix.stackexchange.com/questions/303213