76 lines
3.2 KiB
Plaintext
76 lines
3.2 KiB
Plaintext
|
|
#########
|
|
SERVIDOR
|
|
#########
|
|
|
|
Instalamos el servidor NFS en un ordenador de nuestra red:
|
|
sudo apt-get install nfs-kernel-server
|
|
|
|
Vamos a compartir un directorio general y el home
|
|
|
|
Creamos un directorio para exportar como nfs:
|
|
sudo mkdir /var/nfs/general -p
|
|
NFS traducirá cualquier operación root sobre el cliente a las credenciales nobody:nogroup como medida de seguridad.
|
|
Por tanto, debemos cambiar la propiedad del directorio para que coincida con esas credenciales:
|
|
sudo chown nobody:nogroup /var/nfs/general
|
|
El directorio /home ya existe por lo que no lo crearemos, tampoco le cambiamos los permisos, ya que tiene los adecuados.
|
|
|
|
Editamos el archivo /etc/exports y escribimos:
|
|
/var/nfs/general 192.168.0.0/24(rw,sync,no_subtree_check)
|
|
/home 192.168.0.37(rw,sync,no_root_squash,no_subtree_check)
|
|
Esto comparte el directorio general en toda la red 192.168 y el home a un solo equipo
|
|
|
|
Permisos que se pueden aplicar:
|
|
ro : lectura
|
|
rw : lectura y escritura
|
|
link_relative : convierte los enlaces simbólicos absolutos en enlaces simbólicos relativos.
|
|
link_absolute : Lo contrario, de relativos a absolutos. Esta es la opción predeterminada.
|
|
root_squash : trata las consultas como si vinieran del usuario nobody (lo más seguro). O sea, que evitamos que los usuarios conectados actúen como root.
|
|
no_root_sqash : Desactiva lo anterior, y por tanto implica algo de riesgo porque habilita los privilegios de root.
|
|
all_squash : Realiza la acción root_squash para todos los usuarios, incluido los usuarios root.
|
|
no_all_squash : Habilita la autorización del usuario.
|
|
|
|
Exportamos el directorio compartido con:
|
|
sudo exportfs -a
|
|
|
|
Parámetros interesantes de exportfs:
|
|
exportfs -v : muestra una lista de recursos compartidos y sus opciones configuradas en el archivo /etc/exports
|
|
exportfs -a : Exporta todos los directorios declarados en el archivo /etc/exports
|
|
exportfs -u : Sirve para des-exportar uno o más recursos.
|
|
exportfs -r : re-exporta los directorios después de modificar el archivo /etc/exports
|
|
|
|
Ahora reinicimos el servidor NFS:
|
|
sudo systemctl restart nfs-kernel-server
|
|
|
|
Ajustamos el firewall:
|
|
sudo ufw allow from 192.168.0.0/24 to any port nfs
|
|
|
|
|
|
#########
|
|
CLIENTE
|
|
#########
|
|
|
|
En el ordenador cliente instalamos nfs-common:
|
|
sudo apt-get install rpcbind nfs-common
|
|
|
|
Añadimos una línea al archivo /etc/hosts.deny:
|
|
rpcbind : ALL
|
|
Y otra al archivo /etc/hosts.allow:
|
|
rpcbind : ip-del-servidor
|
|
|
|
Creamos un directorio llamado directorio-red para montar en él el directorio home del servidor:
|
|
mkdir directorio-red
|
|
|
|
Montamos el directorio donde deseemos con:
|
|
sudo mount ip-del-servidor:/home /home/usuario/directorio-red
|
|
|
|
Vemos si está montado:
|
|
mount -t nfs
|
|
|
|
Para que el directorio-red se monte automáticamente al iniciar el sistema operativo, abrimos el archivo /etc/fstab y escribimos al final la siguiente línea (suponemos que el servidor nfs es 192.168.1.8):
|
|
ip-del-servidor:/home /home/usuario/directorio-red nfs auto,noatime,nolock,bg,nfsvers=4,intr,tcp,actimeo=1800 0 0
|
|
|
|
Si alguna vez queremos desmontar este directorio de red:
|
|
sudo umount /home/usuario/directorio-red
|
|
y luego eliminamos la línea añadida previamente al archivo /etc/fstab
|