From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTP id 5803C681 for ; Sat, 10 May 2014 03:44:58 +0000 (UTC) Received: from relay5-d.mail.gandi.net (relay5-d.mail.gandi.net [217.70.183.197]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id D20D22011A for ; Sat, 10 May 2014 03:44:57 +0000 (UTC) Date: Fri, 9 May 2014 20:44:47 -0700 From: Josh Triplett To: Andy Lutomirski Message-ID: <20140510034447.GA8451@thin> References: <1399066024.2202.72.camel@dabdike> <20140506171807.GA20776@cloud> <536D1CCE.3060708@zytor.com> <1399681415.2166.82.camel@dabdike.int.hansenpartnership.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Cc: Josh Boyer , Sarah Sharp , "ksummit-discuss@lists.linuxfoundation.org" , Greg KH , James Bottomley , Julia Lawall , Darren Hart , Dan Carpenter Subject: Re: [Ksummit-discuss] [CORE TOPIC] Kernel tinification: shrinking the kernel and avoiding size regressions List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , On Fri, May 09, 2014 at 05:38:49PM -0700, Andy Lutomirski wrote: > We're almost at the point where it would be reasonable to shove > basically every service on a system into a user namespace, in which > case, barring bugs, you shouldn't be able to own the kernel. I wonder > if this might do pretty much exactly what you want. We should absolutely do this, and it'll make a big difference. However, "barring bugs" is a pretty big bar; in practice, it's probably easier to get from user->kernel than to get from user->root, just because you can do the former from any process that can make system calls. We're not anywhere close to done with fixing system call vulnerabilities. > Essentially, you'd mount your filesystems, make a new userns, move all > network devices into a new netns owned by that userns, unshare the > mount namespace, and somehow get systemd or whatever other init > program you're using to play along. systemd makes it rather easy to configure a service for this kind of namespace isolation. You can, for instance, put services that don't need the network in a network namespace that only includes localhost. I suspect that far more services will take advantage of that than will attempt to configure an equivalent isolation setup manually. - Josh Triplett