Le guide suivant décrit le protocole NFSv4.1.
Filestore est compatible avec le protocole NFSv4.1 pour les instances créées dans les niveaux de service suivants :
- Zonal
- Régional
- Entreprise
Cette fonctionnalité peut être intégrée au service géré pour Microsoft Active Directory (Managed Microsoft AD) afin de prendre en charge les charges de travail qui nécessitent l'authentification du client et du serveur, les vérifications de l'intégrité des données des messages et le chiffrement des données en transit, des fonctionnalités qui n'étaient pas disponibles auparavant dans Filestore.
L'authentification est compatible avec LDAP et Kerberos, et inclut les paramètres de sécurité suivants :
- Authentification du client et du serveur (
krb5
). - Contrôles d'intégrité des messages (
krb5i
). Inclut les fonctionnalités du paramètre précédent. - Chiffrement des données en transit (
krb5p
). Inclut les fonctionnalités du paramètre précédent.
Microsoft AD géré est la seule solution Google Cloud entièrement gérée qui soit compatible avec LDAP et Kerberos, qui sont des exigences pour le protocole NFSv4.1 et ses avantages en termes de sécurité et de confidentialité. Bien que l'intégration à Managed Microsoft AD ne soit pas obligatoire, elle est fortement recommandée pour une expérience utilisateur optimale Google Cloud afin de gérer les comptes utilisateur, les groupes et les autorisations fluctuants.
Devez-vous utiliser NFSv4.1 ?
De nombreuses entreprises s'appuient sur des systèmes existants pour leurs opérations critiques. Nombre de ces systèmes nécessitent une authentification et un chiffrement en transit pour leur stockage de fichiers réseau. NFSv3 n'a pas été conçu pour l'authentification. L'intégration du protocole NFSv4.1 de Filestore avec Microsoft AD géré répond désormais à cette exigence utilisateur essentielle.
Pour en savoir plus sur les avantages de NFSv4.1, consultez À propos des protocoles compatibles.
Comprendre les listes de contrôle des accès (LCA) basées sur le réseau dans NFSv4.1.
Dans NFSv3, seule la saveur de sécurité sys
est acceptée. Ce paramètre fait confiance à l'utilisateur uid
et à gid
fournis par le client lors du montage.
Dans le protocole Filestore NFSv4.1, plusieurs saveurs ou paramètres de sécurité des LCA réseau sont disponibles :
krb5
Authentifie le client à l'aide d'un ticket Kerberos, qui est validé par rapport au serveur Kerberos Managed Microsoft AD.
krb5i
Inclut l'authentification fournie par
krb5
et utilise également Kerberos pour exécuter des vérifications de l'intégrité des messages sur tout le trafic réseau vers et depuis l'instance.krb5p
Inclut l'authentification fournie par
krb5
et les vérifications de l'intégrité des messages dekrb5i
. Utilise également Kerberos pour le chiffrement des données en transit.
Si vous souhaitez profiter de ces options, l'intégration du service géré pour Microsoft Active Directory est requise. Pour en savoir plus, consultez Créer une instance Filestore avec Managed Microsoft AD.
Si aucun domaine de service géré pour Microsoft Active Directory n'est spécifié, seule la saveur de sécurité sys
est acceptée.
Pour en savoir plus, consultez Limites de NFSv4.1.
Installer des instances Filestore NFSv4.1 sur des clients Linux
Les étapes suivantes vous montrent comment monter des instances sur des clients Linux.
Installez avec
sec=sys
pour les autorisations NFS standards :sudo mount -vvvv -t nfs4 -o vers=4.1,sec=sys,rw \ FILESTORE-INSTANCE-FQDN:/INSTANCE_SHARE_POINT /MOUNT_POINT
Effectuez le montage avec
sec=krb5
pour l'authentification basée sur Kerberos :sudo mount -vvvv -t nfs4 -o vers=4.1,sec=krb5,rw \ FILESTORE-INSTANCE-FQDN:/INSTANCE_SHARE_POINT /MOUNT_POINT
Effectuez le montage avec
sec=krb5i
pour l'authentification basée sur Kerberos et les vérifications de l'intégrité des messages :sudo mount -vvvv -t nfs4 -o vers=4.1,sec=krb5i,rw \ FILESTORE-INSTANCE-FQDN:/INSTANCE_SHARE_POINT /MOUNT_POINT
Effectuez le montage avec
sec=krb5p
pour l'authentification, les vérifications d'intégrité et le chiffrement en transit basés sur Kerberos :sudo mount -vvvv -t nfs4 -o vers=4.1,sec=krb5p,rw \ FILESTORE-INSTANCE-FQ DN:/INSTANCE_SHARE_POINT /MOUNT_POINT
Remplacez les éléments suivants :
- FILESTORE-INSTANCE-FQDN est le nom de domaine complet où se trouve l'instance Filestore.
- INSTANCE_SHARE_POINT est le nom du partage de fichiers de l'instance Filestore à laquelle vous souhaitez vous connecter.
- MOUNT_POINT correspond au nom du point d'installation ou du répertoire dans lequel vous souhaitez effectuer l'installation.
Configuration du client Linux
Une instance Filestore NFSv4.1 permet aux clients d'effectuer des opérations NFS à l'aide de différents niveaux de sécurité. Ces saveurs sont configurées par l'administrateur de l'instance via les LCA réseau sur l'instance Filestore NFSv4.1, lors de la création ou si elles sont mises à jour après la création.
Le niveau de sécurité sys
utilise l'authentification Unix standard, tandis que les niveaux krb5
, krb5i
et krb5p
utilisent l'authentification basée sur Kerberos.
Les versions krb5
, krb5i
et krb5p
exigent que les clients soient connectés au même domaine Managed Microsoft AD que l'instance Filestore.
Suivez les étapes ci-dessous qui correspondent à votre environnement.
Image Ubuntu
- Connectez-vous en SSH à l'instance Compute Engine.
Exécutez les commandes suivantes pour rejoindre le domaine Managed Microsoft AD.
Exécutez la commande de configuration suivante :
sudo apt-get update \ sudo apt-get -y -qq install adcli realmd sssd sssd-tools packagekit krb5-user \ nfs-common expect retry
Lorsque vous êtes invité à indiquer le domaine, remplacez l'entrée existante par le domaine Microsoft AD géré utilisé sur l'instance Filestore. Saisissez la valeur en majuscules, puis appuyez sur la flèche pour sélectionner OK, puis sur Entrée.
Lorsque vous êtes invité à saisir des hôtes, laissez le champ vide et continuez.
Effectuez l'une des actions suivantes :
Pour les VM dont le nom d'hôte comporte 15 caractères ou moins, exécutez la commande suivante :
sudo realm join -vU JOIN_DOMAIN_USER --automatic-id-mapping=no MANAGED_AD_DOMAIN_NAME
Remplacez les éléments suivants :
- JOIN_DOMAIN_USER correspond au nom du compte utilisateur utilisé pour rejoindre le domaine.
- MANAGED_AD_DOMAIN_NAME correspond au nom de domaine du service Microsoft AD géré que vous souhaitez utiliser.
Pour les VM dont le nom d'hôte comporte plus de 15 caractères, exécutez la commande suivante :
sudo realm join -vU JOIN_DOMAIN_USER --automatic-id-mapping=no \ --user-principal=host/`hostname -f`@MANAGED_AD_REALM_NAME MANAGED_AD_DOMAIN_NAME
Remplacez les éléments suivants :
- JOIN_DOMAIN_USER correspond au nom du compte utilisateur utilisé pour rejoindre le domaine.
- MANAGED_AD_REALM_NAME correspond au nom du domaine du service Microsoft AD géré que vous souhaitez utiliser.
- MANAGED_AD_DOMAIN_NAME correspond au nom de domaine du service Microsoft AD géré que vous souhaitez utiliser.
Mettez à jour la configuration Kerberos. Mettez à jour
/etc/krb5.conf
avec la définition du domaine et le mappage domaine-royaume requis :[realms] DOMAIN_NAME = { kdc = DOMAIN_NAME default_domain = DOMAIN_NAME } [domain_realm] .domain_name_lowercase = DOMAIN_NAME domain_name_lowercase = DOMAIN_NAME
Remplacez les éléments suivants :
- DOMAIN_NAME correspond au nom de domaine que vous souhaitez utiliser, saisi en majuscules.
- domain_name_lowercase correspond au nom de domaine que vous souhaitez utiliser, saisi en minuscules.
Voici un exemple :
[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
Exécutez le service rpc-gssd. Ajoutez la valeur d'attribut
No-Strip
suivante à la section[General]
dans/etc/idmapd.conf
:[General] No-Strip = both
Exécutez la commande suivante :
sudo systemctl restart rpc-gssd
Image CentOS
- Connectez-vous en SSH à l'instance Compute Engine.
Associez-la au domaine Microsoft AD géré :
sudo yum update \ sudo yum install -y adcli realmd sssd samba-common-tools krb5-workstation nfs-utils \ bind-utils openldap-clients
Effectuez l'une des actions suivantes :
Pour les VM dont le nom d'hôte comporte 15 caractères ou moins, exécutez la commande suivante :
sudo realm join -vU JOIN_DOMAIN_USER --automatic-id-mapping=no MANAGED_AD_DOMAIN_NAME
Remplacez les éléments suivants :
- JOIN_DOMAIN_USER correspond au nom du compte utilisateur utilisé pour rejoindre le domaine.
- MANAGED_AD_DOMAIN_NAME correspond au nom de domaine du service Microsoft AD géré que vous souhaitez utiliser.
Pour les VM dont le nom d'hôte comporte plus de 15 caractères, exécutez la commande suivante :
sudo realm join -vU JOIN_DOMAIN_USER --automatic-id-mapping=no \ --user-principal=host/`hostname -f`@MANAGED_AD_REALM_NAME MANAGED_AD_DOMAIN_NAME
Remplacez les éléments suivants :
- JOIN_DOMAIN_USER correspond au nom du compte utilisateur utilisé pour rejoindre le domaine.
- MANAGED_AD_REALM_NAME correspond au nom du domaine du service Microsoft AD géré que vous souhaitez utiliser.
- MANAGED_AD_DOMAIN_NAME correspond au nom de domaine du service Microsoft AD géré que vous souhaitez utiliser.
Assurez-vous que le service sssd est en cours d'exécution :
sudo systemctl status sssd
Exécutez le service rpc-gssd. Ajoutez ce qui suit sous la valeur de l'attribut
No-Strip
à la section[General]
dans/etc/idmapd.conf
:[General] No-Strip = both
Exécutez la commande ci-dessous. Cette commande permet de s'assurer que le client NFS ne supprime pas le nom de domaine du nom d'hôte du serveur NFS. Pour en savoir plus, consultez les archives de la liste NFS Ganesha et les archives Arch Linux :
sudo systemctl start rpc-gssd
Étapes suivantes
- Modifier une instance Filestore
- Créer une instance sur un réseau VPC partagé dans des projets de service