  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

  Configuracin y detalles de NIS(YP), NIS+ y NYS (Yellow Pages), sis
  temas de autentificacin distribuda.
  ______________________________________________________________________

  ndice General:

  1.      Glosario

  1.1.    Algo de Informacin General

  2.      Introduccin

  2.1.    Nuevas Versiones de Este Documento (En ingls)

  2.2.    Nota de Renuncia

  2.3.    FeedBack

  2.4.    Agradecimientos

  3.       NIS o NIS+ ?

  3.1.     NIS tradicional o la librera NYS ?

  4.      Cmo 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 Instalacin 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 acrnimos. Aqu se listan los
  ms importantes junto a una breve explicacin:

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

     DLL
        Dynamically Linked Library, una librera enlazada a un programa
        ejecutable en tiempo de ejecucin.

     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 mquina) DNS de la(s) mquina(s).

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

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

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

     NIS
        Network Information Service, un servicio que proporciona
        informacin, que tiene que ser conocida por toda la red, a todas
        las mquinas de la red. Hay soporte para NIS en la librera
        estndar 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 diseado 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 <pen@lysator.liu.se>.
        Contiene, entre otras cosas, una completa reimplementacin del
        cdigo del NIS (=YP) usando la funcionalidad del Name Services
        Switch de la librera NYS.

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

     YP Yellow Pages(tm), Pginas Amarillas en Ingls, es una marca
        registrada en el Reino Unido por la British Telecom plc. (la
        telefnica inglesa, vamos).

     TCP-IP
        Transmission Control Protocol/Internet Protocol. Es un protocolo
        de comunicacin de datos usado a menudo en mquinas Unix.

  1.1.  Algo de Informacin General

  Las siguientes lneas estn 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 propsito es proveer
  informacin, que tiene que ser conocida a lo largo de la red, a todas
  las mquinas de la red. La informacin ms indicada para ser
  distribuida por NIS es:

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

    informacin de grupos (/etc/group)

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

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

  2.  Introduccin

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

  Este documento intenta responder cuestiones sobre la configuracin de
  NIS(YP) en tu mquina Linux. No habla sobre cmo configurar NIS+. No
  olvides leer la seccin ``''

  2.1.  Nuevas Versiones de Este Documento (En ingls)

  Nuevas versiones de este documento sern enviadas peridicamente
  (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, lete todos los ficheros README adjuntos a cualquiera de los
  varios paquetes de software descritos en este documento para obtener
  una informacin ms detallada y precisa. Nosotros intentaremos
  mantener este documento tan libre de errores como sea posible.

  2.3.  FeedBack

  Si tienes algn comentario, preguntas o sugerencias, por favor,
  envimelas por e-mail a Erwin Embsen <erwin@nioz.nl>. Y si encuentras
  errores u omisiones obvias, definitivamente debes contactar con l (--
  Aunque me temo que no sabe castellano, as que cuntale lo que sea en
  ingls...--) .

  2.4.  Agradecimientos

  Nos gustara agradecer a toda la gente que ha contribuido (directa o
  indirectamente) a la realizacin de este documento. En orden
  alfabtico:

       Andrea Dell'Amico <adellam@di.unipi.it>
       Mitchum DSouza    <Mitch.Dsouza@Dubai.Sun.COM>
       Erwin Embsen      <erwin@nioz.nl>
       Byron A Jeff      <byron@cc.gatech.edu>
       Peter Eriksson    <pen@lysator.liu.se>

  Theo de Raadt <deraadt@fsa.ca> es responsable del cdigo original de
  los yp-clients. Swen Thuemmler <swen@uni-paderborn.de> port el cdigo
  de los yp-clients y de las yp-routines en la libc (de nuevo, basndose
  en el trabajo de Theo).

  3.   NIS o NIS+ ?

  La eleccin entre NIS y NIS+ es fcil - usa NIS si no tienes que usar
  NIS+ o si no tienes severas necesidades de seguridad. NIS+ es mucho
  ms problemtico de administrar (es bastante fcil de manejar la parte
  del cliente, pero la parte del servidor es horrible). Otro problema es
  que el soporte para NIS+ bajo Linux est todava en desarrollo --una
  cosa importante de la que todava carece es del soporte para
  encriptacin y autentificacin de datos que es _la_ principal razn
  por la que alguien querra usar NIS+...--

  3.1.   NIS tradicional o la librera NYS ?

  La eleccin entre el NIS tradicional o el cdigo NIS de la librera
  NYS es una eleccin entre vagancia y madurez vs. flexibilidad y deseos
  de aventura.

  El cdigo "NIS tradicional" est en la librera C estndar y ha estado
  ah fuera por mucho tiempo, sufriendo a veces de su edad y de un poco
  de inflexibilidad.

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

  Otra diferencia es que el cdigo tradicional NIS tiene algn soporte
  para Netgroups NIS, cosa que el cdigo NYS no tiene (todava). Por
  otro lado, el cdigo NYS te permite manejar Shadow Passwords de una
  forma transparente.

  4.  Cmo trabaja

  En una red debe haber al menos una mquina actuando como un servidor
  NIS.  Puedes tener mltiples 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 dems 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 nmero de
  mquinas que haya en tu red y de la seriedad de tu red, podras
  decidir si instalar uno o ms 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
  cado o que vaya ms rpido.

  Las bases de datos NIS estn 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 translacin ASCII <--> DBM ("dbload", includo con el
  software del servidor). El servidor NIS maestro debera tener ambas,
  las bases de datos ASCII y las DBM.

  Los servidores esclavos sern notificados de cualquier cambio en los
  mapas NIS, (va el programa "yppush"), y recibirn automticamente 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 informacin almacenada en sus bases
  de datos DBM.

  El autor de los clientes YP para Linux nos ha informado de que el
  ypbind ms reciente (del paquete yp-clients.tar.gz) es capaz de
  obtener el servidor a partir de un fichero de configuracin --lo que
  quiere decir que no es necesario un broadcast (lo cual es inseguro,
  debido al hecho de que cualquiera podra 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 algn software de los mencionados ms adelante
  necesitars ejecutar antes el programa /usr/sbin/rpc.portmap. Algunas
  distribuciones Linux ya tienen cdigo para arrancar ste demonio en
  /etc/rc.d/rc.inet2.  Todo lo que tienes que hacer es "descomentar" ese
  cdigo y rearrancar tu mquina Linux para activarlo.

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

  Normalmente los servidores RPC estndar 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 cuestin debes considerar dos casos:

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

  2. Todava no tienes servidores NIS en la red.

  En el primer caso, slo necesitas los programas cliente (ypbind,
  ypwhich, ypcat, yppoll, ypmatch). El programa ms importante es
  ypbind. Este programa debe estar ejecutndose 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 tambin
  necesitars un programa servidor NIS (normalmente llamado ypserv). La
  seccin `` Qu necesitas para configurar NYS ?''  describe como
  configurar un servidor NIS en tu maquina Linux usando la
  implementacin del ypserv de Peter Eriksson (<pen@lysator.liu.se>).
  Nota que sta implementacin NO soporta el concepto maestro-esclavo
  del que hemos hablado en la seccin `` NIS o NIS+ ?''.  Usando este
  software, todos tus servidores NIS sern 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 librera del sistema "/usr/lib/libc.a" (version 4.4.2 y superiores)
  o la librera 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 slo 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 ms 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
  estars preparado para instalarlo. Un lugar idneo para el demonio
  ypbind es el directorio /usr/sbin.

  Por supuesto, para ello debers 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. Sera
  una buena idea probar el ypbind antes de incorporarlo en
  /etc/rc.d/rc.inet2.

  Para probar el ypbind haz lo siguiente:

    Asegrate 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 mquina!
  La razn para esto es que hace un poco ms difcil a crackers externos
  el obtener la base de datos de passwords de tus servidores NIS. Si no
  sabes cul 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 ejecutndose.

    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 debera 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

    Podras tambin ejecutar "rpcinfo -u localhost ypbind". Este
     comando debera producir una salida similar a:

               program 100007 version 2 ready and waiting

  Finalmente, no olvides que para bsquedas de nodos debes establecer (o
  aadir) "nis" a la entrada de orden de bsquedas en tu fichero
  /etc/host.conf. Por favor, lee la pgina man "resolv+.8" para ms
  detalles.

  En este punto, ya podras 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 asegrate 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 acte 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. Tambin, edita el fichero /etc/rc.d/rc.inet2,
  ``descomenta'' las lneas que inician el demonio rpc.portmap, y aade
  las siguientes lneas justo despus 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 implementacin de Sun del NIS no necesitas
  editar los ficheros /etc/passwd y /etc/group para poder aprovechar
  NIS. La implementacin de Sun necesita una lnea "+:*:0:0:::" en el
  /etc/passwd y una lnea "+:*: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 aades la lnea "+:*:0:0:::" en /etc/passwd. Volver a
  poner la lnea "+:*:0:0:::" en /etc/passwd arreglar el finger.

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

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

           +@this_machine_users

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

  6.   Qu necesitas para configurar NYS ?

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

  Para contestar esta cuestin debes considerar dos casos:

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

    Todava no tienes servidores NIS en la red.

  En el primer caso tienes dos opciones:

    O reenlazas todos los programas cliente y demonio con la librera
     NYS libnsl.so (o las enlazas estticamente con libnsl.a). Esto
     supone aadir la lnea:

                   LIBS=-lnsl

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

    O puedes recompilar la librera C estndar libc para que incluya
     las funciones de librera de los clientes NYS, y despus reenlazar
     todos los programas enlazados estticamente (los programas
     enlazados dinmicamente tienen la nueva versin de libc
     automticamente). Para ms informacin sobre sta opcin, mira la
     seccin``Haz usar NYS a tus binarios''  ms abajo.

  De forma similar al caso del NIS tradicional, si no tienes servidores
  NIS, entonces tambin necesitars un programa servidor NIS
  (normalmente llamado ypserv) y tendrs que designar una de las
  mquinas de tu red como servidor NIS maestro. De nuevo, quizs quieras
  establecer al menos un servidor esclavo junto con el maestro.

  6.2.  El Software

  Necesitas obtener y compilar la librera libnsl.so de servicios NYS.
  Si no tienes las herramientas DLL instaladas puedes obtener una
  librera precompilada compartida, esttica o en cdigo fuente del
  mismo servidor mencionado ms abajo. Nota, de todos modos, que la
  versin precompilada puede ser (y probablemente es) ms vieja que la
  ltima edicin del cdigo fuente.

  La librera NYS (en versin cdigo 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 cofiguracin
  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 librera nsl, sigue las instrucciones que vienen con
  el software. Si deseas compilar la librera 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 configuracin
  para un cliente NYS. Todo lo que se necesita, es que el fichero de
  configuracin NIS (/etc/yp.conf) apunte al servidor correcto para su
  informacin. Adems, el fichero de configuracin del Name Services
  Switch (/etc/nsswitch.conf) debe estar correctamente configurado.

  Por favor, refierse a los ejemplos proporcionados con el cdigo
  fuente.

  6.4.  El Fichero nsswitch.conf

  El fichero de Network Services Switch /etc/nsswitch.conf determina el
  orden de las bsquedas realizadas cuando se pide una pieza especfica
  de informacin, de la misma forma que el fichero /etc/host.conf
  determina la manera en que se realizan las bsquedas de hosts.
  Insistimos, eche un vistazo al fichero proporcionado en la
  distribucin del cdigo fuente. Por ejemplo, la lnea

           hosts: files nis dns

  especifica que las funciones de bsqueda de host deben primero mirar
  en el fichero /etc/hosts local, seguido de una bsqueda 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 librera NYS (libnsl.so), se
  ha conseguido una solucin ms 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-estticamente) utilicen NYS.

  Esta combinacin tambin te da la ventaja sobre la implementacin del
  NIS tradicional en la libc de linux, en que permite soporte
  transparente para shadow passwords (va el fichero
  /etc/nisswitch.conf).
  Sigue los sencillos pasos indicados ms adelante para recompilar una
  libc que incluya NYS.

    Asegrate de que tienes las ltimas herramientas DLL instaladas.
     Para ms informacin acerca de dnde conseguirlas lete 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 descomprmelos en el directorio de la libc-linux fuente.  Actual
  mente la distribucin 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 librera generada tras la compilacin se llamar algo as como

           libc.so.4.5.26

  y estar bajo el directorio jump/libc-nys. Para instalar esta librera
  nuestro consejo sera copiarla a /lib con un nombre lexicogrficamente
  superior que el nmero que actualmente tiene. Simplemente con aadir
  la letra "a" lo podremos conseguir. Por ejemplo:

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

  Alternativamente, podramos aadirle "nys" para poder identificarlo
  rpidamente. Ahora ejecuta el siguiente comando

           % ldconfig

  que resetear tu cach para usar la nueva librera. La estrategia del
  enlazador dinmico puede ser examinada con el comando "ldconfig -p".

  Bsicamente esto es todo. Ahora todos tus programas deben poder
  utilizar NYS. Por favor, nota que usualmente el programa "login" est
  compilado estticamente y que por lo tanto no puede acceder a las
  nuevas funciones NYS de la nueva libc. Debers recompilar "login" sin
  el parmetro -static, o enlazarlo estticamente a la librera
  libnsl.a.

  7.  Configurar un Servidor NIS

  7.1.  El Programa Servidor ypserv

  Este documento slo describe cmo configurar el servidor NIS "ypserv".
  La configuracin 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
  estn disponibles via NIS y despus aade 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

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

           % rpcinfo -u localhost ypserv

  debera 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 informacin 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 Instalacin NIS/NYS

  Si todo es correcto (como debera serlo), deberas poder verificar tu
  instalacin con unos pocos comandos. Asumiendo, por ejemplo, que tu
  fichero passwd est siendo soportado por NIS, el comando

      % ypcat passwd

  debera devolverte los contenidos de tu fichero NIS passwd. El comando

           % ypmatch userid passwd

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

  9.  Problemas Comunes y soluciones con NIS

  Aqu van algunos problemas comunes segn los informes de varios
  usuarios:

  1. La versin 4.5.19 de libc no funciona. NIS no funcionar con ellas.

  2. Si actualizas las libreras de 4.5.19 a 4.5.24, el comando su
     dejar de funcionar. Necesitas obtener el comando su de la
     distribucin 1.2.0 de Slackware. Tambin de ah podrs obtener las
     libreras actualizadas.

  3. Puedes encontrar problemas con NIS y DNS en la misma mquina.  Mi
     servidor DNS a veces pasa del NIS. Todava 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 estn registrados en la base de datos NIS
  son rechazados. Intenta entrar como root y si lo consigues, mata el
  ypbind y arrncalo de nuevo.

  10.  Preguntas Realizadas Frecuentemente

  La mayora de tus preguntas ya deberan estar contestadas. Si todava
  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, encargndose de las traducciones al castellano de los Howtos
  (Comos), as como la produccin de documentos originales en aquellos
  casos en los que no existe anlogo en ingls.

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

  Dirjase a la sede del INSFLUG para ms informacin al respecto.

  En la sede del INSFLUG encontrar siempre las ltimas versiones de las
  traducciones:  www.insflug.org. Asegrese de comprobar cul es la
  ltima versin disponible en el Insflug antes de bajar un documento de
  un servidor rplica.

  Se proporciona tambin una lista de los servidores rplica (mirror)
  del Insflug ms cercanos a Vd., e informacin relativa a otros
  recursos en castellano.

  Francisco Jos Montilla, pacopepe@insflug.org.

