For review: user_namespace(7) man page

Michael Kerrisk (man-pages) mtk.manpages at gmail.com
Thu Sep 11 14:47:17 UTC 2014


Hi Andy,

On 09/09/2014 12:26 PM, Andy Lutomirski wrote:
> On Tue, Sep 9, 2014 at 9:05 AM, Eric W. Biederman <ebiederm at xmission.com> wrote:
>>
>> We may also want to discuss the specific restrictions on chroot.
>>
>> The text about chroot at least gives people a strong hint that the
>> chroot rules are affected by user namespaces.
>>
>> The restrictions that we have settled on to avoid chroot being a problem
>> are the creator of a user namespace must not be chrooted in their
>> current mount namespace, and the creator of the user namespace must not
>> be threaded.
>>
>> Andy can you check me on this it looks like unshare is currently buggy
>> in that it will allow a threaded application to create a user namespace.
> 
> I think it's this code in unshare:
> 
>     /*
>      * If unsharing a user namespace must also unshare the thread.
>      */
>     if (unshare_flags & CLONE_NEWUSER)
>         unshare_flags |= CLONE_THREAD | CLONE_FS;
> 
> I suppose that this should be documented.
> 
> CLONE_FS prevents the chroot from leaking out of the namespace.  (But
> see the other thread that I'm about to start...)

So, in the current draft of the setns(2) page, there is

    CLONE_NEWNS
        ...
        Since  Linux 3.9, CLONE_NEWUSER also automatically  implies
        CLONE_FS.

Does that cover your point? Or did you mean that more needs to be said?

Thanks,

Michael

-- 
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/


More information about the Containers mailing list