Está en la página 1de 5

Practicas A.S.O./A.S.O.P.

- Boletn L08
NFS y NIS
Notas:
Esta practica se va a realizar por parejas de ordenadores, uno hara de cliente y el otro de servidor.
Recuerda que con la orden chkconfig se configura un demonio para que arranque en los niveles
oportunos. Usa las paginas de manual para recordar la opci
on a usar.

NFS
Para configurar NFS, Network File System ten en cuenta que:

En el servidor
El demonio rpcbind1 tiene que estar lanzado.
Por otro lado, los demonios rpc.mountd y rpc.nfsd haran que NFS funcione. Para lanzarlos
se usa el script /etc/init.d/nfs. Para cada cambio que se haga en el fichero de configuracion
habra que reiniciarlos.
Aseg
urate que para los niveles de arranque 3 y 5 se activan dichos demonios.
En el fichero /etc/exports se indican que directorios se exportan, a que equipos y bajo
que condiciones.
Para relanzar los demonios se puede usar una de las siguientes alternativas:
/usr/sbin/exportfs que sirve para tal funcion pero solo si los demonios ya est
an activos. Se pueden usar las opciones -a o -r
Otra opcion sera ejecutar /etc/init.d/nfs restart
Con /usr/sbin/exportfs -v comprobamos que ficheros se estan exportando y con que condiciones, para saber si se ha configurado de forma correcta.
Con /usr/sbin/showmount podemos ver que directorios se estan montando de forma remota.
En la Fedora Core 11, el usuario nfsnodoby esta creado con el identificador 4294967294. Sin
embargo, la aplicacion le asigna el identificador 65534. Cuando usemos el mapeo, el sistema
operativo no es capaz de traducir el usuario 65534 con su nombre correspondiente, porque no
existe.

En el cliente:
De nuevo, el demonio rpcbind tiene que estar lanzado. Aseg
urate que para los niveles de
arranque 3 y 5 se activa dicho demonio.
El montaje se puede hacer de dos formas:
Para que el montaje se haga cada vez que se reinicie el equipo, en el fichero /etc/fstab
hay que introducir el directorio de la maquina remota que se quiere montar y el punto de
montaje local. El tipo de sistema de fichero es nfs (3er campo del fichero). Las distintas
opciones de montaje vistas en clase se configuran en el 4o campo. Los dos u
ltimos campos
del fichero /etc/fstab tienen que ser puestos a 0.
Usando la orden mount para realizar un montaje solo temporal (al reiniciar el equipo el
montaje no se hara de nuevo). Las opciones de montaje se indican usando la opcion -o.
1

En sistemas donde a
un existe portmap, este demonio es el que tiene que estar lazado.

Ejercicios
Nota: Para que cada grupo trabaje tanto la importacion como la exportacion, cada grupo ha de
hacer una vez de servidor y otra de cliente. A
un as, es interesante que los ejercicios los hagais de
forma conjunta, debido a que en cada ejercicio se usan opciones distintas.
1. En ambos equipos aseg
urate que el firewall esta desactivado. Puedes usar las ordenes:
# /etc/init.d/iptables stop
# chkconfig iptables off

En un sistema real, tendramos que abrir los puertos usados por NFS, y no deshabilitar el firewall.
2. Se necesitan los paquetes: nfs-utils y nfs-utils-lib. Comprueba con rpm si estan, o no,
instalados.
3. Exportacion/Importacion del directorio /tmp:
3.1 En el servidor. Exporta el directorio /tmp en modo lectura y escritura, y realizando el
mapeo del usuario root del ordenador cliente al usuario nfsnobody en el servidor. (Al
importarlo, cuando el usuario root del ordenador cliente acceda a datos del equipo servidor
tiene que ser el usuario nfsnobody y no el root).
3.2 En el servidor. Comprueba con exporfs si la exportacion se realiza de forma correcta.
3.3 En el cliente. Monta a mano, va NFS, el directorio /tmp en el directorio /remoto tmp.
Indica las opciones de montaje que consideres necesarias teniendo en cuenta los permisos
concedidos en el servidor sobre dicho directorio y lo estudiado en clase.
3.4 En el cliente. Como administrador crea un fichero en el directorio importado, touch
nombre fichero, y comprueba que el usuario propietario es nfsnobody (y no root).
A continuacion, como un usuario normal (que no sea el root) crea otro fichero y observa
que en este caso no se hace el mapeo del usuario.
3.5 En el servidor. Comprueba con showmount que directorio se esta montando y desde
que equipo.
3.6 En el servidor. Crea un usuario local llamado usutemp con identificador de usuario 200.
Cambia la forma de exportar el directorio /tmp y mapea todos los usuarios de las maquinas
cliente a dicho usuario.
3.7 En el cliente. Prepara el fichero /etc/fstab para que se monte en cada arranque dicho
directorio automaticamente, de nuevo en /remoto tmp. A las opciones indicadas anteriormente a
nade la que establece que el proceso de montaje contin
ue en segundo plano en caso
de que el servidor no responda.
3.8 En el cliente. Desmonta el directorio /remoto tmp y vuelve a montarlo usando el fichero
/etc/fstab (recuerda mediante el formato corto de la orden mount).
Comprueba que la nueva condicion de mapeo fijada en el servidor se cumple. Crea dos
ficheros, uno usando el usuario root y otro con un usuario distinto. En ambos casos se ha
tenido que hacer el mapeo y el propietario de los ficheros es usutemp, a pesar de que en la
maquina cliente ese usuario no existe.
3.9 En el servidor. Comprueba con showmount que directorio se esta montando y desde
que equipo.
4. Exportacion/Importacion del directorio /usr/share/doc:
4.1 En el servidor. Exporta el subdirectorio /usr/share/doc, permitiendo que el root de la
maquina que lo importe pueda actuar como root en esa maquina y el acceso solo se pueda
realizar en modo de solo lectura.

4.2 En el servidor. Crea un fichero en el directorio /usr/share/doc llamado datos, con


el siguiente contenido: Si puedes leer esto estas accediendo como usuario root. Despues
cambia los permisos del fichero para que solo pueda ser ledo por el usuario root (chmod
600 /usr/share/doc/datos).
4.3 En el servidor. Comprueba con exporfs si la exportacion se realiza de forma correcta.
4.4 En el cliente. Realiza el montaje del directorio importado en /documentos remotos
usando la orden mount, con las opciones que consideres oportunas teniendo en cuenta las
opciones de exportacion establecidas.
4.5 En el cliente. Comprueba que el usuario root puede leer el fichero datos, pero que un
usuario normal no puede leerlo.
4.6 En el servidor. Comprueba con showmount que directorio se esta montando y desde
que equipo.
5. Tanto en el cliente como en el servidor, elimina las entradas creadas en los ficheros /etc/exports
y /etc/fstab, y ademas para los demonios lanzados, etc.

NIS
Notas:
Tanto en el servidor como en el cliente sera necesario habilitar NIS como modo de autenticacion,
para ello habra que ejecutar la orden system-config-authentication.
En el servidor, los paquetes ypserv, ypbind e yp-tools deben estar instalados. Por el contrario en el cliente solo se necesitan ypbind e yp-tools.

En el servidor
6. En ambos equipos aseg
urate que el firewall esta desactivado.
7. Crea un usuario para poder comprobar que las NIS han sido configuradas correctamente.
8. Habilita NIS como metodo de autenticacion con: system-config-authentication. Con
esta herramienta tambien es posible configurar las NIS, sin embargo nosotros lo vamos a configurar de forma manual, como vimos en clase.
9. Establece el dominio para NIS, llamandolo por ejemplo mi nis con la siguiente orden
nisdomainname mi nis.
Como nombre de dominio puedes poner el que quieras, pero debes recordar que ha de ser el
mismo en el cliente y en el servidor, y que no puede haber dos dominios NIS con el mismo
nombre en la red.
10. Si se quiere que el dominio se active al reiniciar la maquina, debemos editar /etc/sysconfig/network
y a
nadir (o modificar) la lnea:
NISDOMAIN=mi_nis

11. En el fichero de configuracion del NIS, /etc/yp.conf, hay que indicar el nombre del dominio
y el servidor. Esto se realiza a
nadiendo la lnea:
domain mi_nis server 155.54.225.X
ypserver 155.54.225.X

Siendo 155.54.225.X la direccion IP del servidor.


12. NIS usa internamente RPC (Remote Procedure Call) para hacer la comunicacion clienteservidor. Se necesita que el demonio rpcbind este activo, encargado de este mecanismo.
Activa, si no esta ya activo, el demonio rpcbind (/etc/init.d/rpcbind start) y configura el arranque para que se lance para los niveles oportunos.
3

13. El siguiente paso es arrancar el demonio ypserv y activarlo para que se lance en el arranque
para los niveles correspondientes.
14. Es el momento de crear las bases de datos que distribuye el servidor. Este paso hay que hacerlo
cada vez que cambien los datos, por ejemplo cuando se a
nade o modifica un usuario. Para crear
o actualizar las bases de datos:
cd /var/yp
make

15. Si se desea que los usuarios puedan cambiar su contrase


na se necesita tener en ejecucion el
demonio yppasswdd. Activa dicho demonio y haz que se lance para los niveles de arranque
oportunos.
16. Para comprobar que el servidor funciona correctamente, puedes hacer que el servidor sea cliente
de s mismo (lanzando el demonio ypbind) y ejecutar la orden ypcat passwd, que debe
mostrar un listado de los usuarios que son exportados utilizando las NIS.

En el cliente
14. En primer lugar habilita NIS como metodo de autenticacion con:
system-config-authentication.
15. Configura el dominio NIS con el mismo nombre especificado en el servidor con nisdomainname
y a
nade o modifica la variable NISDOMAIN en el fichero /etc/sysconfig/network.
16. Indica en el fichero de configuracion /etc/yp.conf el nombre del dominio y la direccion IP
del servidor. As, si 155.54.225.X es la direccion del servidor, tendremos que indicar:
domain mi_nis server 155.54.225.X

17. Lanza los demonios rpcbind y ypbind, y configura el sistema para que en tiempo de arranque
se lancen de forma correcta y para los niveles oportunos.
18. Comprueba, utilizando ypcat passwd, que el servidor nos acepta como cliente.
19. Es el momento de comprobar si todo ha sido realizado de forma correcta. Para ello, intenta
entrar en el ordenador cliente con el usuario creado en el servidor.
19.1 En que directorio HOME entra?
19.2 Que habra que hacer para que pudiese utilizar su directorio HOME?
19.3 Si localmente hay definido otro usuario con el mismo UID, son usuarios distintos o el
mismo? a que usuario pertenecen los ficheros?
20. Cambia la contrase
na del usuario usando para ello la orden yppasswd.

De nuevo en el servidor
20. Prueba a crear un nuevo usuario en el servidor pero no actualices las bases de datos de las NIS.
A continuacion intenta entrar en el cliente con ese usuario.
21. Actualiza las bases de datos del servidor. Comprueba que ahora s es posible entrar en el cliente
con ese usuario.

Seguridad
El principal metodo para especificar la seguridad a traves de NIS es indicar la red o los ordenadores
que tienen permiso para acceder al dominio NIS en el fichero /var/yp/securenets.
Si dicho fichero esta vaco o no existe, cualquier ordenador que conozca el nombre del dominio NIS
y la direccion IP del servidor podra conectarse al dominio. Por el contrario si se especifica una red o
bien un listado de ordenadores concretos, solo esos ordenadores podran acceder al dominio NIS.
Un ejemplo del contenido de dicho fichero sera:
# Permitir conexi
on al host local
host 127.0.0.1
#
# Permitir conexiones a la subred 192.168.8.0
255.255.255.0 192.168.8.0
#
# Permitir al host 155.54.225.3
host 155.54.225.3

22. Configura el dominio NIS para que solo el servidor pueda conectarse al dominio. Reinicia el
demonio del servidor.
23. En el cliente, comprueba si las peticiones que a partir de ese momento realiza son denegadas.

Para finalizar
24. Tanto en el cliente como en el servidor, elimina las entradas creadas en los ficheros /etc/yp.conf,
/etc/sysconfig/network y /var/yp/securenets, para los demonios lanzados, etc.

También podría gustarte