Nfsnis

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Nfsnis - Presentation Transcript

    1. NFS / NIS / DHCP Miguel Ángel Nieto <miguelangel@irontec.com> Irontec – Internet y Sistemas sobre GNU/Linux
    2. Irontec – NFS y NIS Introducción NFS NFS son las siglas de Network File System  Nos permite compartir carpetas y ficheros entre  distintos sistemas operativos a través de la red De esta forma, accedemos a carpetas remotas como si en realidad fuesen locales, de forma transparente Fué desarrollado en 1984 por Sun  Microsystems. 2
    3. Irontec – NFS y NIS Introducción NFS ● Sigue la estructura cliente/servidor ● El servidor comparte unos datos que los clientes acceden desde sus estaciones de trabajo ● Es posible compartir carpetas, dispositivos físicos (cd-rom, disquetera, usb stick) ya que en Unix, todo son carpetas :) ● Existen tres versiones de NFS, v2, v3 y v4 ● La última v4 tiene, entre otras cosas, soporte kerberos y ACLs http://www.nfsv4.org/ 3
    4. Irontec – NFS y NIS NFS ● Debian viene con el cliente NFS por defecto (nfs- common) Si no fuese así, será necesario instalaro ● Si queremos instalar un servidor NFS, este se encuentra en el paquete nfs-kernel-server ● Aún así, un equipo puede actuar tanto como servidor como cliente 4
    5. Irontec – NFS y NIS NFS ● El primer paso será instalar nfs-kernel-server ● Una vez hecho, podemos parar y arrancar el servicio mediante el script /etc/init.d/nfs-kernel- server ● Para comprobar si está en funcionamiento es necesario usar el comando rcpinfo -p # rpcinfo -p programa vers proto puerto 100000 2 tcp 111 portmapper 100000 2 udp 111 portmapper 100003 2 udp 2049 nfs 100003 2 tcp 2049 nfs 100005 1 udp 1018 mountd 100005 2 udp 1018 mountd 100005 1 tcp 1021 mountd 100005 2 tcp 1021 mountd [....] Tenemos que ver, como mínimo, portmapper, nfs y mountd. 5
    6. Irontec – NFS y NIS NFS ● Por defecto no se permite el acceso a ningún recurso compartido ● Estos se configuran en el fichero /etc/exports ● Se debe indicar que carpeta compartir y a que host ● Ejemplo: /tmp/ host.profesor.com(rw) ● Se pueden indicar tanto host como Ips. ● Si queremos dar solo lectura será (ro) ● Una vez hecho el cambio se deben aplicar con el comando: # exportfs -ra 6
    7. Irontec – NFS y NIS NFS ● A la hora de indicar el host al que le permitimos el acceso se pueden usar comodines como * y ? ● Por ejemplo: – alumno?.com – Profesor.* – *.google.es – *.*.?ahoo.es ● En caso de usar Ips también podemos definir rangos completos – 192.168.1.0/24 – 192.168.1.111/32 – 7
    8. Irontec – NFS y NIS NFS ● Las opciones más importantes: – Secure: obliga a que el servicio escuche en un puerto privilegiado (menor a 1024) – Nosecure: elimina la obligación de usar un puerto privilegiado – Ro: solo lectura – Rw: lectura / escritura – Noaccess: Sin permisos de acceso – Anonuid: El uid de usuario con el que nos conectaremos – Anongid: Es el gid de grupo con el que nos coenctaremos 8
    9. Irontec – NFS y NIS NFS ● Para montar un dispositivo nfs habrá que hacer uso del comando mount mount -t nfs 192.168.1.111:/var/log /mi/directorio/local ● El comando root debe ejecutarse como root ● Ahora en /mi/directorio/local tendría que ver el contenido de la carpeta /var/log remota ● ¡Vamos a probadlo! Uno será servidor y otro cliente 9
    10. Irontec – NFS y NIS NFS ● Se debe compartir: – /var/log con permisos de acceso total solo para tu compañero. Los demas solamente lectura ● Se debe montar: – El /var/log de tu compañero en tu /var/nuevolog – Probad a escribir, mover, etc. ● Suerte! :D 10
    11. Irontec – NFS y NIS NFS ● Se puede configurar para que NFS se monte al arrancar el sistema ● Para ello se debe configurar en /etc/fstab ● Gracias a esto podemos, por ejemplo, montar nuestra home en un NAS remoto 11
    12. Irontec – NFS y NIS Optimizar la tranferencia NFS ● A la hora de montar disponemos de unos valores que nos ayudaran a mejorar el rendimiento: – Rsize: indica el tamaño en bytes de los bloques en la lectura – Wsize: indica el tamaño en bytes de los bloques en la lectura – Cache/nocache: habilita o deshabilita la cache – Noatime: no actualiza la fecha de acceso – Noacl: no hace uso de las acl 12
    13. Irontec – NFS y NIS Optimizar la tranferencia NFS ● Sin cambiar opciones: dd if=/dev/zero of=/media/log/kk bs=16k count=16k 16384+0 records in 16384+0 records out 268435456 bytes (268 MB) copied, 41,9188 s, 6,4 MB/s ● Cambiando opciones (ejemplo): $ mount 10.10.0.118:/var/log/ /media/log/ -o wsize=1024,noatime ¡Probad a mejorar los tiempos! 13
    14. Irontec – NFS y NIS Optimizar la transferencia NFS ● Más opciones: http://web.mit.edu/rhel-doc/4/RH-DOCS/rhel-rg-es-4/s1-nfs-client man mount man fstab man nfs man exports 14
    15. Irontec – NFS y NIS NIS ● Cada equipo tiene sus usuarios, su fichero host... ¡se puede compartir la información! ● Gracias al servicio NIS es posible que los usuarios y hosts definidos en un servidor sean usables en cualquier sistema que actue como cliente. ● NIS (network information server) fué un protocolo creado por Sun Microsystems. ● Originalmente se llama YeloPages, de ahí que todos los comandos de NIS empiezen por “yp” 15
    16. Irontec – NFS y NIS NIS ● Está ideado para redes Unix pequeñas donde la configuración de un DNS y LDAP supone más un problema que una solución por el trabajo que conlleva ● Los elementos que compartiremos son: – Usuarios – Grupos – Hosts ● Al igual que con NFS, es necesario una estructura cliente/servidor 16
    17. Irontec – NFS y NIS NIS ● El paquete Debian que incluye Nis se llama.... “nis”, por lo que habrá que instalarlo con apt-get ● Es importante tener en cuenta que NIS no hace uso del Dns, por lo que en nuestro host debemos definir nuestro nombre de dominio: – 192.168.145.111 profesor.com ● Una vez que tengamos el dominio, debemos definirlo en /etc/defaultdomain ● El dominio SI es sensible a mayúsculas/minúsculas. No es lo mismo Profesor.com que profesor.com 17
    18. Irontec – NFS y NIS NIS ● Una vez que tenemos configurado el acceso será necesario definir quien puede acceder a nuestros servicios ● Se hace en el fichero /etc/default/nis 255.255.255.0 192.168.144.0 255.255.255.0 192.168.145.0 ● Solo los equipos de esa red podrán trabajar como clientes de nuestro servidor NIS 18
    19. Irontec – NFS y NIS NIS ● Resumiendo, hemos configurado: – Defaultdomain – Redes a las que permitimos acceso ● Ahora solamente queda configurar NIS para que actue como servidor y no como cliente ● Dicho cambio se hace en /etc/default/nis ● Una vez hecho el cambio, inicializaremos nuestra base de datos: /usr/lib/yp/ypinit -m 19
    20. Irontec – NFS y NIS NIS debian-servidor:~# /usr/lib/yp/ypinit -m At this point, we have to construct a list of the hosts which will run NIS servers. debian-servidor is in the list of NIS server hosts. Please continue to add the names for the other hosts, one per line. When you are done with the list, type a <control D>. next host to add: debian-servidor next host to add: profesor.com next host to add: The current list of NIS servers looks like this: debian-servidor profesor.com Is this correct? [y/n: y] y 20
    21. Irontec – NFS y NIS NIS We need a few minutes to build the databases... Building /var/yp/profesor.com/ypservers... Running /var/yp/Makefile... make[1]: se ingresa al directorio `/var/yp/profesor.com' Updating passwd.byname... Updating passwd.byuid... Updating group.byname... [...] make[1]: se sale del directorio `/var/yp/profesor.com' debian-servidor has been set up as a NIS master server. Now you can run ypinit -s debian-servidor on all slave server. 21
    22. Irontec – NFS y NIS NIS ● Cada vez que se añada un usuario o un host al equipo se debe reconstruir la base de datos, para que los nuevos elementos estén disponibles a todo el mundo ● Estas bases de datos se guardan en: – /var/yp ● La comunicación entre cliente y servidor se hace a través del puerto 111 TCP (portmap) por lo que deberá estar abierto y sin firewall de por medio 22
    23. Irontec – NFS y NIS NIS ● Es posible jugar con la seguridad del servidor, definiendo que datos deseamos exportar a los clientes y cuales no ● Dicha política se configura en: – /etc/ypserv.conf # Host : Domain : Map : Security * : * : passwd.byname : port/mangle 23
    24. Irontec – NFS y NIS NIS ● host: dirección IP con comodines opcionales ● domain: nombre del dominio NIS para el que se aplica la regla; un asterisco sirve como comodín. ● map: nombre del mapa al que se accede; igualmente un asterisco sirve como comodín. ● security: tipo de seguridad aplicable – none: donde siempre se permite el acceso – port: sólo se permite el acceso si la petición se origina en un puerto privilegiado (por debajo de 1024) – deny: acceso denegado en cualquier caso ● A port y none es posible añadirle mangle[:field] donde “field” es un campo que será sustituido por una “x”. El valor por defecto es 2. 24
    25. Irontec – NFS y NIS NIS ● ¡Una vez configurado el servidor, queda configurar los clientes! ● Por defecto la busqueda la hace mediante broadcast, lo que en nuestro caso puede ser una locura ya que tendremos varios servidores NIS ● Por lo tanto, indicaremos el servidor NIS a mano en el fichero – /etc/yp.conf ypserver 192.168.144.111 ● Reiniciamos el servicio Nis para aplicar los cambios. 25
    26. Irontec – NFS y NIS NIS ● Ahora será necesario configurar nuestros ficheros passwd, shadow y groups para que admitan datos del NIS: – Passwd: +:::::: – Shadow: +:::::::: – Group: +::: 26
    27. Irontec – NFS y NIS NIS ● Ahora haremos uso de los comandos yp* para comprobar que todo funciona: – ypdomainname (averiguar nuestro dominio) – ypwhich (averiguar nuestro servidor NIS) – ypwich -m passwd (que servidor dispone el mapa passwd) – ypcat -x (ver todos los servicios que ofrece el servidor) – ypcat passwd (ver las entradas del mapa passwd) 27
    28. Irontec – NFS y NIS NIS ● Tendriamos que poder ver los hosts y passwd del servidor ● Probad a actualizar los datos en el servidor y que estos sean visibles en el cliente ● Intentad hacer login con un usuario NIS ● Cambiad los roles, el servidor pasa a ser cliente y el cliente servidor :) 28
    29. Irontec – NFS y NIS DHCP ● DHCP: Dynamic Host Configuration Protocol ● Nos permite autoconfigurar la interfaz de red de los equipos ● El demonio que usaremos en Debian es dhcpd, aunque existen más ● apt-get install dhcpd :) ● A parte de IP, Gateway y Máscara de red pueden enviar más opciones al cliente 29
    30. Irontec – NFS y NIS DHCP ● Otras opciones disponibles: – http://www.ietf.org/rfc/rfc2132.txt ● Las más importantes: – Dirección DNS – MTU (Unidad de transferencia máxima) – Servidores NIS – Servidores NTP – Servidor TFT – Servidor WINS 30
    31. Irontec – NFS y NIS DHCP ● Los manuales imprescindibles están en vuestro propio equipo – man dhcpd.conf – man dhcp-options ● El fichero de configuración ya incluye unas opciones de ejemplo que nos pueden ayudar a montar nuestro servidor 31
    32. Irontec – NFS y NIS DHCP ● Ejemplo DHCP: subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.10 192.168.1.50; option broadcast-address 192.168.1.255; option routers 192.168.1.1; option domain-name-servers 192.168.1.2; option ntp-servers 192.168.1.2; option domain-name irontec.com; option lpr-servers 192.168.1.3; option static-routes 10.10.0.31 10.10.0.1 } 32
    33. Irontec – NFS y NIS DHCP ● Si por alguna razón nos parecen pocas las opciones, podemos definir nuestras propias opciones: – option sql-server-address code 193 = ip-address; option sql-server-address 192.168.3.1; – option libro code 195 = text; option libro “the catcher in the rye” ● Lista de posibles valores: – Ip-address: Una dirección IP – Text: Una cadena de texto – Boolean: On/Off – Integer: 1536 – … ● El código puede ser un valor entre 128 y 254 33
    34. Irontec – NFS y NIS DHCP ● El tiempo de asignación de Ips se puede controlar (aunque en la práctica, si no apagas el ordenador es casi infinito) – default-lease-time 600: la asignación de la IP al equipo tendrá una duración de 600 segundos. El cliente dhcp puede modificar este valor y pedir otro lease time – Max-lease-time 7200: si el cliente pide otro lease time diferente del default, como máximo podrá indicar el valor aquí especificado 34
    35. Irontec – NFS y NIS DHCP ● El cliente de dhcp se configura en /etc/dhcp3/dhcpclient.conf ● En el, entre otras cosas, podemos configurar que options se reciben ● Los leases recibidos podemos consultarlos en /var/lib/dhcp3 ● Si por ejemplo tenemos nuestros propios DNS y no queremos que el DHCP nos cambie el resolv.conf, eliminariamos “domain-name-servers” de la lista de options a pedir 35

    custom

    53 views, 0 favs, 0 embeds more stats

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 53
      • 53 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 3
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?