NIS(YP)/NIS+/NYS COMO
 Andrea Dell'Amico, Mitchum DSouza, Erwin Embsen, Peter
 Eriksson
 l0.5, 24 de Enero de 1995 18 de Julio de 1996

 Configuraci�n y detalles de NIS(YP), NIS+ y NYS (Yellow Pages), sis�
 temas de autentificaci�n distribu�da.
 ______________________________________________________________________

 �ndice General:

 1.      Glosario

 1.1.    Algo de Informaci�n General

 2.      Introducci�n

 2.1.    Nuevas Versiones de Este Documento (En ingl�s)

 2.2.    Nota de Renuncia

 2.3.    FeedBack

 2.4.    Agradecimientos

 3.      � NIS o NIS+ ?

 3.1.    � NIS tradicional o la librer�a NYS ?

 4.      C�mo trabaja

 5.      � Qu� necesitas para configurar NIS ?

 5.1.    El Mapeador de Puertos RPC

 5.2.    Determinar si eres Servidor, Esclavo o Cliente.

 5.3.    El Software

 5.4.    Configurar un Cliente NIS usando NIS Tradicional

 6.      � Qu� necesitas para configurar NYS ?

 6.1.    Determinar si eres un Servidor, Esclavo o Cliente.

 6.2.    El Software

 6.3.    Configurar un Cliente NYS usando NYS

 6.4.    El Fichero nsswitch.conf

 6.5.    Haz usar NYS a tus binarios

 7.      Configurar un Servidor NIS

 7.1.    El Programa Servidor ypserv

 7.2.    El Programa yppasswdd

 8.      Verificar la Instalaci�n NIS/NYS

 9.      Problemas Comunes y soluciones con NIS

 10.     Preguntas Realizadas Frecuentemente

 11.     Anexo: El INSFLUG
 ______________________________________________________________________

 1.  Glosario

 En este documento se han usado muchos acr�nimos. Aqu� se listan los
 m�s importantes junto a una breve explicaci�n:

    DBM
       DataBase Management, una librer�a de funciones que mantiene
       pares clave-contenido en una base de datos.

    DLL
       Dynamically Linked Library, una librer�a enlazada a un programa
       ejecutable en tiempo de ejecuci�n.

    domainname
       Un nombre "clave" que es usado por clientes NIS para ser capaces
       de localizar un servidor NIS adecuado que sirve a esa clave
       domainname. Notar que esto no tiene nada que ver necesariamente
       con el "dominio" (nombre de m�quina) DNS de la(s) m�quina(s).

    FTP
       File Transfer Protocol, un protocolo usado para transferir
       ficheros entre dos ordenadores.

    libnsl
       Name services library, una librer�a de llamadas a servicios de
       nombres (getpwnam, getservbyname, etc...) en Unixes SVR4.

    libsocket
       Socket services library, una librer�a para llamadas a servicios
       de sockets (socket, bind, listen, etc...) en Unixes SVR4.

    NIS
       Network Information Service, un servicio que proporciona
       informaci�n, que tiene que ser conocida por toda la red, a todas
       las m�quinas de la red. Hay soporte para NIS en la librer�a
       est�ndar de Linux libc, y a la que en el texto nos referiremos
       como "NIS tradicional".

    NIS+
       Network Information Service (Plus :-), es esencialmente un NIS
       con ``esteroides''. NIS+ fue dise�ado por Sun Microsystems Inc.
       como un sustituto de NIS, con una mejor seguridad y un mejor
       manejo de _grandes_ instalaciones.

    NYS
       Este es el nombre de un proyecto que viene de NIS+,YP y Switch y
       que est� organizado por Peter Eriksson <[email protected]>.
       Contiene, entre otras cosas, una completa reimplementaci�n del
       c�digo del NIS (=YP) usando la funcionalidad del Name Services
       Switch de la librer�a NYS.

    RPC
       Remote Procedure Call. Las rutinas RPC permiten a los programas
       en C realizar llamadas a procedimientos en otras m�quinas a
       trav�s de la red. Cuando la gente habla de RPC, normalmente se
       refiere a la variante SunRPC.

    YP Yellow Pages(tm), P�ginas Amarillas en Ingl�s, es una marca
       registrada en el Reino Unido por la British Telecom plc. (la
       telef�nica inglesa, vamos).

    TCP-IP
       Transmission Control Protocol/Internet Protocol. Es un protocolo
       de comunicaci�n de datos usado a menudo en m�quinas Unix.

 1.1.  Algo de Informaci�n General

 Las siguientes l�neas est�n sacadas del Sun(tm) System & Network
 Administration Manual:

          "NIS se llamaba en un principio Sun Yellow Pages (YP)
           pero el nombre Yellow Pages(tm) es una marca registrada
           en el Reino Unido por la British Telecom plc y no
           puede ser usado sin permiso."

 NIS viene de Network Information Service. Su prop�sito es proveer
 informaci�n, que tiene que ser conocida a lo largo de la red, a todas
 las m�quinas de la red. La informaci�n m�s indicada para ser
 distribuida por NIS es:

 �  nombres de login/passwords/directorios home (/etc/passwd)

 �  informaci�n de grupos (/etc/group)

 As� que, por ejemplo, si la entrada de tu password est� grabada en la
 base de datos passwd de NIS, ser�s capaz de entrar en todas las
 m�quinas de la red que tengan corriendo los programas clientes NIS.

 Sun es una marca registrada de Sun Microsystems, Inc. licenciada a
 SunSoft, Inc.

 2.  Introducci�n

 Cada vez m�s y m�s m�quinas Linux est�n siendo instaladas como parte
 de una red de computadoras. Para simplificar la administraci�n de la
 red, la mayor parte de las redes (sobre todo, redes basadas en
 m�quinas Sun) ejecutan el Network Information Service. Las m�quinas
 Linux pueden sacar gran partido a los servicios NIS existentes o
 proveer servicio NIS por s� mismas. Pueden incluso (con la librer�a
 NYS) actuar como un cliente NIS+ limitado.

 Este documento intenta responder cuestiones sobre la configuraci�n de
 NIS(YP) en tu m�quina Linux. No habla sobre c�mo configurar NIS+. No
 olvides leer la secci�n ``''

 2.1.  Nuevas Versiones de Este Documento (En ingl�s)

 Nuevas versiones de este documento ser�n enviadas peri�dicamente
 (aproximadamente, cada mes) a los newsgroups comp.os.linux.announce y
 comp.os.linux.misc. Este documento se encuentra archivado en varios
 FTP sites, incluyendo sunsite.unc.edu en el directorio
 /pub/Linux/docs/HOWTO.

 2.2.  Nota de Renuncia

 Aunque este documento ha sido recogido con lo mejor de nuestros
 conocimientos, puede contener, y probablemente contendr�, errores. Por
 favor, l�ete todos los ficheros README adjuntos a cualquiera de los
 varios paquetes de software descritos en este documento para obtener
 una informaci�n m�s detallada y precisa. Nosotros intentaremos
 mantener este documento tan libre de errores como sea posible.

 2.3.  FeedBack

 Si tienes alg�n comentario, preguntas o sugerencias, por favor,
 envi�melas por e-mail a Erwin Embsen <[email protected]>. Y si encuentras
 errores u omisiones obvias, definitivamente debes contactar con �l (--
 Aunque me temo que no sabe castellano, as� que cu�ntale lo que sea en
 ingl�s...--) .

 2.4.  Agradecimientos

 Nos gustar�a agradecer a toda la gente que ha contribuido (directa o
 indirectamente) a la realizaci�n de este documento. En orden
 alfab�tico:

      Andrea Dell'Amico <[email protected]>
      Mitchum DSouza    <[email protected]>
      Erwin Embsen      <[email protected]>
      Byron A Jeff      <[email protected]>
      Peter Eriksson    <[email protected]>

 Theo de Raadt <[email protected]> es responsable del c�digo original de
 los yp-clients. Swen Thuemmler <[email protected]> port� el c�digo
 de los yp-clients y de las yp-routines en la libc (de nuevo, bas�ndose
 en el trabajo de Theo).

 3.  � NIS o NIS+ ?

 La elecci�n entre NIS y NIS+ es f�cil - usa NIS si no tienes que usar
 NIS+ o si no tienes severas necesidades de seguridad. NIS+ es mucho
 m�s problem�tico de administrar (es bastante f�cil de manejar la parte
 del cliente, pero la parte del servidor es horrible). Otro problema es
 que el soporte para NIS+ bajo Linux est� todav�a en desarrollo --una
 cosa importante de la que todav�a carece es del soporte para
 encriptaci�n y autentificaci�n de datos que es _la_ principal raz�n
 por la que alguien querr�a usar NIS+...--

 3.1.  � NIS tradicional o la librer�a NYS ?

 La elecci�n entre el NIS tradicional o el c�digo NIS de la librer�a
 NYS es una elecci�n entre vagancia y madurez vs. flexibilidad y deseos
 de aventura.

 El c�digo "NIS tradicional" est� en la librer�a C est�ndar y ha estado
 ah� fuera por mucho tiempo, sufriendo a veces de su edad y de un poco
 de inflexibilidad.

 El c�digo NIS de la librer�a NYS, por otro lado, requiere, una de dos,
 o que recompiles y re-enlaces todos tus programas a la librer�a
 libnsl, o que recompiles la librer�a libc para que incluya el c�digo
 libnsl (o tal vez puedas ir y obtener una versi�n precompilada de
 alguien que ya lo haya hecho).

 Otra diferencia es que el c�digo tradicional NIS tiene alg�n soporte
 para Netgroups NIS, cosa que el c�digo NYS no tiene (todav�a). Por
 otro lado, el c�digo NYS te permite manejar Shadow Passwords de una
 forma transparente.

 4.  C�mo trabaja

 En una red debe haber al menos una m�quina actuando como un servidor
 NIS.  Puedes tener m�ltiples servidores NIS, cada uno sirviendo a
 diferentes "dominios" NIS - o puedes tener servidores NIS
 cooperativos, donde uno es el llamado servidor NIS maestro, y todos
 los dem�s son los llamados servidores NIS esclavos (�para un "dominio"
 NIS determinado, eso es!) - o puedes tener una mezcla de ellos...

 Los servidores esclavos solo tienen copias de las bases de datos NIS y
 reciben estas copias del servidor NIS maestro cada vez que se realizan
 cambios a las bases de datos maestras. Dependiendo del n�mero de
 m�quinas que haya en tu red y de la seriedad de tu red, podr�as
 decidir si instalar uno o m�s servidores esclavos. Cada vez que un
 servidor NIS se cae o va muy lento respondiendo peticiones, un cliente
 NIS conectado a ese servidor intentar� encontrar otro que no est�
 ca�do o que vaya m�s r�pido.

 Las bases de datos NIS est�n en el formato DBM, que deriva de las
 bases de datos ASCII. Por ejemplo, los ficheros /etc/passwd y
 /etc/group pueden ser directamente convertidos a formato DBM usando
 software de translaci�n ASCII <--> DBM ("dbload", inclu�do con el
 software del servidor). El servidor NIS maestro deber�a tener ambas,
 las bases de datos ASCII y las DBM.

 Los servidores esclavos ser�n notificados de cualquier cambio en los
 mapas NIS, (v�a el programa "yppush"), y recibir�n autom�ticamente los
 cambios necesarios para sincronizar sus bases de datos. Los clientes
 NIS no necesitan hacer esto ya que �stos siempre hablan directamente
 con el servidor NIS para leer la informaci�n almacenada en sus bases
 de datos DBM.

 El autor de los clientes YP para Linux nos ha informado de que el
 ypbind m�s reciente (del paquete yp-clients.tar.gz) es capaz de
 obtener el servidor a partir de un fichero de configuraci�n --lo que
 quiere decir que no es necesario un broadcast (lo cual es inseguro,
 debido al hecho de que cualquiera podr�a instalar un servidor NIS y
 contestar a las peticiones de broadcast...).--

 5.  � Qu� necesitas para configurar NIS ?

 5.1.  El Mapeador de Puertos RPC

 Para ejecutar alg�n software de los mencionados m�s adelante
 necesitar�s ejecutar antes el programa /usr/sbin/rpc.portmap. Algunas
 distribuciones Linux ya tienen c�digo para arrancar �ste demonio en
 /etc/rc.d/rc.inet2.  Todo lo que tienes que hacer es "descomentar" ese
 c�digo y rearrancar tu m�quina Linux para activarlo.

 El mapeador RPC (portmap(8c)) es un servidor que convierte n�meros de
 programas RPC en n�meros de puerto de protocolo TCP/IP (o UDP/IP).
 Debe estar ejecut�ndose para poder realizar llamadas RPC (que es lo
 que el software de cliente NIS hace) a servidores RPC (como un
 servidor NIS) de esa m�quina. Cuando un servidor RPC arranca, avisar�
 al mapeador de puertos por cu�l puerto est� escuchando, y a qu�
 n�meros de programas RPC est� preparado para servir. Cuando un cliente
 desea hacer una llamada RPC a un n�mero de programa dado, primero
 deber� contactar con el mapeador de puertos de la m�quina servidora
 para determinar el n�mero de puerto al que los paquetes RPC deben ser
 enviados.

 Normalmente los servidores RPC est�ndar son arrancados por inetd(8c),
 de modo que el mapeador de puertos debe ser iniciado antes de que
 inetd sea invocado.

 5.2.  Determinar si eres Servidor, Esclavo o Cliente.

 Para contestar a esta cuesti�n debes considerar dos casos:

 1. Tu m�quina va a ser parte de una red en la que ya existen
    servidores NIS.

 2. Todav�a no tienes servidores NIS en la red.

 En el primer caso, s�lo necesitas los programas cliente (ypbind,
 ypwhich, ypcat, yppoll, ypmatch). El programa m�s importante es
 ypbind. Este programa debe estar ejecut�ndose en todos los casos, esto
 es, debe aparecer siempre en la lista de procesos. Es un proceso de
 los llamados demonio y necesita ser iniciado desde el fichero de
 arranque del sistema (ej. /etc/rc.local). Tan pronto como ypbind est�
 en marcha, tu sistema se convierte en un cliente NIS.

 En el segundo caso, si no tienes servidores NIS, entonces tambi�n
 necesitar�s un programa servidor NIS (normalmente llamado ypserv). La
 secci�n ``� Qu� necesitas para configurar NYS ?''  describe como
 configurar un servidor NIS en tu maquina Linux usando la
 implementaci�n del ypserv de Peter Eriksson (<[email protected]>).
 Nota que �sta implementaci�n NO soporta el concepto maestro-esclavo
 del que hemos hablado en la secci�n ``� NIS o NIS+ ?''.  Usando este
 software, todos tus servidores NIS ser�n servidores maestros. Hay otro
 servidor gratuito disponible, llamado "yps", escrito por Tobias Reber
 en Alemania que s� soporta el concepto maestro-esclavo, pero que tiene
 otras limitaciones.

 5.3.  El Software

 La librer�a del sistema "/usr/lib/libc.a" (version 4.4.2 y superiores)
 o la librer�a compartida "/usr/lib/libc.sa" y sus DLL relacionadas
 contienen todas las llamadas al sistema necesarias para compilar
 satisfactoriamente el software del cliente y del servidor NIS.

 Ha habido informes de gente diciendo que NIS s�lo funciona con las
 versiones 4.5.21 y superiores de "/usr/lib/libc.a" as� que si quieres
 ir a lo seguro, no uses libc's m�s antiguas. El software de cliente
 NIS puede obtenerse de:

        Servidor               Directorio                       Nombre de fichero

        ftp.uni-paderborn.de   /pcsoft2/linux/local/yp          yp-clients.tar.gz
        ftp.funet.fi           /pub/OS/Linux/BETA/NYS/clients   yp-clients.tar.gz
        ftp.lysator.liu.se     /pub/NYS/clients                 yp-clients.tar.gz
        sunsite.unc.edu        /pub/Linux/system/Network/admin  yp-clients.tar.gz

 Una vez hayas obtenido el software, por favor, sigue las instrucciones
 que vienen con �l.

 5.4.  Configurar un Cliente NIS usando NIS Tradicional

 Asumiendo que hayas compilado satisfactoriamente el software, ya
 estar�s preparado para instalarlo. Un lugar id�neo para el demonio
 ypbind es el directorio /usr/sbin.

 Por supuesto, para ello deber�s entrar como root. Los otros binarios
 (ypwhich, ypcat, yppoll, ypmatch) deben ir en un directorio accesible
 por todos los usuarios, /usr/etc o /usr/local/bin por ejemplo. Ser�a
 una buena idea probar el ypbind antes de incorporarlo en
 /etc/rc.d/rc.inet2.

 Para probar el ypbind haz lo siguiente:

 �  Aseg�rate de que tienes establecido ya tu nombre de dominio. Si no
    lo tienes ejecuta el comando:

                  /bin/domainname-yp nis.domain

 donde nis.domain debe ser alguna cadena de caracteres, que normalmente
 �_NO_ debe estar relacionada con el nombre de dominio de tu m�quina!
 La raz�n para esto es que hace un poco m�s dif�cil a crackers externos
 el obtener la base de datos de passwords de tus servidores NIS. Si no
 sabes cu�l es el nombre de dominio NIS de tu red, pregunta al admin�
 istrador de tu sistema/red.

 �  Arrancar "/usr/sbin/rpc.portmap" si no est� ya ejecut�ndose.

 �  Crear el directorio "/var/yp" si no existe.

 �  Iniciar "/usr/sbin/ypbind"

 �  Usar el comando "rpcinfo -p localhost" para comprobar si ypbind es
    capaz de registrar su servicio con el mapeador de puertos. El
    rpcinfo deber�a producir una salida parecida a:

             program vers proto   port
              100000    2   tcp    111  portmapper
              100000    2   udp    111  portmapper
              100007    2   udp    637  ypbind
              100007    2   tcp    639  ypbind
              300019    1   udp    660

 �  Podr�as tambi�n ejecutar "rpcinfo -u localhost ypbind". Este
    comando deber�a producir una salida similar a:

              program 100007 version 2 ready and waiting

 Finalmente, no olvides que para b�squedas de nodos debes establecer (o
 a�adir) "nis" a la entrada de orden de b�squedas en tu fichero
 /etc/host.conf. Por favor, lee la p�gina man "resolv+.8" para m�s
 detalles.

 En este punto, ya podr�as usar programas cliente NIS como ypcat,
 etc...  Por ejemplo, "ypcat passwd" te devolver� la base de datos NIS
 de los passwords completa.

 IMPORTANTE: Si te saltaste el procedimiento de prueba aseg�rate de que
 has establecido el nombre de dominio, y creado el directorio:

          /var/yp

 Este directorio DEBE existir para que ypbind pueda iniciarse
 satisfactoriamente.

 Si el test funcion�, puede que ahora quieras cambiar los ficheros
 /etc/rc.d/rc.M y /etc/rc.d/rc.inet2 en tu sistema para que ypbind se
 inicie durante el arranque y para que tu sistema act�e como un cliente
 NIS. Edita el fichero /etc/rc.d/rc.M y busca los comandos que
 establecen el nombre de dominio. Cambia el nombre de dominio por el
 nombre de tu dominio. Tambi�n, edita el fichero /etc/rc.d/rc.inet2,
 ``descomenta'' las l�neas que inician el demonio rpc.portmap, y a�ade
 las siguientes l�neas justo despu�s del lugar donde se arranca
 rpc.portmap:

          #
          # Arranca el demonio ypbind:
          #
          if [ -f ${NET}/ypbind -a -d /var/yp ]; then
              echo -n " ypbind"
              ${NET}/ypbind
          fi

 Al contrario que con la implementaci�n de Sun del NIS no necesitas
 editar los ficheros /etc/passwd y /etc/group para poder aprovechar
 NIS. La implementaci�n de Sun necesita una l�nea "+:*:0:0:::" en el
 /etc/passwd y una l�nea "+:*:0:" en el /etc/group para decirle a NIS
 que busque en las bases de datos NIS de los passwords y de los grupos.

 IMPORTANTE: Nota que el comando finger te informar� con mensajes "no
 such user" si no a�ades la l�nea "+:*:0:0:::" en /etc/passwd. Volver a
 poner la l�nea "+:*:0:0:::" en /etc/passwd arreglar� el finger.

 Bueno, esto es todo. Rearranca la m�quina y observa los mensajes de
 arranque para ver si ypbind efectivamente se ha iniciado.

 IMPORTANTE: Nota que la caracter�stica netgroup est� implementada
 empezando en la libc v4.5.26. Los netgroups permiten control de acceso
 para cada m�quina y para cada usuario en el dominio NIS, y requieren
 una entrada como �sta:

          +@this_machine_users

 en /etc/passwd. Pero si tienes una versi�n de libc anterior a la
 4.5.26, todos los usuarios de la base de datos NIS de passwords pueden
 acceder a tu m�quina Linux si ejecutas "ypbind".

 6.  � Qu� necesitas para configurar NYS ?

 6.1.  Determinar si eres un Servidor, Esclavo o Cliente.

 Para contestar esta cuesti�n debes considerar dos casos:

 �  Tu m�quina va a ser parte de una red en la que ya existen
    servidores NIS.

 �  Todav�a no tienes servidores NIS en la red.

 En el primer caso tienes dos opciones:

 �  O reenlazas todos los programas cliente y demonio con la librer�a
    NYS libnsl.so (o las enlazas est�ticamente con libnsl.a). Esto
    supone a�adir la l�nea:

                  LIBS=-lnsl

 a tu Makefile, que indica que quieres enlazar la Network Services
 Library. B�sicamente, todos los demonios de red y el programa "login"
 necesitan ser recompilados.

 �  O puedes recompilar la librer�a C est�ndar libc para que incluya
    las funciones de librer�a de los clientes NYS, y despu�s reenlazar
    todos los programas enlazados est�ticamente (los programas
    enlazados din�micamente tienen la nueva versi�n de libc
    autom�ticamente). Para m�s informaci�n sobre �sta opci�n, mira la
    secci�n``Haz usar NYS a tus binarios''  m�s abajo.

 De forma similar al caso del NIS tradicional, si no tienes servidores
 NIS, entonces tambi�n necesitar�s un programa servidor NIS
 (normalmente llamado ypserv) y tendr�s que designar una de las
 m�quinas de tu red como servidor NIS maestro. De nuevo, quiz�s quieras
 establecer al menos un servidor esclavo junto con el maestro.

 6.2.  El Software

 Necesitas obtener y compilar la librer�a libnsl.so de servicios NYS.
 Si no tienes las herramientas DLL instaladas puedes obtener una
 librer�a precompilada compartida, est�tica o en c�digo fuente del
 mismo servidor mencionado m�s abajo. Nota, de todos modos, que la
 versi�n precompilada puede ser (y probablemente es) m�s vieja que la
 �ltima edici�n del c�digo fuente.

 La librer�a NYS (en versi�n c�digo fuente y precompilada) puede ser
 obtenida de:

          Servidor            Directorio                     Nombre fichero

          ftp.lysator.liu.se  /pub/NYS/libs                  nys-0.27.4.tar.gz
          ftp.lysator.liu.se  /pub/NYS/binaries/lib          libnsl.so.1.0.a26

          ftp.funet.fi        /pub/OS/Linux/BETA/NYS/libs    nys-0.27.4.tar.gz
          ftp.funet.fi        /pub/OS/Linux/BETA/NYS/lib     libnsl.so.1.0.a26

 Versiones precompiladas de los programas "login" y "su" pueden ser
 obtenidos de:

          Servidor            Directorio                     Nombre fichero

          ftp.lysator.liu.se  /pub/NYS/binaries/bin          login
          ftp.lysator.liu.se  /pub/NYS/binaries/bin          su

          ftp.funet.fi        /pub/OS/Linux/BETA/NYS/bin     login
          ftp.funet.fi        /pub/OS/Linux/BETA/NYS/bin     su

 Similarmente, se pueden obtener ejemplos de ficheros de cofiguraci�n
 de:

     Servidor            Directorio                     Nombre fichero

     ftp.lysator.liu.se  /pub/NYS/binaries/etc          *conf
     ftp.funet.fi        /pub/OS/Linux/BETA/NYS/etc     *conf

 Para compilar la librer�a nsl, sigue las instrucciones que vienen con
 el software. Si deseas compilar la librer�a DLL compartida debes tener
 las herramientas DLL instaladas en su sitio (/usr/dll). Las
 herramientas DLL (el paquete tools-2.11.tar.gz o posterior) pueden ser
 obtenidas de los servidores habituales.

 6.3.  Configurar un Cliente NYS usando NYS

 A diferencia del NIS tradicional, no se necesita ninguna configuraci�n
 para un cliente NYS. Todo lo que se necesita, es que el fichero de
 configuraci�n NIS (/etc/yp.conf) apunte al servidor correcto para su
 informaci�n. Adem�s, el fichero de configuraci�n del Name Services
 Switch (/etc/nsswitch.conf) debe estar correctamente configurado.

 Por favor, refier�se a los ejemplos proporcionados con el c�digo
 fuente.

 6.4.  El Fichero nsswitch.conf

 El fichero de Network Services Switch /etc/nsswitch.conf determina el
 orden de las b�squedas realizadas cuando se pide una pieza espec�fica
 de informaci�n, de la misma forma que el fichero /etc/host.conf
 determina la manera en que se realizan las b�squedas de hosts.
 Insistimos, eche un vistazo al fichero proporcionado en la
 distribuci�n del c�digo fuente. Por ejemplo, la l�nea

          hosts: files nis dns

 especifica que las funciones de b�squeda de host deben primero mirar
 en el fichero /etc/hosts local, seguido de una b�squeda NIS y,
 finalmente, usar el DNS (/etc/resolv.conf y named). Si al llegar a
 este punto no se encuentra el host correspondiente se devuelve un
 error.

 6.5.  Haz usar NYS a tus binarios

 En vez de reenlazar cada binario con la librer�a NYS (libnsl.so), se
 ha conseguido una soluci�n m�s limpia proporcionando al usuario la
 posibilidad de compilar una libc que incluya NYS. Esto significa que
 todo lo que necesitas hacer es recompilar una nueva libc y sustituir
 la /lib/libc.so.x.y.z existente para que todos los programas (los
 compilados no-est�ticamente) utilicen NYS.

 Esta combinaci�n tambi�n te da la ventaja sobre la implementaci�n del
 NIS tradicional en la libc de linux, en que permite soporte
 transparente para shadow passwords (v�a el fichero
 /etc/nisswitch.conf).
 Sigue los sencillos pasos indicados m�s adelante para recompilar una
 libc que incluya NYS.

 �  Aseg�rate de que tienes las �ltimas herramientas DLL instaladas.
    Para m�s informaci�n acerca de d�nde conseguirlas l�ete el GCC-FAQ.

 �  Consigue los �ltimos fuentes de la libc. (de nuevo, mira el GCC-
    FAQ)

 �  Consigue los �ltimos fuentes del nys de:

                ftp.lysator.liu.se:/pub/NYS/libs

 y descompr�melos en el directorio de la libc-linux fuente.  Actual�
 mente la distribuci�n es la "nys-0.27.4.tar.gz".

 �  Ejecuta el ./configure y contesta "n" a la pregunta

                Values correct (y/n) [y] ?

 Luego sigue con las siguientes cuestiones y la �ltima pregunta ahora
 ser�

                Build a NYS libc from nys-0.27 (y default) ?

 contesta "y" a �sta.

 �  Luego ejecuta el comando

                % make

 La librer�a generada tras la compilaci�n se llamar� algo as� como

          libc.so.4.5.26

 y estar� bajo el directorio jump/libc-nys. Para instalar esta librer�a
 nuestro consejo ser�a copiarla a /lib con un nombre lexicogr�ficamente
 superior que el n�mero que actualmente tiene. Simplemente con a�adir
 la letra "a" lo podremos conseguir. Por ejemplo:

          % cp jump/libc-nys/libc.so.4.5.26 /lib/libc.so.4.5.26a

 Alternativamente, podr�amos a�adirle "nys" para poder identificarlo
 r�pidamente. Ahora ejecuta el siguiente comando

          % ldconfig

 que resetear� tu cach� para usar la nueva librer�a. La estrategia del
 enlazador din�mico puede ser examinada con el comando "ldconfig -p".

 B�sicamente esto es todo. Ahora todos tus programas deben poder
 utilizar NYS. Por favor, nota que usualmente el programa "login" est�
 compilado est�ticamente y que por lo tanto no puede acceder a las
 nuevas funciones NYS de la nueva libc. Deber�s recompilar "login" sin
 el par�metro -static, o enlazarlo est�ticamente a la librer�a
 libnsl.a.

 7.  Configurar un Servidor NIS

 7.1.  El Programa Servidor ypserv

 Este documento s�lo describe c�mo configurar el servidor NIS "ypserv".
 La configuraci�n del servidor "yps" es similar _pero_ no exactamente
 igual as� que �ten esto en cuenta si intentas aplicar estas
 instrucciones a "yps"!

 El software del Servidor NIS puede ser encontrado en:

          Servidor            Directorio                         Nombre fichero

          ftp.lysator.liu.se  /pub/NYS/servers                   ypserv-0.11.tar.gz
          ftp.funet.fi        /pub/OS/Linux/BETA/NYS/servers     ypserv-0.11.tar.gz
          mcsun.eu.net        /os/linux/BETA/NYS/servers         ypserv-0.11.tar.gz
          ftp.univie.ac.at    /unix/system/linux/funet/BETA/NYS/servers
                                                                 ypserv-0.11.tar.gz

 El setup del servidor es el mismo para NIS tradicional y para NYS.

 Compila el software para generar los programas "ypserv", "dbcat" y
 "dbload". Primeramente debes determinar qu� ficheros necesitas que
 est�n disponibles via NIS y despu�s a�ade o elimina las entradas
 apropiadas de ypMakefile. Luego instala el fichero ypMakefile en
 /var/yp con el nombre Makefile.

 Y ahora crea los ficheros DLL escribiendo:

          % cd /var/yp; make

 Cerci�rate de que el mapeador de puertos (rpc.portmap) est� en marcha,
 y arranca el servidor "ypserv". El comando

          % rpcinfo -u localhost ypserv

 deber�a dar una salida como

          program 100004 version 2 ready and waiting

 Ya est�, tu servidor ya est� en marcha.

 7.2.  El Programa yppasswdd

 Cada vez que los usuarios cambien sus passwords, la base de datos NIS
 y probablemente otras bases de datos que dependan de la base de datos
 NIS de los passwords deben ser actualizadas. El programa "yppasswdd"
 es un servidor que maneja cambios de password y que se asegura de que
 la informaci�n NIS ser� actualizada acordemente. El software para
 "yppasswdd" puede encontrarse en:

          Servidor                   Directorio                     Nombre fichero

          ftp.lysator.liu.se    /pub/NYS                        yppasswdd-0.5.tar.gz
          ftp.funet.fi          /pub/OS/Linux/BETA/NYS/servers  yppasswdd-0.5.tar.gz

 Una vez obtenido el software, sigue las instrucciones que vienen con
 �l.

 8.  Verificar la Instalaci�n NIS/NYS

 Si todo es correcto (como deber�a serlo), deber�as poder verificar tu
 instalaci�n con unos pocos comandos. Asumiendo, por ejemplo, que tu
 fichero passwd est� siendo soportado por NIS, el comando

     % ypcat passwd

 deber�a devolverte los contenidos de tu fichero NIS passwd. El comando

          % ypmatch userid passwd

 (donde userid es el nombre de login de un usuario arbitrario) deber�a
 devolver la entrada correspondiente a ese usuario en el fichero NIS
 passwd. Los programas "ypcat" e "ypmatch" deber�an venir incluidos con
 tu distribuci�n de NIS tradicional o de NYS.

 9.  Problemas Comunes y soluciones con NIS

 Aqu� van algunos problemas comunes seg�n los informes de varios
 usuarios:

 1. La versi�n 4.5.19 de libc no funciona. NIS no funcionar� con ellas.

 2. Si actualizas las librer�as de 4.5.19 a 4.5.24, el comando su
    dejar� de funcionar. Necesitas obtener el comando su de la
    distribuci�n 1.2.0 de Slackware. Tambi�n de ah� podr�s obtener las
    librer�as actualizadas.

 3. Puedes encontrar problemas con NIS y DNS en la misma m�quina.  Mi
    servidor DNS a veces pasa del NIS. Todav�a no he averiguado por
    qu�.

 4. Cuando un servidor NIS se cae y vuelve a levantarse ypbind arranca
    con mensajes como:

             yp_match: clnt_call:
                         RPC: Unable to receive; errno = Connection refused

 y los logins de aquellos que est�n registrados en la base de datos NIS
 son rechazados. Intenta entrar como root y si lo consigues, mata el
 ypbind y arr�ncalo de nuevo.

 10.  Preguntas Realizadas Frecuentemente

 La mayor�a de tus preguntas ya deber�an estar contestadas. Si todav�a
 tienes alguna pregunta sin contestar tal vez quieras enviar un mensaje
 a

          comp.os.linux.help

 o contactar con uno de los autores de este HOWTO.

 11.  Anexo: El INSFLUG

 El INSFLUG forma parte del grupo internacional Linux Documentation
 Project, encarg�ndose de las traducciones al castellano de los Howtos
 (Comos), as� como la producci�n de documentos originales en aquellos
 casos en los que no existe an�logo en ingl�s.

 En el INSFLUG se orienta preferentemente a la traducci�n de documentos
 breves, como los COMOs y PUFs (Preguntas de Uso Frecuente, las FAQs.
 :) ), etc.

 Dir�jase a la sede del INSFLUG para m�s informaci�n al respecto.

 En la sede del INSFLUG encontrar� siempre las �ltimas versiones de las
 traducciones:  www.insflug.org. Aseg�rese de comprobar cu�l es la
 �ltima versi�n disponible en el Insflug antes de bajar un documento de
 un servidor r�plica.

 Se proporciona tambi�n una lista de los servidores r�plica (mirror)
 del Insflug m�s cercanos a Vd., e informaci�n relativa a otros
 recursos en castellano.

 Francisco Jos� Montilla, [email protected].