tech-userlevel archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: "valid shell"s
On Thu, Feb 07, 2008 at 03:49:13PM -0500, der Mouse wrote:
> > That's the entire premise behind checking the shell, as opposed to,
> > say, /etc/ftpusers or other more verbose configuration files that do
> > or could exist.
>
> Equating those two is the premise behind abusing getusershell() to
> check for things like "may use server-side FTP", yes. But that
> equation is invalid.
Yes, that was at least part of the point. I think we're now arguing
about whether we're agreeing.
The rest of the point I was trying to make is that whether or not that
equivalence is a mistake, one can't abolish it without providing some
alternative way to arrive at a similar conclusion.
> > you can't remove the concept of a valid shell without providing a
> > suitable alternate check for these cases.
>
> Actually, from a dogmatic point of view, the correct thing to do is to
> wall them off from the "valid shell" concept, to make them stop abusing
> it by equating it with other things.
Yes, but if you don't provide an alternative, and for that matter also
a cogent explanation of why the alternative is more correct, they'll
just hack around your restriction. You will find lame programs coming
with a config test for getusershell() or whatever and providing an
alternative method that checks only if the user's shell is
"/bin/bash".
Dogmatism isn't good for system design.
Furthermore, fixing a problem properly requires considering the entire
framework of the problem, including the administrative and social
contexts and the costs of deploying solutions.
> As a matter of pragmatics, it makes it, among other things, impossible
> to configure a box such that users in general have control over their
> own shells; setting such a system up demands some coding in that case -
> either writing the wrapper or removing the getusershell() stupidity
> from (at least) chsh.
Pragmatically, a lot of things are wrong and the more serious problems
should be tackled first. I'm just really not convinced /etc/shells is
very high on that list.
--
David A. Holland
dholland%netbsd.org@localhost
Home |
Main Index |
Thread Index |
Old Index