public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "J. Bruce Fields" <bfields@fieldses.org>
To: Jan Engelhardt <jengelh@computergmbh.de>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: NFS4 authentification / fsuid
Date: Thu, 30 Aug 2007 11:12:14 -0400	[thread overview]
Message-ID: <20070830151214.GG26863@fieldses.org> (raw)
In-Reply-To: <Pine.LNX.4.64.0708301640030.24730@fbirervta.pbzchgretzou.qr>

On Thu, Aug 30, 2007 at 04:42:33PM +0200, Jan Engelhardt wrote:
> 
> On Aug 30 2007 10:29, Trond Myklebust wrote:
> >On Thu, 2007-08-30 at 16:12 +0200, Jan Engelhardt wrote:
> >> 
> >> with NFS3, there is this 'root hole', i.e. any person who has a root 
> >> account (perhaps by use of a laptop) can mount an export (let's say this 
> >> export had the "root_squash" option), and still have a look at the user 
> >> files, because he can locally setuid() into another user.
> >> 
> >> So I was looking for alternatives. CIFS is my favorite candidate, but it 
> >> has a few issues right now. So does sshfs and about everything I have 
> >> come across. Since I remember NFS4 can use KRB5 authentification, my 
> >> question is, will the NFS(4) server process run with an fsuid equal to 
> >> the user that authenticated?
> >
> >NFSv3 should work fine with krb5 too, but that won't solve your problem
> >with setuid: kerberos saves the TGT in a file on /tmp, so root can still
> >suid and grab your cred (and the same goes for CIFS).
> 
> Hm? I do not see this problem with CIFS. The user may have local
> root, but on the server, he only has his non-root account on the
> server, and as such, can only operate on the server using this
> non-root fsuid. Did I miss something? (Especially the /dev/mem thing
> is not quite clear to me.)

The server will run with an fsuid equal to the user that authenticated,
you're correct.  So if you require krb5 access on an export, then nfs
access to a file on the export should be permitted only on rpc's that
are authenticated using credentials of a user with permission to access
the file.

Trond's pointing out that when you give the client your krb5 credentials
you're trusting it to do only what you tell it to with them.  You have
to trust the client's kernel at the very least, and also root on that
client, for the forseeable future.

--b.

      parent reply	other threads:[~2007-08-30 15:12 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-30 14:12 NFS4 authentification / fsuid Jan Engelhardt
2007-08-30 14:29 ` Trond Myklebust
2007-08-30 14:32   ` Trond Myklebust
2007-08-30 14:42     ` Jan Engelhardt
2007-08-30 15:04       ` Trond Myklebust
2007-08-30 21:44         ` J. Bruce Fields
2007-09-06  8:14           ` Satyam Sharma
2007-09-06  8:29             ` Satyam Sharma
2007-09-06 15:11               ` J. Bruce Fields
2007-09-06 23:21                 ` Trond Myklebust
2007-09-06 23:32                   ` Trond Myklebust
2007-09-07 15:34                     ` J. Bruce Fields
2007-09-18 23:27                       ` Satyam Sharma
2007-09-18 23:12                 ` Satyam Sharma
2007-09-06 15:06             ` J. Bruce Fields
2007-09-06 23:30               ` Kyle Moffett
2007-09-06 23:35                 ` Trond Myklebust
2007-09-07  0:56                   ` Kyle Moffett
2007-09-07  5:14                     ` Trond Myklebust
2007-09-07  5:47                       ` Kyle Moffett
2007-09-07  6:37                         ` Bernd Eckenfels
2007-09-18 23:48                         ` Satyam Sharma
2007-09-18 23:44                     ` Satyam Sharma
2007-09-19  5:16                       ` Kyle Moffett
2007-09-19 12:16                         ` Satyam Sharma
2007-09-19 13:49                           ` Kyle Moffett
2007-09-19 14:12                             ` Satyam Sharma
2007-09-19 15:01                               ` J. Bruce Fields
2007-09-20  7:03                                 ` Satyam Sharma
2007-09-19 16:38                         ` Valdis.Kletnieks
2007-09-20  7:15                           ` Satyam Sharma
2007-08-30 15:12       ` J. Bruce Fields [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070830151214.GG26863@fieldses.org \
    --to=bfields@fieldses.org \
    --cc=jengelh@computergmbh.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=trond.myklebust@fys.uio.no \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox