Compartir carpetas en Linux con NFS
De Wiki do Pazo da Mercé
Índice |
Funcionamento de NFS
O servizo NFS (Network File System) permite compartir directorios entre distintas máquinas Linux.
O funcionamento do sistema NFS baséase na montaxe nun directorio local da máquina cliente do directorio remoto ao que se quere acceder. Unha vez montado o directorio remoto, o cliente accede a el igual que se fose un directorio do seu disco duro local.
Instalación do cliente e servidor de NFS
Dentro do sistema de NFS podemos distinguir dous compoñentes:
- O módulo de cliente NFS, que é necesario para poder montar carpetas compartidas por outros equipos por NFS:
- En Ubuntu: Paquete nfs-common, e teremos que arrancar os servizos portmap e nfs-common.
- En Mandriva: Paquete nfs-utils-clients, e teremos que arrancar os servizos portmap e nfs-common.
- O módulo de servidor NFS, necesario para poder compartir carpetas por NFS.
- En Ubuntu: Paquete nfs-kernel-server, e teremos que arrancar o servizo nfs-kernel-server.
- En Mandriva: Paquete nfs-utils, e teremos que arrancar o servizo nfs-server.
Compartir carpetas por NFS
Unha vez instalado o paquete de servidor de NFS, podemos compartir carpetas por NFS utilizando o webmin:
|
Compartir carpetas por NFS con webmin |
Con respecto ao firewall, co servidor de NFS temos o inconveniente de que por defecto toma portos distintos cada vez que se arranca, polo que debemos incluír unha política ou unha regra que acepte todo tipo de conexión que proveñan dos clientes que van acceder ás carpetas compartidas por NFS para que se autorice o seu acceso.
Seguridade e permisos en NFS
Con NFS podemos utilizar distintas opcións para establecer restriccións de seguridade sobre unha carpeta compartida:
- Restricción por máquina cliente: Baseándonos na IP, nome de DNS, grupo de NIS ou rede da máquina cliente.
- Restricción de compartición como só lectura: Podemos indicar que a carpeta se comparta para poder acceder ao seu contido pero non poder modificalo en ningún caso.
- Restricción por uid do usuario cliente:
- Cando un cliente monta unha carpeta compartida por NFS, o equipo servidor que comparte a carpeta toma o uid do usuario da máquina cliente como un uid dun usuario local.
- Con ese uid, aplica os permisos correspondentes que a carpeta ten no sistema Linux.
- Pode interesarnos deshabilitar esta opción, ou evitar que certos usuarios, como por exemplo o root, poidan ser mapeados desta forma por NFS xa que isto pode supoñer un perigo para a seguridade do equipo.
Acceder a carpetas compartidas por NFS
Tamén podemos utilizar o webmin para montar por NFS unha carpeta compartida noutro equipo:
|
Compartir carpetas por NFS con webmin |
Comandos e ficheiros de configuración
O ficheiro de configuración principal do servizo NFS é /etc/exports. Nel podemos indicar que carpetas queremos exportar por NFS. Haberá unha liña por cada carpeta compartida por NFS co seguinte formato:
Ruta_da_carpeta_compartida Máquinas_que_poden_acceder_e_outras opcións
Tras cambiar a configuración deste ficheiro podemos aplicar os cambios co comando:
exportfs –a
Dende o cliente, podemos usar o comando mount para montar unha carpeta remota da seguinte forma (tamén podemos usar o ficheiro /etc/fstab para montaxes permanentes):
mount –t nfs IP_máquina_remota:carpeta_compartida directorio_de_montaxe
O comando showmount -a IP_máquina permítenos ver as carpetas compartidas por NFS dun equipo e o seu uso.
