Re: long delay when mounting due to SETCLIENTID AUTH_GSS attempts

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 7 May 2013 16:53:21 -0400
"J. Bruce Fields" <bfields@xxxxxxxxxxxx> wrote:

> On Fri, May 03, 2013 at 05:50:49PM -0400, Chuck Lever wrote:
> > 
> > On May 3, 2013, at 5:18 PM, "J. Bruce Fields" <bfields@xxxxxxxxxxxx> wrote:
> > 
> > > On Fri, May 03, 2013 at 02:48:59PM -0400, Chuck Lever wrote:
> > >> We should always use krb5i if a GSS context can be established with
> > >> our machine cred.  As I said before, SETCLIENTID and
> > >> GETATTR(fs_locations) really should use an integrity-protecting
> > >> security flavor no matter what flavor is in effect on the mount points
> > >> themselves.
> > > 
> > > Can you give an example of a threat that could be avoided by this?
> > > 
> > > My suspicion is that in most cases an attacker with the ability to
> > > subvert auth_sys could *also* DOS gssd, and hence force the fallback to
> > > auth_sys.
> > > 
> > > krb5i plus a fallback to auth_sys on failure to authenticate doesn't
> > > sound to me much more secure than just auth_sys.
> > 
> > Our current situation is that the first mount of a server determines the flavor to use for SETCLIENTID.  So if that mount happens to be "sec=sys" the SETCLIENTID is done with AUTH_SYS no matter what the subsequent mounts request.
> > 
> > That's just about as secure in many cases as falling back.
> > 
> > > If we really want much security benefit from krb5i on state operations,
> > > I think we need to really *require* krb5i.
> > > 
> > > So I'm inclined towards Jeff's solution: don't do this unless userspace
> > > somehow affirmatively states that it requires krb5i on state operations.
> > 
> > This would have to be on a per-server basis.  Where would an admin specify such an option?  I don't believe either a mount option (too fine) or a module parameter (too coarse) is appropriate.
> 
> Why do you think a mount option is too fine?  They can use nfsmount.conf
> to specify per-server or global defaults.
> 
> > > I agree that we should default to this when we can.  But the way to move
> > > towards that default is then to get distributions to turn on the new
> > > module parm (or whatever it is) by default.  As they do so, they can
> > > also ensure that e.g. gssd is started.
> > 
> > gssd is not all that's required.
> 
> Isn't that's all that's required to fix the delay problem?  Or do you
> still get a delay if you run gssd but don't create a keytab?
> 

It seems like running gssd is sufficient to make the delay go away
for me. The upcall gets a quick negative response and then the kernel
falls back to doing AUTH_SYS.

While that's a reasonable workaround for now, I'm not sure we want a
solution that requires having yet another daemon running if we can get
away with it.

-- 
Jeff Layton <jlayton@xxxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux