Utilisation du chiffrement TLS en transit
Le chiffrement en transit à l'aide de oci-fss-utils
ou de stunnel permet de sécuriser vos données entre des instances et des systèmes de fichiers montés à l'aide du chiffrement TLS v.1.3 (Sécurité de la couche de transport). Avec d'autres méthodes de sécurité telles qu'Oracle Cloud Infrastructure Vault et le chiffrement au repos du service File Storage, le chiffrement en transit fournit une sécurité de bout en bout.
Si vous utilisez Kerberos pour l'authentification, l'option de sécurité KRB5P fournit l'authentification sur NFS, l'intégrité des données (modification non autorisée des données en transit) et la confidentialité des données comme autre option de chiffrement en transit.
- Pour des informations générales sur le démarrage avec les systèmes de fichiers, voir Aperçu du service de stockage de fichiers.
- Pour plus d'informations sur le service de chambre forte, voir Aperçu du service de chambre forte.
- Pour plus d'informations sur la sécurisation de votre système de fichiers, voir À propos de la sécurité du service de stockage de fichiers et Sécurisation du service de stockage de fichiers dans le Guide sur la sécurité.
Le chiffrement en transit à l'aide de oci-fss-utils
ou de stunnel ne nécessite aucune mise à jour de la cible de montage ou de la configuration d'exportation de votre système de fichiers, mais les étapes diffèrent pour les utilisateurs Linux et les utilisateurs Windows.
Préalables
Ajoutez les règles requises à la liste de sécurité pour le sous-réseau de la cible de montage. Vous pouvez également ajouter les règles suivantes à un groupe de sécurité de réseau, puis ajouter la cible de montage au groupe. Pour plus d'informations et des instructions sur l'ajout de règles de liste de sécurité pour le service de stockage de fichiers, voir Configuration de règles de sécurité de réseau VCN pour le service de stockage de fichiers, notamment Scénario C : La cible de montage et l'instance utilisent le chiffrement en transit TLS.
Seules les règles pour le port TCP 2051 sont requises pour l'accès chiffré.
Chiffrement en transit pour les utilisateurs Linux
Pour activer le chiffrement en transit, vous installez un ensemble nommé oci-fss-utils
sur l'instance. L'outil oci-fss-utils
est disponible pour les types d'instance suivants :
- Oracle Linux, CentOS 7 x86
- Oracle Linux, CentOS 8 x86
- Oracle Linux, CentOS 9 x86
- Oracle Linux, CentOS 7 bras*
- Oracle Linux, CentOS 8 bras*
- Oracle Linux, CentOS 9 bras*
*Oracle propose une plate-forme de calcul basée sur ARM, basée sur le processeur Ampere Altra. Pour plus d'informations, voir Calcul basé sur ARM.
Comment le chiffrement en transit est activé
L'ensemble oci-fss-utils
crée un espace de noms de réseau et une interface réseau virtuelle sur votre instance et fournit un point d'extrémité NFS local. L'ensemble oci-fss-utils
exécute également un processus de redirection en arrière-plan nommé oci-fss-forwarder
.
L'espace de noms de réseau isole le processus de transfert de l'environnement réseau de l'instance. L'interface réseau virtuelle fournit une adresse IP unique au processus redirecteur. Le point d'extrémité NFS local fournit les fonctions de connexion NFS.
Le système de fichiers est monté à l'aide d'une commande spéciale qui lance le chiffrement. Une fois le système de fichiers monté, le processus oci-fss-forwarder
connecte le client NFS local au point d'extrémité NFS. Le processus reçoit ensuite les demandes du client NFS, les chiffre et les envoie à la cible de montage à l'aide d'un tunnel TLS.
Voici les étapes générales pour configurer le chiffrement en transit :
- Assurez-vous de respecter les préalables avant de configurer le chiffrement en transit.
-
Installer l'ensemble
oci-fss-utils
.- Si vous utilisez Oracle Linux, voir 1. Installer l'ensemble OCI-FSS-UTILS.
- Si vous utilisez CentOS, voir Installation manuelle et hors ligne.
- Utiliser la commande de chiffrement en transit pour monter le système de fichiers. Pour les instructions, voir 2. Montez le système de fichiers avec la commande de chiffrement.
Limites et points à considérer
- L'ensemble d'installation de chiffrement en transit est distribué en tant que fichier RPM pour Oracle Linux et CentOS. Les utilisateurs d'Oracle Linux peuvent installer l'ensemble à l'aide de yum. Il peut également être téléchargé à partir du référentiel yum pour Oracle Linux.
- Vous devez installer l'ensemble
oci-fss-utils
sur chaque instance nécessitant un accès chiffré à une cible de montage. - Le nombre de connexions NFS/TLS chiffrées pour une seule cible de montage est limité à 4096.
- Les noms d'hôte DNS ne sont pas pris en charge pour le montage de systèmes de fichiers chiffrés avec
oci-fss-forwarder
. Utilisez l'adresse IP de la cible de montage pour monter des systèmes de fichiers chiffrés.
Si vous n'utilisez pas la dernière version de l'ensemble
oci-fss-utils
, vous pourriez rencontrer des échecs de connexion SSL. Les échecs de connexion SSL peuvent entraîner l'échec des opérations NFSv3. Nous vous recommandons de toujours effectuer une mise à niveau vers la dernière version de l'ensemble oci-fss-utils
dès qu'il est disponible. Voir Notes de version du stockage de fichiers pour plus d'informations sur les nouvelles versions de RPM.
Configuration du chiffrement en transit pour Linux
Les utilisateurs d'Oracle Linux peuvent installer directement l'utilitaire TLS à partir du référentiel yum d'Oracle Linux.
- Ouvrez une fenêtre de terminal sur l'instance de destination.
-
Assurez-vous que le référentiel yum pour les développeurs Oracle est activé pour la version d'Oracle Linux à l'aide de la commande suivante :
sudo yum-config-manager --enable ol<oracle_linux_major_version>_developer
Installez l'ensemble à l'aide de la commande suivante :
sudo yum install oci-fss-utils
L'ensemble crée un espace de noms nommé ns1
dans votre instance, qui contient une interface réseau par défaut pour le trafic Ethernet. Une paire d'interfaces réseaux est créée pour chaque cible de montage.
Une fois l'installation terminée, passez à 2. Montez le système de fichiers avec la commande de chiffrement.
L'accès Internet est requis pour télécharger l'ensemble d'installation RPM. Si l'instance de destination ne dispose pas d'un accès Internet, vous pouvez télécharger le RPM vers une instance intermédiaire de votre réseau, puis utiliser la commande scp
pour copier, en toute sécurité, le RPM de l'instance intermédiaire vers l'instance de destination.
La commande scp
requiert une paire de clés SSH pour authentifier un utilisateur distant. Si vos instances sont des systèmes de type UNIX, il est probable que l'utilitaire ssh-keygen
soit déjà installé. Pour vérifier s'il est installé, ouvrez un écran ou une fenêtre de terminal et entrez ssh-keygen
dans la ligne de commande. S'il n'est pas installé, vous pouvez obtenir OpenSSH pour UNIX à l'adresse http://www.openssh.com/portable.html.
-
(Facultatif) Créez un répertoire pour l'ensemble d'installation RPM sur l'instance de destination. Par exemple :
sudo mkdir -p /<rpm_directory_name>
-
Téléchargez le dernier ensemble
oci-fss-utils
à partir du référentiel yum Oracle Linux dans le répertoire de l'instance de destination ou dans une instance intermédiaire de votre réseau.- Dans la page Référentiel yum pour Oracle Linux, sous Parcourir les référentiels, sélectionnez une version d'Oracle Linux.
- Sous Ensembles pour le test et le développement, recherchez Ensembles pour développeurs, puis sélectionnez le type d'architecture Linux, par exemple x86_64 ou aarch64.
-
Recherchez et sélectionnez la dernière version de l'ensemble
oci-fss-utils
. Pour plus d'informations sur la dernière version, voir Notes de version pour le service de stockage de fichiers.
-
Si vous avez téléchargé l'ensemble vers une instance intermédiaire, ouvrez une fenêtre de terminal sur l'instance intermédiaire et utilisez la commande
scp
pour copier, en toute sécurité, le RPM de l'instance intermédiaire vers l'instance de destination. Par exemple :scp -i <private_key> <downloaded_file_name> <username>@<destination_public_ip_address>:/<rpm_directory_name>
Ignorez cette étape si vous avez téléchargé l'ensemble directement dans l'instance de destination.
-
Si le nom de fichier du package téléchargé n'inclut pas la version et l'architecture du package, utilisez la commande suivante pour identifier le fichier RPM à installer :
rpm -qp <downloaded_file_name>
Une fois le package identifié, renommez le fichier à l'aide du RPM retourné par l'interrogation. Par exemple :
mv <downloaded_file_name> $(rpm -qp <downloaded_file_name>).rpm
-
Installez l'ensemble à l'aide de la commande suivante :
sudo yum localinstall oci-fss-utils-<version>.rpm
L'ensemble crée un espace de noms nommé ns1
dans l'instance, qui contient une interface réseau par défaut pour le trafic Ethernet. Une paire d'interfaces réseaux est créée pour chaque cible de montage.
Une fois l'installation terminée, passez à 2. Montez le système de fichiers avec la commande de chiffrement.
- Ouvrez une fenêtre de terminal dans l'instance.
-
Créez un point de montage en entrant ce qui suit :
yourmountpoint
est remplacé par le répertoire local à partir duquel vous voulez accéder au système de fichiers.sudo mkdir -p /mnt/yourmountpoint
-
Montez le système de fichiers à l'aide de la commande suivante :
sudo mount -t oci-fss 10.x.x.x:/fs-export-path /mnt/yourmountpoint
Remplacez
10.x.x.x:
par l'adresse IP de sous-réseau local affectée à la cible de montage,fs-export-path
par le chemin d'exportation que vous avez spécifié lors de l'association du système de fichiers avec la cible de montage, etyourmountpoint
par le point de montage local. Le chemin d'exportation est le chemin du système de fichiers (relatif à l'adresse IP de la cible de montage).Si vous avez installéoci-fss-utils
version 2.0-1 ou ultérieure, vous pouvez monter le système de fichiers en mode approuvé FIPS en incluant-o fips
dans la commande de montage. Par exemple :sudo mount -t oci-fss -o fips 10.x.x.x:/fs-export-path /mnt/yourmountpoint
Important
Les noms d'hôte DNS ne sont pas pris en charge pour le montage de systèmes de fichiers avec la commandemount -t oci-fss
. Vous devez utiliser l'adresse IP de la cible de montage.Chaque fois que vous montez un système de fichiers à l'aide de cette commande, le service
systemd-managed
crée un nouveau serviceoci-fss-forwarder
avec un nom tel queoci-fss-0<number>.service
.Conseil
Par défaut, le client NFS de l'outil utilise des ports réservés lors du montage. Utilisez l'option de montage
noresvport
si vous devez utiliser des ports sans privilèges.
Gestion du chiffrement en transit pour Linux
Le montage automatique garantit qu'un système de fichiers est remonté automatiquement sur une instance si celle-ci est redémarrée.
- Ouvrez une fenêtre de terminal sur l'instance. Montez le système de fichiers, comme indiqué sous 2. Montez le système de fichiers avec la commande de chiffrement.
-
Ouvrez le fichier
/etc/fstab
pour modification :cd /etc
vi fstab
-
Ajoutez la ligne suivante au fichier
fstab
:10.x.x.x:/fs-export-path /mnt/yourmountpoint oci-fss x-systemd.requires=oci-fss-init.service,defaults,nofail 0 0
Remplacez
10.x.x.x:
par l'adresse IP de sous-réseau local affectée à votre cible de montage,fs-export-path
par le chemin d'exportation que vous avez spécifié lors de l'association du système de fichiers avec la cible de montage, etyourmountpoint
par le chemin du point de montage local.Si vous avez installéoci-fss-utils
version 2.0-1 ou supérieure, vous pouvez monter le système de fichiers en mode approuvé FIPS en incluant-o fips
dans la commande de montage. Par exemple :10.x.x.x:/fs-export-path /mnt/yourmountpoint oci-fss x-systemd.requires=oci-fss-init.service,defaults,nofail,fips 0 0
Important
Les noms d'hôte DNS ne sont pas pris en charge actuellement pour le montage de systèmes de fichiers avec la commandemount -t oci-fss
. Vous devez utiliser l'adresse IP de la cible de montage.Conseil
Vous pouvez utiliser l'option
resvport
pour forcer le client à utiliser un port réservé spécifique. Par exemple :10.x.x.x:/fs-export-path /mnt/yourmountpoint oci-fss x-systemd.requires=oci-fss-init.service,defaults,nofail,resvport=900 0 0
Lorsque vous démontez un système de fichiers, vous devez utiliser une autre commande oci-fss-utils
pour vous assurer que l'espace de noms de réseau local qui lui est associé est supprimé :
- Ouvrez une fenêtre de terminal sur l'instance.
-
Utilisez la commande suivante pour démonter le système de fichiers :
sudo umount -t oci-fss /mnt/yourmountpoint
Remplacez
yourmountpoint
par le chemin du point de montage local.
Si vous utilisez une version obsolète de l'utilitaire oci-fss-utils
, telle que oci-fss-utils-3.x
, ou si vous voulez tirer parti des nouvelles fonctions, vous pouvez effectuer une mise à niveau vers une version plus récente. Vous trouverez des informations sur la version dans les notes de version sur le service de stockage de fichiers.
Lors de la mise à niveau de oci-fss-utils
vers une nouvelle version, les nouveaux paramètres, tels qu'une nouvelle adresse IP ou un nom de processus de transfert TLS, ne seront pas appliqués tant que le système de fichiers n'aura pas été remonté.
Le montage est requis si vous mettez à niveau l'utilitaire
oci-fss-utils
afin que le client TLS puisse utiliser une adresse IPv6. Les applications utilisant le système de fichiers monté subiront un temps d'arrêt pendant que vous remontez le système de fichiers.- Ouvrez une fenêtre de terminal sur l'instance de destination.
-
Mettez à niveau le package.
-
Les utilisateurs d'Oracle Linux peuvent mettre à niveau
oci-fss-utils
à partir du référentiel yum d'Oracle Linux. Assurez-vous que le référentiel yum pour les développeurs Oracle est activé pour la version d'Oracle Linux à l'aide de la commande suivante :sudo yum-config-manager --enable ol<oracle_linux_major_version>_developer
Mettez ensuite à niveau l'ensemble à l'aide de la commande suivante :
sudo yum update -y oci-fss-utils
-
Si vous n'utilisez pas Oracle Linux, téléchargez le dernier ensemble
oci-fss-utils
à partir du référentiel yum d'Oracle Linux. Pour obtenir des instructions, voir Installation manuelle et hors ligne. Mettez ensuite à niveau l'ensemble à l'aide de la commande suivante :sudo yum localinstall -y oci-fss-utils-<version>.rpm
-
-
Après la mise à niveau, vérifiez la version de
oci-fss-utils
à l'aide de la commande suivante :sudo rpm -qa | grep oci-fss-utils
- Démontez le système de fichiers et remontez le système de fichiers afin que les nouveaux paramètres puissent prendre effet.
- Tout d'abord, démontez tous les systèmes de fichiers montés. Pour obtenir des instructions, voir Démonter un système de fichiers.
- Ouvrez une fenêtre de terminal sur l'instance.
-
Pour désinstaller l'ensemble
oci-fss
, entrez la commande suivante :sudo yum remove oci-fss-utils
Chiffrement en transit pour les utilisateurs Windows
Les clients Windows peuvent utiliser stunnel pour activer le chiffrement en transit dans les systèmes de fichiers.
Limites et points à considérer
- Le nombre de connexions NFS/TLS chiffrées pour une seule cible de montage est limité à 64. Cette limite est induite par les exigences en mémoire de TLS. Contrairement aux connexions NFS, les connexions TLS ne partagent pas de mémoires tampons. Ainsi, une fois une connexion TLS établie, la mémoire qui lui est affectée lui reste dédiée.
- Les noms d'hôte DNS ne sont pas pris en charge pour le montage de systèmes de fichiers chiffrés. Utilisez l'adresse IP de la cible de montage pour monter des systèmes de fichiers chiffrés.
Configuration du chiffrement en transit pour Windows
Ces instructions décrivent comment installer et configurer stunnel pour utiliser le chiffrement en transit avec vos systèmes de fichiers. Assurez-vous de respecter les préalables avant de configurer le chiffrement en transit.
Vous pouvez automatiser ce processus à l'aide d'un script par lots qui contient les étapes suivantes.
Tâches de configuration
-
Ouvrez Windows PowerShell sur votre instance cible et utilisez la commande suivante pour installer le client NFS Windows :
Install-WindowsFeature NFS-Client
Une fois le client installé, passez à Tâche 2 : Télécharger et installer stunnel.
-
Téléchargez et installez stunnel à partir de https://www.stunnel.org/downloads.html.
Note
La dernière étape d'installation demande des informations sur le certificat. L'entrée d'une valeur dans ce champ est facultative.Par défaut, stunnel est installé dans le répertoire suivant :
C:\Program Files (x86)\stunnel
-
Ouvrez le fichier
C:\Program Files (x86)\stunnel\config\stunnel.cfg
pour le modifier et spécifiez la configuration suivante :[mount] client=yes accept=127.0.0.1:2048 connect=10.0.1.155:2051 [nfs] client=yes accept=127.0.0.1:2049 connect=10.0.1.155:2051 [nlm] client=yes accept=127.0.0.1:2050 connect=10.0.1.155:2051 [rpcbind] client=yes accept=127.0.0.1:111 connect=10.0.1.155:2051
-
Démarrez stunnel à l'aide de
C:\Program Files (x86)\stunnel\bin\tstunnel.exe
.
Ouvrez une invite de commande et entrez la série de commandes suivantes :
-
Montez le système de fichiers :
mount \\127.0.0.1\fss z:
-
Testez la connexion au système de fichiers en listant le contenu du répertoire :
dir z:
-
Démontez le système de fichiers :
umount z: