Una de las aplicaciones m�s importantes de NIS es sincronizar la informaci�n del
usuario y de su cuenta en todos los nodos de un dominio NIS. Por consiguiente,
normalmente usted s�lo mantendr� un fichero /etc/passwd
peque�o, al cual se a�ade la informaci�n global de los mapas NIS. Sin embargo,
no es suficiente con habilitar las b�squedas NIS para este servicio en el
fichero nsswitch.conf.
Antes de fiarse de la informaci�n de contrase�as distribuida por NIS, debe
asegurarse de que todos los n�meros ID de usuario que haya en el fichero local
passwd concuerdan con los del servidor NIS. La consistencia
de los IDs tambi�n es importante para otros prop�sitos, como montar particiones
NFS desde otros nodos de su red.
Si alguno de los IDs num�ricos de /etc/passwd o
group difiere de los de los mapas, debe ajustar el due�o de
todos los ficheros que pertenezcan a ese usuario. Primero, debe cambiar todos
los uids y gids de passwd y group a
los nuevos valores, luego mirar que todos los ficheros que pertenecen a los
usuarios han cambiado, y cambiar su due�o. Suponga que
news ten�a un ID de usuario de 9 y que
okir ten�a un ID de usuario de 103, y que
fueron cambiados a otro valor; luego puede
ejecutar las siguientes �rdenes como root:
# find / -uid 9 -print >/tmp/uid.9
# find / -uid 103 -print >/tmp/uid.103
# cat /tmp/uid.9 | xargs chown news
# cat /tmp/uid.103 | xargs chown okir |
Es importante que ejecute estas ordenes con el nuevo fichero
passwd instalado, y que re�na todos los ficheros antes de
cambiar el due�o de alguno de ellos. Para actualizar los grupos due�os de los
ficheros, utilice un m�todo similar con gid en vez de uid y chgrp en vez de
chown.
Una vez que haya hecho esto, los uids y gids de su sistema concordar�n con los
de todos los nodos de su dominio NIS. El siguiente paso ser� a�adir a
nsswitch.conf las l�neas de configuraci�n que habilitan la
b�squeda NIS de la informaci�n de usuario y grupo:
# /etc/nsswitch.conf - tratamiento de passwd y group
passwd: nis files
group: nis files |
Esto afecta a qu� lugar buscar�n la informaci�n de usuario la orden
login y todos sus amigos. Cuando un usuario intente registrarse
en el sistema, login consultar� primero los mapas NIS, y si
esta b�squeda falla, recurrir� a los ficheros locales. Normalmente, usted
eliminar� a casi todos los usuarios de sus ficheros locales, y s�lo dejar� las
entradas de root y otras cuentas
gen�ricas como mail. Eso es porque
algunas tareas vitales del sistema pueden requerir resolver uids a partir de
nombres de usuario o viceversa. Por ejemplo, los trabajos administrativos de
cron pueden utilizar la orden su para
convertirse temporalmente en el usuario
news, o el subsistema UUCP puede tener
que enviar un informe de estado por correo. Si
news y
uucp no tienen entradas en el fichero
local passwd, estos trabajos fallar�n estrepitosamente
durante una ca�da del servicio NIS.
Finalmente, si usted est� usando la implementaci�n de NIS antigua (soportada por
el modo compat para los ficheros
passwd y group en las implementaciones
de NYS o glibc), debe insertar las pesadas entradas especiales dentro de ellos.
Estas entradas determinan d�nde se insertar�n los registros derivados NIS dentro
de la base de datos. Las entradas pueden a�adirse en cualquier lugar, pero
normalmente se a�aden al final. Las entradas que hay que a�adir en el fichero
/etc/passwd son:
y las del fichero
/etc/groups:
Con la glibc 2.x y NYS se puede ignorar los par�metros del registro de un
usuario recibido desde el servidor NIS creando entradas con un “+”
antes del nombre de ingreso, y excluir usuarios espec�ficos creando entradas con
un “-” antes del nombre de ingreso.
Por ejemplo, las entradas:
+stuart::::::/bin/jacl
-jedd:::::: |
ignorar�an el int�rprete de �rdenes proporcionado por el servidor NIS para el usuario
stuart, y no permitir�an al usuario
jedd ingresar en esta m�quina. En los
campos que se dejan vac�os se utiliza la informaci�n proporcionada por el
servidor NIS.
Existen dos inconvenientes aqu�. Primero, la configuraci�n descrita arriba s�lo
funciona en los sistemas de ingreso que no utilizan contrase�as ocultas (shadow
passwords). Los misterios de usar contrase�as ocultas con NIS se discutir�n en
la siguiente secci�n. Segundo, las �rdenes de ingreso no son las �nicos que
acceden al fichero passwd—f�jese en la orden
ls, que casi todo el mundo utiliza constantemente. Al hacer
listados largos, el comando ls muestra los nombres simb�licos
de los usuarios y los grupos due�os de un archivo; esto es, para cada uid y gid
que se encuentra, tiene que consultar al servidor NIS. Una consulta NIS tarda
algo m�s que la b�squeda equivalente en un fichero local. Puede encontrarse con
que al compartir la informaci�n de passwd y
group mediante NIS se produce una reducci�n significativa
del rendimiento de algunos programas que utilizan esta informaci�n de manera
frecuente.
Y esto no es toda la historia. Imagine qu� ocurrir�a si una usuaria quiere
cambiar su contrase�a. Normalmente invocar� la orden
passwd, que lee la nueva contrase�a y actualiza el fichero
local passwd. Esto es imposible con NIS, ya que ese fichero
ya no est� disponible localmente, pero hacer que los usuarios tengan que
ingresar en el servidor NIS cada vez que quieran cambiar su contrase�a tampoco
es una opci�n. Es por esto que NIS proporciona un sustituto para
passwd llamado ypasswd, que maneja los
cambios de contrase�a bajo NIS. Para cambiar la contrase�a en el nodo servidor,
contacta con el demonio yppasswdd de ese nodo mediante RPC, y
le proporciona la informaci�n de la contrase�a actualizada. Normalmente se
instala yppasswd sobre el programa normal haciendo algo as�:
# cd /bin
# mv passwd passwd.old
# ln yppasswd passwd |
Al mismo tiempo, debe instalar rpc.yppasswdd en el servidor y
lanzarlo desde un script de red. Esto ocultar� de manera efectiva las
viscisitudes de NIS a sus usuarios.