Re: Bug#189425: openssh: with default config, sshd fails on kernels other than Linux > 2.0
On Sun, Apr 27, 2003 at 04:49:53PM +0100, Colin Watson wrote:
> > On the non-linux ports: note that priviledge separation is not supported
> > on GNU, and will probably never be, since it has a different concept of
> > user priviledges.
>
> I don't understand why. Privilege separation just requires a separate
> user and group which is used for processing network data, the ability
> for sshd running as root to setuid(), setgid(), and setgroups() to that
> user and group, and an empty chroot. I didn't think GNU was so different
> that this would be unavailable; in fact, I would expect all of these
> features to be available on any Debian system. The reason why privilege
> separation doesn't work on Linux 2.0 was originally due to the lack of
> anonymous memory mapping, and now that that has been worked around it's
> due to a simple bug (#150976).
>
> Could you please explain the problem on GNU in more detail?
Neal just explained what i meant. Priviledge handling is one of the typical
features that come out when trying to explain GNU's system core (Hurd/Glibc)
dessign. [*]
I assumed that Priviledge Separation was some kernel-specific feature
introduced with Linux 2.1 that probably wasn't worth implement. but as you
describe it seems simple. maybe we could have it to keep openssh happy
Last time i tried, sshd failed to initialise a session on GNU with PrivSep
turned on. did you mean a PrivSep special API needs to be added, or is sshd
suposed to work on any sane (unlike this one ;)) system?
[*] I just want to add that process spawning and priviledge scalation
don't necessarily correspond to the same program. A shell daemon could
just happily spawn a shell with no priviledges (unidentified user) to
everyone that requests it (without authentification). then the "login"
utility could add priviledges to him/her, no matter where he/she comes
from, just as it does with the users in local terminal.
--
Robert Millan
make: *** No rule to make target `war'. Stop.
Another world is possible - Just say no to genocide
Reply to: