This text attempts to describe the yp, NIS, and NIS+ support offered in the Red Hat 2.x Linux products.
These questions are answered in the NIS-HOWTO. Read it - it even
comes with Red Hat in the ldp RPM and on the CD-ROM. If you install
the ldp RPM, you will find the NIS-HOWTO in /usr/doc/HOWTO
.
The quick answer is that while yp ("Yellow Pages") is the phone book in Britain, NIS is the traditional RPC-based implementation for sharing passwd, group, hosts, services, and other useful things between many machines. NIS+ is a snazzier, and more secure reimplementation of the same idea. NYS is the public domain version of same.
Red Hat ships NYS client code in its libc and plain yp/NIS client programs like ypcat and ypbind. We ship a plain NIS server daemon, since the NYS (aka NIS+) server daemon is not yet ready for prime-time. Our ypserv does not appear to have the tcp_wrapper-style /etc/hosts.allow/deny checking compiled in.
The NYS code in libc does it all. There is no need to run ypbind. You probably DO need to run domainname (apparently for the benefit of of plain NIS client programs). You must configure which maps are read from where in /etc/nsswitch.conf, and which NIS server and domain you are in using /etc/yp.conf. nsswitch.conf has comments galore, and yp.conf will look like this:
domain foo
ypserver foo.bar.com
Do not put the usual +:::: lines at the end of passwd or group.
Netgroups are not supported under RH <=2.1; adding netwroup entries (like +@foo or -@foo) to passwd or group can compromise the security of your system. NYS netgroups do work in libc >= 5.2.something; RH 2.2 will probably use such a libc.
We will be fixing that, but in 2.0 and 2.1, the ypcat and ypmatch binaries don't work. You should be able to compile working versions from the NYS source in libc-5.0.9. If you are unable to do this, please email support@redhat.com asking for an updated package.
Red Hat ships a plain NIS (aka yp) server. It works just like any
other ypserv - modify the makefile in /var/nis to taste, perhaps move
the source files into /var/nis/src
, or perhaps not, run a make to make
the databases, and run ypserv. Further documentation is in
/usr/doc/ypserv*/*
.
We don't ship it, but you can obtain the regular
distribution and install it yourself without too much hassle. It is
available from the places listed in the NIS HOWTO. You have to modify
the pwupdate script that comes with it, even though the README claims
it works with the NYS Makefile we ships. We also don't
ship a rpcsrv/yppasswd.h
, although we do have the .x
file. The
yppasswdd package comes with both so it doesn't matter much.
The NYS define should be used, but don't use the -lnsl library since it is
built into our libc.
There is already an NIS-HOWTO that describes how to set things up far
better than this document does or should. Read it - it comes with
Red Hat in the ldp package, or you can find it in the usual places on
http://sunsite.unc.edu/mdw/mdw.html
, or if all else fails, from
http://www.picante.com/doc/RedHat/ldp/NIS-HOWTO.html
Next Chapter, Previous Chapter
Table of contents of this chapter, General table of contents
Top of the document, Beginning of this Chapter