TLS-Verschlüsselung während der Übertragung verwenden
Die Verschlüsselung während der Übertragung mit oci-fss-utils
oder stunnel bietet eine Möglichkeit, Ihre Daten zwischen Instanzen und gemounteten Dateisystemen mit TLS v.1.3-(Transport Layer Security-)Verschlüsselung zu sichern. Zusammen mit anderen Sicherheitsmethoden wie Oracle Cloud Infrastructure Vault und der Data-at-Rest-Verschlüsselung von File Storage bietet die Verschlüsselung während der Übertragung End-to-End-Sicherheit.
Wenn Sie Kerberos für die Authentifizierung verwenden, bietet die Sicherheitsoption KRB5P die Authentifizierung über NFS, die Datenintegrität (nicht autorisierte Änderung von Daten während der Übertragung) und den Datenschutz als alternative Verschlüsselungsoption während der Übertragung.
- Allgemeine Informationen zu den ersten Schritten mit Dateisystemen finden Sie unter Überblick über File Storage.
- Weitere Informationen über den Vault-Service finden Sie in Überblick über Vault.
- Weitere Informationen zur Sicherung des Dateisystems finden Sie unter File Storage-Sicherheit und File Storage sichern in der Sicherheitsdokumentation.
Für Verschlüsselung während der Übertragung mit oci-fss-utils
oder stunnel sind keine Aktualisierungen des Mountziels oder der Exportkonfiguration des Dateisystems erforderlich. Die Schritte unterscheiden sich jedoch für Benutzer von Linux und von Windows.
Voraussetzungen
Fügen Sie der Sicherheitsliste die erforderlichen Regeln für das Subnetz des Mountziels hinzu. Alternativ können Sie die folgenden Regeln zu einer Netzwerksicherheitsgruppe (NSG) und anschließend das Mountziel zur NSG hinzufügen. Weitere Informationen und Anweisungen zum Hinzufügen von Sicherheitslistenregeln für File Storage finden Sie unter VCN-Sicherheitsregeln für File Storage konfigurieren, insbesondere Szenario C: Mountziel und Instanz verwenden TLS-Verschlüsselung während der Übertragung.
Für den verschlüsselten Zugriff sind nur die Regeln für TCP-Port 2051 erforderlich.
Verschlüsselung während der Übertragung für Linux-Benutzer
Um die Verschlüsselung während der Übertragung zu aktivieren, installieren Sie ein Package namens oci-fss-utils
auf der Instanz. Das Tool oci-fss-utils
ist für folgende Instanztypen verfügbar:
- Oracle Linux, CentOS 7 x86
- Oracle Linux, CentOS 8 x86
- Oracle Linux, CentOS 9 x86
- Oracle Linux, CentOS 7 Arm*
- Oracle Linux, CentOS 8 Arm*
- Oracle Linux, CentOS 9 Arm*
* Oracle bietet eine ARM-basierte Compute-Plattform auf Basis des Ampere Altra-Prozessors an. Weitere Informationen finden Sie unter ARM-basierte Compute-Ausprägungen.
Aktivierung der Verschlüsselung während der Übertragung
Das Package oci-fss-utils
erstellt einen Netzwerk-Namespace und eine virtuelle Netzwerkschnittstelle auf der Instanz und stellt einen lokalen NFS-Endpunkt bereit. Das Package oci-fss-utils
führt auch einen Weiterleitungsprozess im Hintergrund namens oci-fss-forwarder
aus.
Der Netzwerk-Namespace isoliert den Weiterleitungsprozess von der Netzwerkumgebung der Instanz. Die virtuelle Netzwerkschnittstelle bietet dem Weiterleitungsprozess eine eindeutige IP-Adresse. Der lokale NFS-Endpunkt sorgt für die NFS-Verbindungsfähigkeit.
Das Dateisystem wird mit einem speziellen Befehl gemountet, durch den die Verschlüsselung initiiert wird. Nachdem das Dateisystem gemountet wurde, wird der lokale NFS-Client durch den oci-fss-forwarder
-Prozess mit dem NFS-Endpunkt verbunden. Dann empfängt der Prozess Anforderungen vom NFS-Client, verschlüsselt diese und sendet sie über einen TLS-Tunnel an das Mountziel.
Im Folgenden werden die allgemeinen Schritte beim Einrichten der Verschlüsselung während der Übertragung aufgeführt:
- Stellen Sie sicher, dass alle Voraussetzungen erfüllt sind, bevor Sie die Verschlüsselung während der Übertragung einrichten.
-
Installieren Sie das Package
oci-fss-utils
.- Wenn Sie Oracle Linux verwenden, finden Sie weitere Informationen unter 1. Installieren Sie das OCI-FSS-UTILS-Package.
- Wenn Sie CentOS verwenden, lesen Sie Manuelle und Offlineinstallation.
- Mounten Sie das Dateisystem mit dem Befehl für die Verschlüsselung während der Übertragung. Anweisungen hierzu finden Sie unter 2. Mounten Sie das Dateisystem mit dem Verschlüsselungsbefehl.
Einschränkungen und Überlegungen
- Das Installationspackage für die Verschlüsselung während der Übertragung wird als RPM für Oracle Linux und CentOS verteilt. Oracle Linux-Benutzer können das Package mit yum installieren. Sie kann auch aus dem Oracle Linux yum Repository heruntergeladen werden.
- Sie müssen das Package
oci-fss-utils
auf jeder Instanz installieren, die verschlüsselten Zugriff auf ein Mountziel erfordert. - Die Anzahl der verschlüsselten NFS/TLS-Verbindungen für ein einzelnes Mountziel ist auf 4096 begrenzt.
- DNS-Hostnamen werden für das Mounten verschlüsselter Dateisysteme mit
oci-fss-forwarder
nicht unterstützt. Verwenden Sie für das Mounten verschlüsselter Dateisysteme die IP-Adresse des Mountziels.
Wenn Sie nicht die neueste Version des
oci-fss-utils
-Packages verwenden, kann es zu SSL-Verbindungsfehlern kommen. SSL-Verbindungsfehler können dazu führen, dass NFSv3-Vorgänge nicht erfolgreich ausgeführt werden können. Es wird empfohlen, immer ein Upgrade auf die neueste Version des oci-fss-utils
-Packages durchzuführen, sobald diese verfügbar ist. Informationen zu neuen RPM-Versionsreleases finden Sie in den Versionshinweisen zu File Storage.
Verschlüsselung während der Übertragung für Linux einrichten
Oracle Linux-Benutzer können das TLS-Utility direkt aus dem Oracle Linux yum-Repository installieren.
- Öffnen Sie ein Terminalfenster auf der Zielinstanz.
-
Stellen Sie mit dem folgenden Befehl sicher, dass das Oracle-Entwickler-yum-Repository für die Oracle Linux-Version aktiviert ist:
sudo yum-config-manager --enable ol<oracle_linux_major_version>_developer
Installieren Sie das Package mit dem folgenden Befehl:
sudo yum install oci-fss-utils
Das Package erstellt einen Namespace namens ns1
auf Ihrer Instanz, der eine Standardnetzwerkschnittstelle für Ethernettraffic enthält. Für jedes Mountziel wird ein Netzwerkschnittstellenpaar erstellt.
Wenn das Package vollständig installiert wurde, gehen Sie zu 2. Mounten Sie das Dateisystem mit dem Verschlüsselungsbefehl.
Um das RPM-Installationspackage herunterzuladen, ist ein Internetzugriff erforderlich. Wenn die Zielinstanz über keinen Internetzugriff verfügt, können Sie das RPM-Package auf eine Staging-Instanz in Ihrem Netzwerk herunterladen und dann mit dem Befehl scp
sicher von der Staging-Instanz in die Zielinstanz kopieren.
Für den Befehl scp
ist ein SSH-Schlüsselpaar erforderlich, um einen Remotebenutzer zu authentifizieren. Wenn sich Ihre Instanzen auf UNIX-Systemen befinden, ist das Utility ssh-keygen
wahrscheinlich bereits installiert. Um zu prüfen, ob es installiert ist, öffnen Sie eine Shell oder ein Terminal, und geben Sie ssh-keygen
in die Befehlszeile ein. Wenn es nicht installiert ist, finden Sie OpenSSH für UNIX unter http://www.openssh.com/portable.html.
-
(Optional) Erstellen Sie ein Verzeichnis für das RPM-Installationspackage auf der Zielinstanz. Beispiel:
sudo mkdir -p /<rpm_directory_name>
-
Laden Sie das neueste
oci-fss-utils
-Package aus dem Oracle Linux yum-Repository in das Verzeichnis auf der Zielinstanz oder in eine Staging-Instanz im Netzwerk herunter.- Wählen Sie auf der Seite Oracle Linux-yum-Repository unter Repositorys durchsuchen eine Oracle Linux-Version aus.
- Suchen Sie unter Packages für Test und Entwicklung nach Entwicklerpackages, und wählen Sie dann den Linux-Architekturtyp aus, z.B. x86_64 oder aarch64.
-
Suchen und wählen Sie die neueste Version des
oci-fss-utils
-Packages aus. Weitere Informationen zur neuesten Version finden Sie in den Versionshinweisen zu File Storage.
-
Wenn Sie das Package in eine Staging-Instanz heruntergeladen haben, öffnen Sie ein Terminalfenster auf der Staging-Instanz, und kopieren Sie das RPM mit dem Befehl
scp
sicher aus der Staging-Instanz in die Zielinstanz. Beispiel:scp -i <private_key> <downloaded_file_name> <username>@<destination_public_ip_address>:/<rpm_directory_name>
Überspringen Sie diesen Schritt, wenn Sie das Package direkt in die Zielinstanz heruntergeladen haben.
-
Wenn der Dateiname des heruntergeladenen Packages die Packageversion und Architektur nicht enthält, verwenden Sie den folgenden Befehl, um die zu installierende RPM-Datei zu identifizieren:
rpm -qp <downloaded_file_name>
Nachdem das Package identifiziert wurde, benennen Sie die Datei mit dem von der Abfrage zurückgegebenen RPM um. Beispiel:
mv <downloaded_file_name> $(rpm -qp <downloaded_file_name>).rpm
-
Installieren Sie das Package mit dem folgenden Befehl:
sudo yum localinstall oci-fss-utils-<version>.rpm
Das Package erstellt einen Namespace namens ns1
auf der Instanz, der eine Standardnetzwerkschnittstelle für Ethertraffic enthält. Für jedes Mountziel wird ein Netzwerkschnittstellenpaar erstellt.
Wenn das Package vollständig installiert wurde, gehen Sie zu 2. Mounten Sie das Dateisystem mit dem Verschlüsselungsbefehl.
- Öffnen Sie ein Terminalfenster auf der Instanz.
-
Erstellen Sie einen Mount Point, indem Sie Folgendes eingeben, und ersetzen Sie dabei
yourmountpoint
durch das lokale Verzeichnis, über das Sie auf das Dateisystem zugreifen möchten.sudo mkdir -p /mnt/yourmountpoint
-
Mounten Sie das Dateisystem mit dem folgenden Befehl:
sudo mount -t oci-fss 10.x.x.x:/fs-export-path /mnt/yourmountpoint
Ersetzen Sie
10.x.x.x:
durch die IP-Adresse des lokalen Subnetzes, die dem Mount-Ziel zugewiesen ist,fs-export-path
durch den Exportpfad, den Sie beim Verknüpfen des Dateisystems mit dem Mount-Ziel angegeben haben, undyourmountpoint
durch den Pfad zum lokalen Mount Point. Der Exportpfad ist der Pfad zum Dateisystem (relativ zur IP-Adresse des Mountziels).Wenn Sieoci-fss-utils
Version 2.0-1 oder höher installiert haben, können Sie das Dateisystem im FIPS-genehmigten Modus mounten, indem Sie-o fips
in den Mountbefehl aufnehmen. Beispiel:sudo mount -t oci-fss -o fips 10.x.x.x:/fs-export-path /mnt/yourmountpoint
Wichtig
Für das Mounten von Dateisystemen mit dem Befehlmount -t oci-fss
werden DNS-Hostnamen nicht unterstützt. Verwenden Sie stattdessen die IP-Adresse des Mountziels.Jedes Mal, wenn Sie ein Dateisystem mit diesem Befehl mounten, erstellt der
systemd-managed
-Service einen neuenoci-fss-forwarder
-Service mit einem Namen wieoci-fss-0<number>.service
.Tipp
Standardmäßig verwendet der NFS-Client des Tools beim Einhängen reservierte Ports. Verwenden Sie die Mountoption
noresvport
, wenn Sie nicht privilegierte Ports verwenden müssen.
Verschlüsselung während der Übertragung für Linux verwalten
Beim automatischen Mounten wird sichergestellt, dass ein Dateisystem beim Neustart automatisch auf einer Instanz neu gemountet wird.
- Öffnen Sie ein Terminalfenster auf der Instanz. Hängen Sie das Dateisystem wie unter 2 beschrieben ein. Mounten Sie das Dateisystem mit dem Verschlüsselungsbefehl.
-
Öffnen Sie die Datei
/etc/fstab
zur Bearbeitung:cd /etc
vi fstab
-
Fügen Sie der Datei
fstab
folgende Zeile hinzu:10.x.x.x:/fs-export-path /mnt/yourmountpoint oci-fss x-systemd.requires=oci-fss-init.service,defaults,nofail 0 0
Ersetzen Sie
10.x.x.x:
durch die dem Mountziel zugewiesene IP-Adresse des lokalen Subnetzes,fs-export-path
durch den Exportpfad, den Sie beim Verknüpfen des Dateisystems mit dem Mountziel angegeben haben, undyourmountpoint
durch den Pfad zum lokalen Mount Point.Wenn Sieoci-fss-utils
Version 2.0-1 oder höher installiert haben, können Sie das Dateisystem im FIPS-genehmigten Modus mounten, indem Sie-o fips
in den Mountbefehl aufnehmen. Beispiel:10.x.x.x:/fs-export-path /mnt/yourmountpoint oci-fss x-systemd.requires=oci-fss-init.service,defaults,nofail,fips 0 0
Wichtig
Für das Mounten von Dateisystemen mit dem Befehlmount -t oci-fss
werden DNS-Hostnamen derzeit nicht unterstützt. Verwenden Sie stattdessen die IP-Adresse des Mountziels.Tipp
Mit der Option
resvport
können Sie den Client auf einen bestimmten reservierten Port beschränken. Beispiel:10.x.x.x:/fs-export-path /mnt/yourmountpoint oci-fss x-systemd.requires=oci-fss-init.service,defaults,nofail,resvport=900 0 0
Wenn Sie ein Dateisystem unmounten, müssen Sie einen anderen oci-fss-utils
-Befehl verwenden, um sicherzustellen, dass der verknüpfte lokale Netzwerk-Namespace entfernt wird:
- Öffnen Sie ein Terminalfenster auf der Instanz.
-
Mit dem folgenden Befehl können Sie das Dateisystem unmounten:
sudo umount -t oci-fss /mnt/yourmountpoint
Ersetzen Sie
yourmountpoint
durch den Pfad zum lokalen Mount Point.
Wenn Sie eine veraltete Version des oci-fss-utils
-Utilitys verwenden, wie oci-fss-utils-3.x
, oder Sie neue Features nutzen möchten, können Sie ein Upgrade auf eine neuere Version durchführen. Versionsinformationen finden Sie in den Versionshinweisen zu File Storage.
Beim Upgrade von oci-fss-utils
auf eine neue Version werden neue Einstellungen, wie eine neue IP-Adresse oder ein TLS-Forwarder-Prozessname, erst nach dem erneuten Mounten des Dateisystems angewendet.
Ein erneutes Mounten ist erforderlich, wenn Sie das Utility
oci-fss-utils
upgraden, damit der TLS-Client eine IPv6-Adresse verwenden kann. Bei Anwendungen, die das gemountete Dateisystem verwenden, treten beim erneuten Mounten des Dateisystems Ausfallzeiten auf.- Öffnen Sie ein Terminalfenster auf der Zielinstanz.
-
Aktualisieren Sie das Paket.
-
Oracle Linux-Benutzer können
oci-fss-utils
aus dem Oracle Linux yum-Repository upgraden. Stellen Sie mit dem folgenden Befehl sicher, dass das Oracle-Entwickler-yum-Repository für die Oracle Linux-Version aktiviert ist:sudo yum-config-manager --enable ol<oracle_linux_major_version>_developer
Führen Sie dann ein Upgrade des Packages mit dem folgenden Befehl aus:
sudo yum update -y oci-fss-utils
-
Wenn Sie Oracle Linux nicht verwenden, laden Sie das neueste
oci-fss-utils
-Package aus dem Oracle Linux-yum-Repository herunter. Weitere Anweisungen finden Sie in Manuelle und Offline-Installation. Führen Sie dann ein Upgrade des Packages mit dem folgenden Befehl aus:sudo yum localinstall -y oci-fss-utils-<version>.rpm
-
-
Prüfen Sie nach dem Upgrade die Version von
oci-fss-utils
mit dem folgenden Befehl:sudo rpm -qa | grep oci-fss-utils
- Unmounten Sie das Dateisystem, und mounten Sie das Dateisystem, damit neue Einstellungen wirksam werden.
- Unmounten Sie zuerst alle gemounteten Dateisysteme. Anweisungen hierzu finden Sie unter Unmount a file system.
- Öffnen Sie ein Terminalfenster auf der Instanz.
-
Geben Sie den folgenden Befehl ein, um das
oci-fss
-Package zu deinstallieren:sudo yum remove oci-fss-utils
Verschlüsselung während der Übertragung für Windows-Benutzer
Windows-Clients können stunnel verwenden, um die Verschlüsselung während der Übertragung für Dateisysteme zu aktivieren.
Einschränkungen und Überlegungen
- Die Anzahl der verschlüsselten NFS/TLS-Verbindungen für ein einzelnes Mountziel ist auf 64 begrenzt. Diese Einschränkung gilt aufgrund von TLS-Speicheranforderungen. Im Gegensatz zu NFS-Verbindungen verwenden TLS-Verbindungen keine gemeinsamen Speicherpuffer. Sobald also eine TLS-Verbindung hergestellt wurde, behält sie den zugewiesenen Speicher bei.
- DNS-Hostnamen werden für das Mounten verschlüsselter Dateisysteme nicht unterstützt. Verwenden Sie für das Mounten verschlüsselter Dateisysteme die IP-Adresse des Mountziels.
Verschlüsselung während der Übertragung für Windows einrichten
In diesen Anweisungen wird beschrieben, wie Sie stunnel für die Verschlüsselung während der Übertragung für Ihre Dateisysteme installieren und einrichten. Stellen Sie sicher, dass alle Voraussetzungen erfüllt sind, bevor Sie die Verschlüsselung während der Übertragung einrichten.
Sie können diesen Prozess mit einem Batchskript automatisieren, das die folgenden Schritte enthält.
Setupaufgaben
-
Öffnen Sie Windows PowerShell auf der Zielinstanz, und installieren Sie mit dem folgenden Befehl den Windows NFS-Client:
Install-WindowsFeature NFS-Client
Fahren Sie nach der Installation des Clients mit Aufgabe 2: stunnel herunterladen und installieren fort.
-
Laden Sie stunnel von https://www.stunnel.org/downloads.html herunter, und installieren Sie es.
Hinweis
Im letzten Installationsschritt werden Zertifikatsinformationen angefordert. Die Eingabe eines Wertes hier ist optional.Standardmäßig wird stunnel in folgendem Verzeichnis installiert:
C:\Program Files (x86)\stunnel
-
Öffnen Sie die Datei
C:\Program Files (x86)\stunnel\config\stunnel.cfg
zur Bearbeitung, und geben Sie die folgende Konfiguration an:[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
-
Starten Sie stunnel mit
C:\Program Files (x86)\stunnel\bin\tstunnel.exe
.Fahren Sie mit Aufgabe 3: Mounten und Verbindung testen fort.
Öffnen Sie eine Eingabeaufforderung, und geben Sie folgende Befehlsfolge ein:
-
Mounten Sie das Dateisystem:
mount \\127.0.0.1\fss z:
-
Testen Sie die Verbindung zum Dateisystem, indem Sie den Inhalt des Verzeichnisses auflisten:
dir z:
-
Unmounten Sie das Dateisystem:
umount z: