View a markdown version of this page

Voraussetzungen für S3-Dateien - Amazon Simple Storage Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Voraussetzungen für S3-Dateien

Bevor Sie mit der Verwendung von S3 Files beginnen, stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllt haben.

AWS Konto und Compute-Setup

  • Sie haben ein AWS Konto.

  • Sie haben eine Rechenressource und einen S3-Bucket für allgemeine Zwecke in AWS der gewünschten Region, in der Sie Ihr Dateisystem erstellen möchten. Weitere Informationen finden Sie unter Erstellen eines Allzweck-Buckets.

  • In Ihrem S3-Bucket ist die Versionierung aktiviert. S3 Files erfordert S3 Versioning, um Änderungen zwischen Ihrem Dateisystem und Ihrem S3-Bucket zu synchronisieren. Weitere Informationen finden Sie unter Aktivieren des Versioning für Buckets.

  • Ihr S3-Bucket muss einen der folgenden Verschlüsselungstypen verwenden: Serverseitige Verschlüsselung mit von Amazon S3 verwalteten Schlüsseln (SSE-S3) oder Serverseitige Verschlüsselung mit AWS Key Management Service (AWS KMS) -Schlüsseln (SSE-KMS).

S3-Dateien-Client

Um S3 Files mit Amazon EC2 zu verwenden, müssen Sie den Client installierenamazon-efs-utils, eine gemeinsam genutzte Open-Source-Sammlung von Tools für Amazon EFS und Amazon S3 Files. Um mit S3-Dateien arbeiten zu können, benötigen Sie amazon-efs-utils Version 3.0.0 oder höher. Der Client enthält ein Mount-Helper-Programm, das das Mounten von S3-Dateisystemen vereinfacht und CloudWatch Amazon-Metriken zur Überwachung des Mount-Status Ihres Dateisystems aktiviert.

Schritt 1: Installieren Sie den Client

  • Greifen Sie über Secure Shell (SSH) auf das Terminal für Ihre Amazon EC2 EC2-Instance zu und melden Sie sich mit dem entsprechenden Benutzernamen an. Weitere Informationen finden Sie unter Connect to your EC2 Instance im Amazon Elastic Compute Cloud-Benutzerhandbuch.

  • Wenn Sie Amazon Linux verwenden, gehen Sie wie folgt vor, um efs-utils aus den Repositorys von Amazon zu installieren:

    sudo yum -y install amazon-efs-utils
  • Wenn Sie andere unterstützte Linux-Distributionen verwenden, können Sie Folgendes tun:

    curl https://amazon-efs-utils.aws.com/efs-utils-installer.sh | sudo sh -s -- --install
  • Informationen zu anderen Linux-Distributionen finden Sie unter Über andere Linux-Distributionen in der amazon-efs-utils README-Datei unter. GitHub

Schritt 2: Installieren Sie Botocore

Der amazon-efs-utils Client verwendet Botocore, um mit anderen Diensten zu interagieren. AWS Sie müssen beispielsweise Botocore installieren, um Amazon zur Überwachung Ihres Dateisystems verwenden CloudWatch zu können. Anweisungen zur Installation und Aktualisierung von Botocore finden Sie unter Botocore installieren in der README-Datei unter. amazon-efs-utils GitHub

Den FIPS-Modus für S3-Dateien aktivieren

Wenn Sie die Federal Information Processing Standards (FIPS) einhalten müssen, müssen Sie den FIPS-Modus im Client aktivieren. Um den FIPS-Modus zu aktivieren, muss die s3files-utils.conf Datei im Betriebssystem geändert werden.

Gehen Sie wie folgt vor, um den FIPS-Modus im Client für S3-Dateien zu aktivieren:

  1. Öffnen Sie mit einem Texteditor Ihrer Wahl die Datei /etc/amazon/efs/s3files-utils.conf.

  2. Suchen Sie die Zeile mit dem folgenden Text:

    fips_mode_enabled = false
  3. Ändern Sie den Text wie folgt:

    fips_mode_enabled = true
  4. Speichern Sie Ihre Änderungen.

IAM-Rollen und -Richtlinien

Um S3 Files verwenden zu können, müssen Sie IAM-Rollen und angehängte Richtlinien für zwei Zwecke konfigurieren:

  • Über das Dateisystem auf Ihren Bucket zugreifen

  • Ihr Dateisystem an AWS Rechenressourcen anhängen

IAM-Rolle für den Zugriff auf Ihren Bucket vom Dateisystem aus

Wenn Sie ein S3-Dateisystem erstellen, müssen Sie eine IAM-Rolle angeben, von der S3 Files annimmt, dass sie aus Ihrem S3-Bucket liest und in diesen schreibt. Diese Rolle ermöglicht es S3 Files, Änderungen zwischen Ihrem Dateisystem und Ihrem S3-Bucket zu synchronisieren. Die Rolle gewährt auch Berechtigungen zur Verwaltung von EventBridge Amazon-Regeln, die S3 Files verwendet, um Änderungen in Ihrem S3-Bucket zu erkennen und die Synchronisation auszulösen. Sie müssen außerdem sicherstellen, dass die Bucket-Richtlinien Ihres Quell-Buckets den Zugriff auf Ihre Rechenressource nicht verweigern.

Anmerkung

Wenn Sie mit der AWS Management Console ein Dateisystem erstellen, erstellt S3 Files automatisch diese IAM-Rolle mit den erforderlichen Berechtigungen.

Für diese IAM-Rolle ist Folgendes erforderlich:

  • Eine Inline-Richtlinie wie folgt:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "S3BucketPermissions", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:ListBucketVersions" ], "Resource": "arn:aws:s3:::bucket", "Condition": { "StringEquals": { "aws:ResourceAccount": "accountId" } } }, { "Sid": "S3ObjectPermissions", "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:DeleteObject*", "s3:GetObject*", "s3:List*", "s3:PutObject*" ], "Resource": "arn:aws:s3:::bucket/*", "Condition": { "StringEquals": { "aws:ResourceAccount": "accountId" } } }, { "Sid": "UseKmsKeyWithS3Files", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Encrypt", "kms:Decrypt", "kms:ReEncryptFrom", "kms:ReEncryptTo" ], "Condition": { "StringLike": { "kms:ViaService": "s3.region.amazonaws.com", "kms:EncryptionContext:aws:s3:arn": [ "arn:aws:s3:::bucket", "arn:aws:s3:::bucket/*" ] } }, "Resource": "arn:aws:kms:region:accountId:*" }, { "Sid": "EventBridgeManage", "Effect": "Allow", "Action": [ "events:DeleteRule", "events:DisableRule", "events:EnableRule", "events:PutRule", "events:PutTargets", "events:RemoveTargets" ], "Condition": { "StringEquals": { "events:ManagedBy": "elasticfilesystem.amazonaws.com" } }, "Resource": [ "arn:aws:events:*:*:rule/DO-NOT-DELETE-S3-Files*" ] }, { "Sid": "EventBridgeRead", "Effect": "Allow", "Action": [ "events:DescribeRule", "events:ListRuleNamesByTarget", "events:ListRules", "events:ListTargetsByRule" ], "Resource": [ "arn:aws:events:*:*:rule/*" ] } ] }

    Ersetzen Sie die Platzhalterwerte durch Ihre eigenen Werte.

    #PlaceholderDescriptionBeispiel
    1bucketDer Name Ihres S3-Bucketsmein Bucket
    2regionDie AWS Region Ihres Bucketsus-east-1
    3accountIdDeine AWS Konto-ID123456789012
  • Eine Vertrauensrichtlinie, die es S3 Files ermöglicht, die IAM-Rolle zu übernehmen. Fügen Sie der IAM-Rolle die folgende Vertrauensrichtlinie hinzu, damit der S3 Files-Dienst sie übernehmen kann. Ersetzen Sie accountId und region durch Ihre Werte.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowS3FilesAssumeRole", "Effect": "Allow", "Principal": { "Service": "elasticfilesystem.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" }, "ArnLike": { "aws:SourceArn": "arn:aws:s3files:region:accountId:file-system/*" } } } ] }

IAM-Rolle zum Anhängen Ihres Dateisystems an Rechenressourcen AWS

Ihren Rechenressourcen, auf denen Sie ein S3-Dateisystem bereitstellen, muss eine IAM-Rolle (z. B. ein EC2-Instance-Profil) mit Richtlinien zugewiesen sein, die es Ihrer Rechenressource ermöglichen, mit Ihrem S3-Dateisystem und Ihrem S3-Quell-Bucket zu interagieren. Sie müssen außerdem sicherstellen, dass die Bucket-Richtlinien Ihres Quell-Buckets den Zugriff auf Ihre Rechenressource nicht verweigern.

Fügen Sie der IAM-Rolle, die Ihrer Computing-Ressource zugewiesen ist, die folgenden beiden Richtlinien hinzu:

  • Berechtigungen für die Rechenressource, sich mit S3-Dateisystemen zu verbinden und mit ihnen zu interagieren

    Die IAM-Rolle muss Berechtigungen für den Mount-Helper enthalten, um eine Verbindung zu S3-Dateisystemen herzustellen und mit ihnen zu interagieren. Sie können eine AWS verwaltete Richtlinie anhängen, z. B. eine AmazonS3FilesClientFullAccess verwaltete Richtlinie, wenn Sie der Rechenressource vollen Lese- und Schreibzugriff auf Ihr S3-Dateisystem oder nur Lesezugriff gewähren möchten. AmazonS3FilesClientReadOnlyAccess Sie können die AmazonElasticFileSystemUtils verwaltete Richtlinie auch anhängen, wenn Sie die CloudWatch Amazon-Überwachung aktivieren möchten. Weitere Informationen und eine vollständige Liste der verfügbaren verwalteten Richtlinien für S3-Dateien finden Sie unter AWS Verwaltete Richtlinien für Amazon S3 S3-Dateien. Sie können diese Berechtigungen auch bereitstellen, indem Sie der IAM-Rolle Ihrer Rechenressource individuelle IAM-Berechtigungen wie s3files:ClientMount oder s3files:ClientWrite (nicht erforderlich für schreibgeschützte Verbindungen) hinzufügen.

  • Eine Inline-Richtlinie, die der Rechenressource Lesezugriff auf S3-Objekte gewährt

    Fügen Sie der IAM-Rolle die folgende Inline-Richtlinie hinzu. Diese Richtlinie gewährt der Rechenressource Berechtigungen zum direkten Lesen von Objekten aus dem verknüpften S3-Bucket in demselben Konto, um die Leseleistung zu optimieren. bucketErsetzen Sie es durch Ihren S3-Bucket-Namen oder den Bucket-Namen mit Präfix.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "S3ObjectReadAccess", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": "arn:aws:s3:::bucket/*" }, { "Sid": "S3BucketListAccess", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::bucket" } ] }

Sicherheitsgruppen

Sobald Ihr Dateisystem und Ihre Mount-Ziele erstellt sind, müssen Sie die richtigen Sicherheitsgruppen konfigurieren, um Ihr Dateisystem verwenden zu können. Sicherheitsgruppen sowohl auf der Computing-Ressource als auch auf dem Mount-Ziel müssen den erforderlichen Datenverkehr zulassen, wie in der folgenden Tabelle dargestellt:

Sicherheitsgruppe Art der Regel Protocol (Protokoll) Port Quelle/Ziel
EC2-Instance Ausgehend TCP 2049 Zielsicherheitsgruppe einhängen
Mount-Ziel Eingehend TCP 2049 EC2-Instance-Sicherheitsgruppe