Network Information Service (NIS)
SERVIDOR IP: 192.168.1.6
EQUIPO CLIENTE: 192.168.1.8
INSTALACIÓN
La instalación de Network Information Service se puede realizar desde la misma terminal de Linux.
apt update
apt upgrade
apt install nis
NIS funcionara como cliente o servidor, dependiendo de la configuración que se realice.
CONFIGURACIÓN
Para convertir NIS en un servidor se debe editar el archivo /etc/defaults/nis.
nvim /etc/defaults/nis
Dentro del mismo se debe definir a NISSERVER como master.
# Are we a NIS server and if so what kind (values: false, slave, master)?
NISSERVER=master
RED
Definir las redes que tendrán acceso al NIS (Yellow Pages)
nvim /etc/ypserv.securenets
Para este ejemplo utilizare la red 192.168.1.0/24.
# This lines gives access to everybody. PLEASE ADJUST!
255.255.255.0 192.168.1.0
Al definir la red con la cual se trabajara, ninguna maquina fuera de esta red tendrá acceso.
DOMINIO NIS
Asignar dominio NIS. En este ejemplo utilizare ema.local.
nvim /etc/defaultdomain
Este archivo es probable que no exista, por lo tanto se debe crear.
ema.local
~
~
Finalizada las configuraciones es necesario reiniciar los servicios y habilitarlos para que inicien de forma automática con el sistema.
systemctl restart rpcbind ypserv yppasswdd ypxfrd
systemctl enable rpcbind ypserv yppasswdd ypxfrd
MAKEFILE
Definir los servicios que se van a exportar. Para eso se debe editar nvim /var/yp/Makefile
nvim /var/yp/Makefile
Como en los inicio de los sistemas Linux las claves venían en el archivo passwd y ahora se encuentran en el archivo shadow. Este mismo archivo se debe definir.
ALL = passwd group hosts rpc services netid protocols netgrp
#ALL += publickey mail ethers bootparams printcap
#ALL += amd.home auto.master auto.home auto.local
#ALL += timezone locale networks netmasks
En la primera linea se debe agregar shadow.
ALL = passwd shadow group hosts rpc services netid protocols netgrp
#ALL += publickey mail ethers bootparams printcap
#ALL += amd.home auto.master auto.home auto.local
#ALL += timezone locale networks netmasks
INICIAR SERVICIO
Para iniciar el servicio de Yellow Pages ejecutar el binario ypinit.
/usr/lib/yp/ypinit -m
El HOST que se coloca como servidor maestro es el mismo equipo y su HOSTNAME es servdior.
Por lo tanto solo se debe presionar <\Control> D.
Finalizado este paso, el servicio se encuentra funcionando.
CLIENTE
Dentro del equipo cliente se debe instalar el servicio de NIS.
apt update
apt upgrade
apt install nis
Luego de la instalación se le debe decir al equipo cliente donde esta el SERVIDOR NIS.
Editar el archivo /etc/hosts.
nvim /etc/hosts
DOMINIO
Este cliente pertenece al dominio ema.local y el servidor que se encarga de administrar este dominio es servidor.
nvim /etc/yp.conf
Agregar:
# ypserver ypserver.network.com
domain ema.local server servidor
SERVICIOS
Servicio de los clientes que vendrán por medio del NIS
nvim /etc/nsswitch.conf
Para este ejemplo solo traere los siguientes servicios:
passwd: files systemd nis
group: files systemd nis
shadow: files nis
hosts: files dns nis
HOSTS
Agregar el dominio ema.local
nvim /etc/defaultdomain
Para finalizar se debe reniciar y habilitar los servicios.
systemctl restart rpcbind nscd ypbind
systemctl enable rpcbind nscd ypbind
GESTION DE USUARIOS
Crear Usuario:
useradd ema -d /opt/user/ema
passwd ema
Luego de la creacion del usuario es necesario que se vuelva a utilizar el MAKE.
Para eso hay que dirigirse al directorio /var/yp/.
cd /var/yp/
make
Esto realizara las siguientes actualizaciones:
root@servidor:/var/yp# make
gmake[1]: se entra en el directorio '/var/yp/ema.local'
Updating passwd.byname...
Updating passwd.byuid...
Updating shadow.byname...
Updating group.byname...
Updating group.bygid...
Updating netid.byname...
gmake[1]: se sale del directorio '/var/yp/ema.local'
Realizar el primer login.
Como se observa en la imagen no se encuentra el directorio HOME del usuario ema, ya que el mismo se encuentra dentro del SERVIDOR NIS y no en la maquina cliente. Una solución que se puede encontrar a esto, es utilizar NFS y exportar todo el HOME del usuario a toda la red.
INSTALACION NFS
SERVIDOR
Instalación de NFS-SERVER
apt install nfs-server
Editar el archivo exports.
nvim /etc/exports
dentro del mismo archivo se debe agregar el directorio que se compartirá con toda la red y los permisos:
Exportar los directorios:
exportfs -a
exportfs -v
CLIENTE
Instalar NFS-COMMON
apt install nfs-common
Antes de comenzar con la configuración verifico el estado del servicio de NFS. En mi caso se encuentra inactivo por algun error.
Solucion:
rm /lib/systemd/system/nfs-common.service
systemctl disable nfs-common
systemctl start nfs-common
systemctl enable nfs-common
nvim /etc/fstab
Dentro del archivo se debe agregar la siguiente linea:
192.168.1.6:/opt/user /opt/user nfs defaults 0 2
Luego para montar el directorio remoto:
mount -a
LOGIN
ahora en el nuevo login se puede ver como el usuario ema tiene su directorio HOME.