Options d'export pour File Storage
Sur Compute Cloud@Customer, les options d'export NFS vous permettent de créer un contrôle d'accès plus granulaire qu'il n'est possible à l'aide de règles de liste de sécurité pour limiter l'accès au VCN. Vous pouvez utiliser les options d'export NFS afin de définir des niveaux d'accès pour les adresses IP ou les blocs CIDR se connectant aux systèmes de fichiers par le biais d'exports dans une cible de montage. L'accès peut être limité de sorte que le système de fichiers du client soit inaccessible et invisible pour les autres, ce qui offre un meilleur contrôle de sécurité dans les environnements colocatifs.
A l'aide des contrôles d'accès de l'option d'export NFS, vous pouvez limiter la capacité des clients à se connecter au système de fichiers, et afficher ou écrire des données. Par exemple, si vous voulez que les clients utilisent les ressources de votre système de fichiers sans les mettre à jour, vous pouvez définir un accès en lecture seule. Vous pouvez également réduire l'accès racine client à vos systèmes de fichiers et mettre en correspondance des ID utilisateur (UID) et des ID de groupe (GID) indiqués avec un seul UID/GID anonyme de votre choix.
Options d'export
Les exports contrôlent la façon dont les clients NFS accèdent aux systèmes de fichiers lors de la connexion à une cible de montage. Les systèmes de fichiers sont exportés (mis à disposition) via des cibles de montage.
Les options d'export NFS sont un ensemble de paramètres dans l'export qui indiquent le niveau d'accès accordé aux clients NFS lorsqu'ils se connectent à une cible de montage. Au sein d'un export, une entrée d'options d'export NFS définit l'accès à une adresse IP unique ou à une plage de blocs CIDR. Vous pouvez avoir jusqu'à 100 options par système de fichiers.
Chaque adresse IP ou bloc CIDR de client distinct pour lequel vous souhaitez définir l'accès nécessite une entrée d'options d'export distincte. Par exemple, si vous souhaitez définir des options pour les adresses IP de clients NFS 10.0.0.6, 10.0.0.08 et 10.0.0.10, vous devez créer trois entrées séparées, une pour chaque adresse IP.
Lorsque plusieurs exports utilisent le même système de fichiers et la même cible de montage, les options d'export appliquées à une instance sont celles dont la source correspond le plus à l'adresse IP de l'instance. La correspondance la plus petite (la plus spécifique) est prioritaire pour tous les exports. Par conséquent, vous pouvez déterminer quelles options d'export sont appliquées à une instance en examinant la valeur source de tous les exports.
Par exemple, prenons les deux entrées d'options d'export suivantes permettant l'accès à un export :
Entrée 1 : source : 10.0.0.8/32, accès : lecture/écriture
Entrée 2 : source : 10.0.0.0/16, accès en lecture seule
Dans ce cas, les clients qui se connectent à l'export à partir de l'adresse IP 10.0.0.8 disposent d'un accès en lecture/écriture. Lorsqu'il existe plusieurs options d'exportation, la correspondance la plus spécifique est appliquée.
Lorsque plusieurs systèmes de fichiers sont exportés vers la même cible de montage, vous devez d'abord effectuer un export vers la cible de montage avec le réseau le plus petit (numéro CIDR le plus volumineux). Pour obtenir des informations et des instructions détaillées, reportez-vous à My Oracle Support ID de document 2823994.1.
Les systèmes de fichiers peuvent être associés à des exports, contenus dans des cibles de montage.
Si l'adresse IP source du client ne correspond à aucune entrée de la liste pour un export unique, alors cet export n'est pas visible pour le client. Cependant, il est impossible d'accéder au système de fichiers via d'autres exports sur les mêmes cibles ou sur d'autres cibles de montage. Pour refuser complètement l'accès client à un système de fichiers, assurez-vous que l'adresse IP ou le bloc CIDR source client n'est inclus dans aucun export pour toute cible de montage associée au système de fichiers.
Pour plus d'informations sur la configuration des options d'export pour différents scénarios de partage de fichiers, reportez-vous à la section NFS Access Control Scenarios.
Pour plus d'informations sur la configuration des options d'export, reportez-vous à la section intitulée Définition des options d'export NFS.
Valeurs par défaut de l'option d'export NFS
Lorsque vous créez un système de fichiers et un export, les options d'export NFS de ce système de fichiers sont définies sur les valeurs par défaut suivantes, qui permettent un accès complet à toutes les connexions source des clients NFS. Vous devez modifier ces valeurs par défaut si vous souhaitez restreindre l'accès :
Remarque : lorsque vous utilisez la CLI pour définir les options d'export, si vous définissez les options avec un tableau vide (aucune option n'est spécifiée), l'export n'est accessible à aucun client.
Option d'export dans la console Compute Cloud@Customer | Option d'export dans la CLI | Valeur par défaut | Description |
---|---|---|---|
Source : |
|
0.0.0.0/0 |
Adresse IP ou bloc CIDR d'un client NFS connecté. |
Ports : |
|
Tout |
Toujours défini sur :
|
Accédez à : |
|
Lecture/écriture |
Indique l'accès client NFS source. Il peut être défini sur l'une des valeurs suivantes :
|
Squash : |
|
Aucune. |
Détermine si l'ID utilisateur (UID) et l'ID de groupe (GID) des clients qui accèdent au système de fichiers en tant qu'utilisateur root sont de nouveau mis en correspondance avec l'UID/GID de squash. Les valeurs possibles sont les suivantes :
|
UID/GID Squash : |
|
65 534 |
Ce paramètre est utilisé avec l'option Squash. Lors de la nouvelle mise en correspondance d'un utilisateur root, vous pouvez utiliser ce paramètre pour remplacer les valeurs par défaut anonymousUid et anonymousGid par l'ID utilisateur de votre choix. |
Scénarios de contrôle d'accès NFS
Sur Compute Cloud@Customer, découvrez différentes façons de contrôler l'accès NFS en examinant certains scénarios.
- Scénario A : contrôle de l'accès basé sur l'hôte : fournit un environnement géré pour deux clients. Les clients partagent une cible de montage, mais chacun possède son propre système de fichiers et ne peut pas accéder aux données de l'autre.
- Scénario B : limitation de la capacité d'écriture de données : fournit des données aux clients pour consommation, mais ne leur permet pas de mettre à jour les données.
- Scénario C : amélioration de la sécurité du système de fichiers : augmente la sécurité en limitant les privilèges de l'utilisateur root lors de la connexion à un système de fichiers.
scénario A : contrôle d'accès basé sur l'hôte
Sur Compute Cloud@Customer, fournissez un environnement hébergé géré à deux clients. Les clients partagent une cible de montage, mais chacun possède son propre système de fichiers et ne peut pas accéder aux données de l'autre.
Exemple :
-
Le client A est affecté au bloc CIDR 10.0.0.0/24 et nécessite un accès en lecture/écriture au système de fichiers A, mais pas au système de fichiers B.
-
Le client B est affecté au bloc CIDR 10.1.1.0/24 et nécessite un accès en lecture/écriture au système de fichiers B, mais pas au système de fichiers A.
-
Le client C est affecté au bloc CIDR 10.2.2.0/24 et n'a aucun accès aux systèmes de fichiers A et B.
-
Les systèmes de fichiers A et B sont associés à une seule cible de montage, MT1. Chaque système de fichiers dispose d'un export contenu dans l'ensemble d'éléments d'export de MT1.
Le client A et le client B ayant accès à la cible de montage à partir de blocs CIDR différents, vous pouvez définir les options de client pour les deux exports de système de fichiers afin de permettre l'accès à un seul bloc CIDR. L'accès au client C est refusé en excluant son adresse IP ou son bloc CIDR des options d'export NFS pour tout export de système de fichiers.
Exemple de console Compute Cloud@Customer
Définissez les options d'export pour le système de fichiers A de sorte à autoriser l'accès en lecture/écriture uniquement au client A, qui est affecté au bloc CIDR 10.0.0.0/24. Le client B et le client C ne sont pas inclus dans ce bloc CIDR et ne peuvent donc pas accéder au système de fichiers.
Pour savoir comment accéder aux options d'export NFS dans la console Compute Cloud@Customer, reportez-vous à Définition des options d'export NFS.
Source | Ports | Accès | Squash | UID/GID Squash |
---|---|---|---|---|
10.0.0.0/24 | Tout | Lecture/écriture | Aucune. | (inutilisé) |
Définissez les options d'export pour le système de fichiers B de sorte à autoriser l'accès en lecture/écriture uniquement au client B, qui est affecté au bloc CIDR 10.1.1.0/24. Le client A et le client C ne sont pas inclus dans ce bloc CIDR et ne peuvent donc pas accéder au système de fichiers.
Source | Ports | Accès | Squash | UID/GID Squash |
---|---|---|---|---|
10.1.1.0/24 | Tout | Lecture/écriture | Aucune. | (inutilisé) |
Exemple CLI
Pour savoir comment accéder aux options d'export NFS dans la CLI, reportez-vous à la section Setting NFS Export Options.
Définissez les options d'export pour le système de fichiers A de sorte à autoriser l'accès Read_Write
uniquement au client A, qui est affecté au bloc CIDR 10.0.0.0/24. Le client B et le client C ne sont pas inclus dans ce bloc CIDR et ne peuvent donc pas accéder au système de fichiers.
oci fs export update --export-id <File_system_A_export_ID> --export-options \
'[{"source":"10.0.0.0/24","require-privileged-source-port":"false","access":"READ_WRITE","identity-squash":"NONE","anonymous-uid":"65534","anonymous-gid":"65534"}]'
Définissez les options d'export pour le système de fichiers B de sorte à autoriser l'accès Read_Write
uniquement au client B, qui est affecté au bloc CIDR 10.1.1.0/24. Le client A et le client C ne sont pas inclus dans ce bloc CIDR et ne peuvent donc pas accéder au système de fichiers.
oci fs export update --export-id <File_system_B_export_ID> --export-options \
'[{"source":"10.1.1.0/24 ","require-privileged-source-port":"false","access":"READ_WRITE","identity-squash":"NONE","anonymous-uid":"65534","anonymous-gid":"65534"}]'
scénario B : limiter la capacité à écrire des données
Sur Compute Cloud@Customer, fournissez aux clients des données à des fins d'utilisation, mais ne les autorisez à les mettre à jour.
Par exemple, vous souhaitez publier un ensemble de ressources dans le système de fichiers A pour qu'une application les utilise, mais sans les modifier. L'application se connecte à partir de l'adresse IP 10.0.0.8.
Exemple de console Compute Cloud@Customer
Définissez l'adresse IP source 10.0.0.8 sur lecture seule dans l'export du système de fichiers A.
Pour savoir comment accéder aux options d'export NFS dans la console Compute Cloud@Customer, reportez-vous à Définition des options d'export NFS.
Source | Ports | Accès | Squash | UID/GID Squash |
---|---|---|---|---|
10.0.0.8 | Tout | Lecture seule | Aucune. | (inutilisé) |
Exemple avec l'interface de ligne de commande
Pour savoir comment accéder aux options d'export NFS dans la CLI, reportez-vous à la section Setting NFS Export Options.
Définissez l'adresse IP source 10.0.0.8 sur READ_ONLY
dans l'export du système de fichiers A.
oci fs export update --export-id <File_System_A_export_OCID> --export-options \
'[{"source":"10.0.0.8","require-privileged-source-port":"false","access":"READ_ONLY","identitysquash":"NONE","anonymousuid":"65534","anonymousgid":"65534"}]'
scénario C : améliorer la sécurité du système de fichiers
Sur Compute Cloud@Customer, pour renforcer la sécurité, vous pouvez limiter les privilèges de l'utilisateur root lors de la connexion au système de fichiers A. Utilisez Rassemblement d'identités pour mettre de nouveau en correspondance les utilisateurs racine avec UID/GID 65534.
Dans les systèmes de type UNIX, cette combinaison UID/GID est réservée à 'nobody', un utilisateur qui ne dispose d'aucun privilège système.
Exemple de console Compute Cloud@Customer
Définissez l'adresse IP source 10.0.0.8 sur lecture seule dans l'export du système de fichiers A.
Pour savoir comment accéder aux options d'export NFS dans la console Compute Cloud@Customer, reportez-vous à Définition des options d'export NFS.
Source | Ports | Accès | Squash | UID/GID Squash |
---|---|---|---|---|
0.0.0.0/0 | Tout | Lecture/écriture | racine | 65 534 |
Exemple avec l'interface de ligne de commande
Pour savoir comment accéder aux options d'export NFS dans la CLI, reportez-vous à la section Setting NFS Export Options.
oci fs export update --export-id <File_System_A_export_OCID> --export-options \
'[{"source":"0.0.0.0/0","require-privileged-source-port":"false","access":"READ_WRITE","identitysquash":"ROOT","anonymousuid":"65534","anonymousgid":"65534"}]'