En la siguiente guía se describe el protocolo NFSv4.1.
Filestore ofrece compatibilidad con el protocolo NFSv4.1 para las instancias creadas en los siguientes niveles de servicio:
- Por zonas
- Regional
- Empresa
Esta función se puede integrar con Managed Service for Microsoft Active Directory (Managed Microsoft AD) para admitir cargas de trabajo que requieran autenticación de cliente y servidor, comprobaciones de integridad de datos de mensajes y cifrado de datos en tránsito, funciones que antes no estaban disponibles en Filestore.
La autenticación se admite mediante LDAP y Kerberos e incluye las siguientes opciones de seguridad:
- Autenticación de cliente y servidor (
krb5
). - Comprobaciones de integridad de los mensajes (
krb5i
). Incluye las funciones del ajuste anterior. - Encriptado de datos en tránsito (
krb5p
). Incluye las funciones del ajuste anterior.
Managed Microsoft AD es la única solución totalmente gestionada Google Cloud que admite tanto LDAP como Kerberos, requisitos del protocolo NFSv4.1 y sus ventajas en cuanto a seguridad y privacidad. Aunque no es obligatorio integrar Managed Microsoft AD, es muy recomendable para disfrutar de una experiencia de usuario óptima al gestionar cuentas de usuario, grupos y permisos fluctuantes. Google Cloud
¿Deberías usar NFSv4.1?
Muchas empresas dependen de sistemas antiguos para llevar a cabo operaciones críticas. Muchos de estos sistemas requieren autenticación y cifrado en tránsito para su almacenamiento de archivos en red. NFSv3 no se diseñó con la autenticación en mente. La integración del protocolo NFSv4.1 de Filestore con Managed Microsoft AD ahora cumple este requisito fundamental de los usuarios.
Para obtener más información sobre las ventajas de NFSv4.1, consulta Acerca de los protocolos admitidos.
Información sobre las listas de control de acceso (LCAs) basadas en redes en NFSv4.1.
En NFSv3, solo se admite el tipo de seguridad sys
. Este ajuste confía en el usuario uid
y gid
proporcionados por el cliente durante el montaje.
En el protocolo NFSv4.1 de Filestore, hay disponibles varios tipos o ajustes de seguridad de ACL de red:
krb5
Autentica al cliente mediante un ticket de Kerberos, que se valida en el servidor de Kerberos de Microsoft AD gestionado.
krb5i
Incluye la autenticación proporcionada por
krb5
y también usa Kerberos para ejecutar comprobaciones de integridad de mensajes en todo el tráfico de red hacia y desde la instancia.krb5p
Incluye la autenticación proporcionada por
krb5
y las comprobaciones de integridad de los mensajes dekrb5i
. También usa Kerberos para cifrar los datos en tránsito.
Si quieres aprovechar estas opciones, debes integrar el servicio gestionado de Microsoft Active Directory. Para obtener más información, consulta Crear una instancia de Filestore con Managed Microsoft AD.
Si no se especifica un dominio de Servicio gestionado para Microsoft Active Directory, solo se admite el tipo de seguridad sys
.
Para obtener más información, consulta Limitaciones de NFSv4.1.
Montar instancias de Filestore NFSv4.1 en clientes Linux
En los siguientes pasos se muestra cómo montar instancias en clientes Linux.
Monta con
sec=sys
para obtener permisos NFS estándar:sudo mount -vvvv -t nfs4 -o vers=4.1,sec=sys,rw \ FILESTORE-INSTANCE-FQDN:/INSTANCE_SHARE_POINT /MOUNT_POINT
Monta con
sec=krb5
para la autenticación basada en Kerberos:sudo mount -vvvv -t nfs4 -o vers=4.1,sec=krb5,rw \ FILESTORE-INSTANCE-FQDN:/INSTANCE_SHARE_POINT /MOUNT_POINT
Monta con
sec=krb5i
para la autenticación basada en Kerberos y las comprobaciones de integridad de los mensajes:sudo mount -vvvv -t nfs4 -o vers=4.1,sec=krb5i,rw \ FILESTORE-INSTANCE-FQDN:/INSTANCE_SHARE_POINT /MOUNT_POINT
Monta con
sec=krb5p
para la autenticación basada en Kerberos, las comprobaciones de integridad y el cifrado en tránsito:sudo mount -vvvv -t nfs4 -o vers=4.1,sec=krb5p,rw \ FILESTORE-INSTANCE-FQ DN:/INSTANCE_SHARE_POINT /MOUNT_POINT
Haz los cambios siguientes:
- FILESTORE-INSTANCE-FQDN es el nombre de dominio completo en el que se encuentra la instancia de Filestore.
- INSTANCE_SHARE_POINT es el nombre del recurso compartido de archivos de la instancia de Filestore a la que quieres conectarte.
- MOUNT_POINT es el punto de montaje o el nombre del directorio en el que quieres montar.
Configuración del cliente Linux
Una instancia de Filestore NFSv4.1 permite a los clientes realizar operaciones de NFS con varios tipos de seguridad. El administrador de la instancia configura estas variantes mediante las ACLs de red en la instancia de Filestore NFSv4.1 durante la creación o si se actualizan después de la creación.
El tipo de seguridad sys
usa la autenticación estándar de Unix, mientras que los tipos krb5
,
krb5i
y krb5p
usan la autenticación basada en Kerberos.
Las versiones krb5
, krb5i
y krb5p
requieren que los clientes estén conectados al mismo dominio de Microsoft AD gestionado que la instancia de Filestore.
Sigue los pasos que correspondan a tu entorno.
Imagen de Ubuntu
- Conéctate a la instancia de Compute Engine mediante SSH.
Ejecuta los siguientes comandos para unirte al dominio de Microsoft AD gestionado.
Ejecuta el siguiente comando de configuración:
sudo apt-get update \ sudo apt-get -y -qq install adcli realmd sssd sssd-tools packagekit krb5-user \ nfs-common expect retry
Cuando se te pida el realm, sustituye la entrada por el dominio de Microsoft AD gestionado que se usa en la instancia de Filestore. Introduce el valor en mayúsculas, pulsa la tecla de flecha para seleccionar Aceptar y, a continuación, pulsa Intro.
Cuando se te pidan hosts, déjalo vacío y continúa.
Sigue uno de estos pasos:
En las VMs con una longitud de nombre de host igual o inferior a 15 caracteres, ejecuta el siguiente comando:
sudo realm join -vU JOIN_DOMAIN_USER --automatic-id-mapping=no MANAGED_AD_DOMAIN_NAME
Haz los cambios siguientes:
- JOIN_DOMAIN_USER es el nombre de la cuenta de usuario que se usa para unirse al dominio.
- MANAGED_AD_DOMAIN_NAME es el nombre de dominio del servicio Managed Microsoft AD que quieres usar.
En las VMs con un nombre de host de más de 15 caracteres, ejecuta el siguiente comando:
sudo realm join -vU JOIN_DOMAIN_USER --automatic-id-mapping=no \ --user-principal=host/`hostname -f`@MANAGED_AD_REALM_NAME MANAGED_AD_DOMAIN_NAME
Haz los cambios siguientes:
- JOIN_DOMAIN_USER es el nombre de la cuenta de usuario que se usa para unirse al dominio.
- MANAGED_AD_REALM_NAME es el nombre del reino del servicio gestionado de Microsoft AD que quieres usar.
- MANAGED_AD_DOMAIN_NAME es el nombre de dominio del servicio Managed Microsoft AD que quieres usar.
Actualiza la configuración de Kerberos. Actualiza
/etc/krb5.conf
con la definición de realm y la asignación de realm a dominio necesarias:[realms] DOMAIN_NAME = { kdc = DOMAIN_NAME default_domain = DOMAIN_NAME } [domain_realm] .domain_name_lowercase = DOMAIN_NAME domain_name_lowercase = DOMAIN_NAME
Haz los cambios siguientes:
- DOMAIN_NAME es el nombre de dominio que quieres usar, escrito en mayúsculas.
- domain_name_lowercase es el nombre de dominio que quieres usar, escrito en minúsculas.
Consulta el siguiente ejemplo:
[realms] FILE.DEMO.LOCAL = { kdc = FILE.DEMO.LOCAL default_domain = FILE.DEMO.LOCAL } [domain_realm] .file.demo.local = FILE.DEMO.LOCAL file.demo.local = FILE.DEMO.LOCAL
Ejecuta el servicio rpc-gssd. Añade el siguiente valor de atributo
No-Strip
a la sección[General]
de/etc/idmapd.conf
:[General] No-Strip = both
Ejecuta el siguiente comando:
sudo systemctl restart rpc-gssd
Imagen de Centos
- Conéctate a la instancia de Compute Engine mediante SSH.
Únete al dominio de Microsoft AD gestionado:
sudo yum update \ sudo yum install -y adcli realmd sssd samba-common-tools krb5-workstation nfs-utils \ bind-utils openldap-clients
Sigue uno de estos pasos:
En las VMs con una longitud de nombre de host igual o inferior a 15 caracteres, ejecuta el siguiente comando:
sudo realm join -vU JOIN_DOMAIN_USER --automatic-id-mapping=no MANAGED_AD_DOMAIN_NAME
Haz los cambios siguientes:
- JOIN_DOMAIN_USER es el nombre de la cuenta de usuario que se usa para unirse al dominio.
- MANAGED_AD_DOMAIN_NAME es el nombre de dominio del servicio Managed Microsoft AD que quieres usar.
En las VMs con un nombre de host de más de 15 caracteres, ejecuta el siguiente comando:
sudo realm join -vU JOIN_DOMAIN_USER --automatic-id-mapping=no \ --user-principal=host/`hostname -f`@MANAGED_AD_REALM_NAME MANAGED_AD_DOMAIN_NAME
Haz los cambios siguientes:
- JOIN_DOMAIN_USER es el nombre de la cuenta de usuario que se usa para unirse al dominio.
- MANAGED_AD_REALM_NAME es el nombre del dominio del servicio Managed Microsoft AD que quieres usar.
- MANAGED_AD_DOMAIN_NAME es el nombre de dominio del servicio Managed Microsoft AD que quieres usar.
Asegúrate de que el servicio sssd se está ejecutando:
sudo systemctl status sssd
Ejecuta el servicio rpc-gssd. Añada lo siguiente debajo del atributo
No-Strip
a la sección[General]
de/etc/idmapd.conf
:[General] No-Strip = both
Ejecuta el siguiente comando: Este comando ayuda a asegurarse de que el cliente NFS no elimine el nombre de dominio del nombre de host del servidor NFS. Para obtener más información, consulta los archivos de la lista de NFS Ganesha y el archivo de Arch Linux:
sudo systemctl start rpc-gssd
Siguientes pasos
- Editar una instancia de Filestore
- Crear una instancia en una red de VPC compartida en proyectos de servicio