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.
Konfigurieren Sie den Speicher für die Verwendung mit AWS Transfer Family
In diesem Thema werden die Speicheroptionen beschrieben, die Sie zusammen verwenden können AWS Transfer Family. Sie können entweder Amazon S3 oder Amazon EFS als Speicher für Ihre Transfer Family Family-Server verwenden.
Einen Amazon S3 S3-Bucket konfigurieren
AWS Transfer Family greift auf Ihren Amazon S3 S3-Bucket zu, um die Übertragungsanfragen Ihrer Benutzer zu bearbeiten. Daher müssen Sie im Rahmen der Einrichtung Ihres File-Transfer-Protokoll-fähigen Servers einen Amazon S3 S3-Bucket bereitstellen. Sie können einen vorhandenen Bucket verwenden oder einen neuen Bucket erstellen.
Anmerkung
Sie müssen keinen Server und keinen Amazon S3 S3-Bucket verwenden, die sich in derselben AWS Region befinden, aber wir empfehlen dies als bewährte Methode.
Wenn Sie Ihre Benutzer einrichten, weisen Sie ihnen jeweils eine IAM-Rolle zu. Diese Rolle bestimmt die Zugriffsebene, die sie auf Ihren Amazon S3 S3-Bucket haben.
Informationen zum Erstellen eines neuen Buckets finden Sie unter Wie erstelle ich einen S3-Bucket? im Amazon Simple Storage Service-Benutzerhandbuch.
Anmerkung
Sie können Amazon S3 Object Lock verwenden, um zu verhindern, dass Objekte für einen bestimmten Zeitraum oder auf unbestimmte Zeit überschrieben werden. Dies funktioniert bei Transfer Family genauso wie bei anderen Diensten. Wenn ein Objekt existiert und geschützt ist, ist es nicht erlaubt, in diese Datei zu schreiben oder sie zu löschen. Weitere Informationen zu Amazon S3 Object Lock finden Sie unter Verwenden von Amazon S3 Object Lock im Amazon Simple Storage Service-Benutzerhandbuch.
Amazon S3 Access Points
AWS Transfer Family unterstützt Amazon S3 Access Points
Beispielsweise können Sie Access Points verwenden, um drei verschiedenen Teams den Zugriff auf denselben gemeinsamen Datensatz zu ermöglichen, wobei ein Team Daten aus S3 lesen kann, ein zweites Team Daten in S3 schreiben kann und das dritte Team Daten aus S3 lesen, schreiben und löschen kann. Um eine detaillierte Zugriffskontrolle wie oben erwähnt zu implementieren, können Sie einen S3-Zugriffspunkt erstellen, der eine Richtlinie enthält, die verschiedenen Teams asymmetrischen Zugriff gewährt. Sie können S3-Zugriffspunkte mit Ihrem Transfer Family Family-Server verwenden, um eine differenzierte Zugriffskontrolle zu erreichen, ohne eine komplexe S3-Bucket-Richtlinie zu erstellen, die Hunderte von Anwendungsfällen umfasst. Weitere Informationen zur Verwendung von S3 Access Points mit einem Transfer Family Family-Server finden Sie im Blogbeitrag Enhance data access control with AWS Transfer Family and Amazon S3
Anmerkung
AWS Transfer Family unterstützt derzeit keine Amazon S3 Multi-Region Access Points.
HeadObject Verhalten von Amazon S3
Anmerkung
Wenn Sie einen Transfer Family Family-Server erstellen oder aktualisieren, können Sie die Leistung Ihrer Amazon S3 S3-Verzeichnisse optimieren, wodurch HeadObject
Anrufe vermieden werden.
In Amazon S3 sind Buckets und Objekte die primären Ressourcen, in denen Objekte in Buckets gespeichert werden. Amazon S3 kann ein hierarchisches Dateisystem nachahmen, sich aber manchmal anders verhalten als ein typisches Dateisystem. Beispielsweise sind Verzeichnisse in Amazon S3 kein erstklassiges Konzept, sondern basieren stattdessen auf Objektschlüsseln. AWS Transfer Family leitet einen Verzeichnispfad ab, indem der Schlüssel eines Objekts durch den Schrägstrich (/) geteilt wird, das letzte Element als Dateinamen behandelt und dann Dateinamen, die dasselbe Präfix haben, unter demselben Pfad gruppiert werden. Null-Byte-Objekte werden erstellt, um den Pfad eines Ordners darzustellen, wenn Sie mit mkdir
oder mithilfe der Amazon S3 S3-Konsole ein leeres Verzeichnis erstellen. Der Schlüssel für diese Objekte endet mit einem abschließenden Schrägstrich. Diese Null-Byte-Objekte werden unter Organisieren von Objekten in der Amazon S3 S3-Konsole mithilfe von Ordnern im Amazon S3 S3-Benutzerhandbuch beschrieben.
Wenn Sie einen ls
Befehl ausführen und einige Ergebnisse Amazon S3 S3-Null-Byte-Objekte sind (diese Objekte haben Schlüssel, die mit einem Schrägstrich enden), gibt Transfer Family eine HeadObject
Anfrage für jedes dieser Objekte aus (Einzelheiten finden Sie HeadObjectin der Amazon Simple Storage Service API-Referenz). Dies kann zu den folgenden Problemen führen, wenn Sie Amazon S3 als Speicher mit Transfer Family verwenden.
Gewähren Sie die Möglichkeit, nur Dateien zu schreiben und aufzulisten
In einigen Fällen möchten Sie möglicherweise nur Schreibzugriff auf Ihre Amazon S3 S3-Objekte anbieten. Beispielsweise möchten Sie möglicherweise Zugriff auf Schreib- (oder Upload) und Auflisten von Objekten in einem Bucket gewähren, nicht jedoch auf Objekte zum Lesen (Herunterladen). Um mkdir
Befehle mithilfe von Dateiübertragungsclients ausführen ls
zu können, benötigen Sie Amazon S3 ListObjects
und die PutObject
entsprechenden Berechtigungen. Wenn Transfer Family jedoch einen HeadObject
Aufruf tätigen muss, um Dateien zu schreiben oder aufzulisten, schlägt der Anruf mit der Fehlermeldung Zugriff verweigert fehl, da für diesen Aufruf die GetObject
entsprechende Genehmigung erforderlich ist.
Anmerkung
Wenn Sie einen Transfer Family Family-Server erstellen oder aktualisieren, können Sie die Leistung Ihrer Amazon S3 S3-Verzeichnisse optimieren, wodurch HeadObject
Anrufe vermieden werden.
In diesem Fall können Sie Zugriff gewähren, indem Sie eine AWS Identity and Access Management (IAM-) Richtlinienbedingung hinzufügen, die die GetObject
Berechtigung nur für Objekte hinzufügt, die mit einem Schrägstrich (/
) enden. Diese Bedingung verhindert das GetObject
Aufrufen von Dateien (sodass sie nicht gelesen werden können), ermöglicht es dem Benutzer jedoch, Ordner aufzulisten und zu durchsuchen. Die folgende Beispielrichtlinie bietet nur Schreib- und Listenzugriff auf Ihre Amazon S3 S3-Buckets. Um diese Richtlinie zu verwenden,
ersetzen Sie sie durch den Namen Ihres Buckets.DOC-EXAMPLE-BUCKET
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowListing", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET" }, { "Sid": "AllowReadWrite", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" ] }, { "Sid": "DenyIfNotFolder", "Effect": "Deny", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "NotResource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*/" ] } ] }
Anmerkung
Diese Richtlinie erlaubt es Benutzern nicht, Dateien anzuhängen. Mit anderen Worten, ein Benutzer, dem diese Richtlinie zugewiesen wurde, kann keine Dateien öffnen, um ihnen Inhalte hinzuzufügen oder sie zu ändern. Wenn Ihr Anwendungsfall außerdem vor dem Hochladen einer Datei einen HeadObject
Anruf erfordert, funktioniert diese Richtlinie nicht für Sie.
Große Anzahl von Null-Byte-Objekten verursacht Latenzprobleme
Wenn Ihre Amazon S3 S3-Buckets eine große Anzahl dieser Null-Byte-Objekte enthalten, gibt Transfer Family viele HeadObject
Aufrufe aus, was zu Verarbeitungsverzögerungen führen kann. Die empfohlene Lösung für dieses Problem besteht darin, Optimized Directories zu aktivieren, um die Latenz zu reduzieren.
Nehmen wir zum Beispiel an, Sie gehen in Ihr Home-Verzeichnis und Sie haben 10.000 Unterverzeichnisse. Mit anderen Worten, Ihr Amazon S3 S3-Bucket hat 10.000 Ordner. Wenn Sie in diesem Szenario den Befehl ls
(list) ausführen, dauert der Listenvorgang zwischen sechs und acht Minuten. Wenn Sie Ihre Verzeichnisse optimieren, dauert dieser Vorgang jedoch nur wenige Sekunden. Sie legen diese Option während der Servererstellung oder -aktualisierung im Fenster Zusätzliche Details konfigurieren fest. Diese Verfahren werden unter dem Konfiguration eines SFTP-, FTPS- oder FTP-Serverendpunkts Thema detailliert beschrieben.
Anmerkung
GUI-Clients geben möglicherweise einen ls
Befehl aus, auf den Sie keinen Einfluss haben. Daher ist es wichtig, diese Einstellung zu aktivieren, wenn Sie können.
Wenn Sie Ihre Verzeichnisse nicht optimieren oder nicht optimieren können, besteht eine alternative Lösung für dieses Problem darin, alle Ihre Null-Byte-Objekte zu löschen. Beachten Sie Folgendes:
-
Leere Verzeichnisse werden nicht mehr existieren. Verzeichnisse existieren nur, weil ihre Namen im Schlüssel eines Objekts stehen.
-
Hindert jemanden nicht daran, erneut anzurufen
mkdir
und Dinge kaputt zu machen. Sie könnten dies mildern, indem Sie eine Richtlinie erstellen, die die Erstellung von Verzeichnissen verhindert. -
In einigen Szenarien werden diese 0-Byte-Objekte verwendet. Sie haben beispielsweise eine Struktur wie /inboxes/customer1000 und das Posteingangsverzeichnis wird täglich gereinigt.
Schließlich besteht eine weitere mögliche Lösung darin, die Anzahl der sichtbaren Objekte durch eine Richtlinienbedingung zu begrenzen, um die Anzahl der Aufrufe zu reduzieren. HeadObject
Damit dies eine praktikable Lösung ist, müssen Sie akzeptieren, dass Sie möglicherweise nur eine begrenzte Anzahl all Ihrer Unterverzeichnisse anzeigen können.
Ein Amazon EFS-Dateisystem konfigurieren
AWS Transfer Family greift auf Amazon Elastic File System (Amazon EFS) zu, um die Übertragungsanfragen Ihrer Benutzer zu bearbeiten. Daher müssen Sie im Rahmen der Einrichtung Ihres File-Transfer-Protokoll-fähigen Servers ein Amazon EFS-Dateisystem bereitstellen. Sie können ein vorhandenes Dateisystem verwenden oder ein neues erstellen.
Beachten Sie Folgendes:
-
Wenn Sie einen Transfer Family Family-Server und ein Amazon EFS-Dateisystem verwenden, müssen sich der Server und das Dateisystem im selben System befinden AWS-Region.
-
Der Server und das Dateisystem müssen sich nicht im selben Konto befinden. Wenn sich der Server und das Dateisystem nicht in demselben Konto befinden, muss die Dateisystemrichtlinie der Benutzerrolle eine ausdrückliche Genehmigung erteilen.
Informationen zum Einrichten mehrerer Konten finden Sie im AWS Organizations Benutzerhandbuch unter Verwaltung der AWS Konten in Ihrer Organisation.
-
Wenn Sie Ihre Benutzer einrichten, weisen Sie ihnen jeweils eine IAM-Rolle zu. Diese Rolle bestimmt die Zugriffsebene, die sie auf Ihr Amazon EFS-Dateisystem haben.
-
Einzelheiten zum Mounten eines Amazon EFS-Dateisystems finden Sie unter Bereitstellen von Amazon EFS-Dateisystemen.
Weitere Informationen zur Zusammenarbeit mit AWS Transfer Family Amazon EFS finden Sie unter Verwenden für AWS Transfer Family den Zugriff auf Dateien in Ihrem Amazon EFS-Dateisystem im Amazon Elastic File System-Benutzerhandbuch.
Besitz von Amazon EFS-Dateien
Amazon EFS verwendet das POSIX-Dateiberechtigungsmodell (Portable Operating System Interface), um den Dateibesitz darzustellen.
In POSIX werden Benutzer im System in drei verschiedene Berechtigungsklassen eingeteilt: Wenn Sie einem Benutzer den Zugriff auf Dateien ermöglichen, die in einem Amazon EFS-Dateisystem gespeichert sind AWS Transfer Family, müssen Sie ihm ein „POSIX-Profil“ zuweisen. Dieses Profil wird verwendet, um ihren Zugriff auf Dateien und Verzeichnisse im Amazon EFS-Dateisystem zu bestimmen.
-
Benutzer (u): Besitzer der Datei oder des Verzeichnisses. Normalerweise ist der Ersteller einer Datei oder eines Verzeichnisses auch der Eigentümer.
-
Gruppe (g): Gruppe von Benutzern, die identischen Zugriff auf Dateien und Verzeichnisse benötigen, die sie gemeinsam nutzen.
-
Andere (o): Alle anderen Benutzer, die Zugriff auf das System haben, mit Ausnahme des Besitzers und der Gruppenmitglieder. Diese Berechtigungsklasse wird auch als „Öffentlich“ bezeichnet.
Im POSIX-Berechtigungsmodell ist jedes Dateisystemobjekt (Dateien, Verzeichnisse, symbolische Links, Named Pipes und Sockets) mit den zuvor genannten drei Berechtigungssätzen verknüpft. Amazon EFS-Objekten ist ein Modus im UNIX-Stil zugeordnet. Dieser Moduswert definiert die Berechtigungen zum Ausführen von Aktionen für dieses Objekt.
Darüber hinaus werden Benutzer und Gruppen auf Unix-Systemen numerischen Bezeichnern zugeordnet, die Amazon EFS zur Darstellung von Dateibesitz verwendet. Bei Amazon EFS gehören Objekte einem einzelnen Besitzer und einer einzelnen Gruppe. Amazon EFS verwendet die zugeordneten numerischen IDs, um die Berechtigungen zu prüfen, wenn ein Benutzer versucht, auf ein Dateisystemobjekt zuzugreifen.
Amazon EFS-Benutzer für Transfer Family einrichten
Bevor Sie Ihre Amazon EFS-Benutzer einrichten, können Sie einen der folgenden Schritte ausführen:
-
Sie können Benutzer erstellen und ihre Basisordner in Amazon EFS einrichten. Details dazu finden Sie unter Transfer Family Family-Benutzer auf Amazon EFS konfigurieren.
-
Wenn Sie mit dem Hinzufügen eines Root-Benutzers vertraut sind, können Sie das tunErstellen Sie einen Amazon EFS-Root-Benutzer.
Anmerkung
Transfer Family Family-Server unterstützen keine Amazon EFS-Zugriffspunkte zur Festlegung von POSIX-Berechtigungen. Die POSIX-Profile von Transfer Family Family-Benutzern (im vorherigen Abschnitt beschrieben) bieten die Möglichkeit, POSIX-Berechtigungen festzulegen. Diese Berechtigungen werden auf Benutzerebene für einen detaillierten Zugriff auf der Grundlage von UID, GID und sekundären GIDs festgelegt.
Transfer Family Family-Benutzer auf Amazon EFS konfigurieren
Transfer Family ordnet die Benutzer der von Ihnen angegebenen UID/GID und den von Ihnen angegebenen Verzeichnissen zu. Wenn die UID/GID/Verzeichnisse noch nicht in EFS vorhanden sind, sollten Sie sie erstellen, bevor Sie sie in Transfer an einen Benutzer zuweisen. Die Einzelheiten zum Erstellen von Amazon EFS-Benutzern werden unter Arbeiten mit Benutzern, Gruppen und Berechtigungen auf Netzwerkdateisystemebene (NFS) im Amazon Elastic File System-Benutzerhandbuch beschrieben.
Schritte zum Einrichten von Amazon EFS-Benutzern in Transfer Family
-
Ordnen Sie die EFS-UID und GID für Ihren Benutzer in Transfer Family mithilfe der
PosixProfile
Felder zu. -
Wenn Sie möchten, dass der Benutzer bei der Anmeldung in einem bestimmten Ordner startet, können Sie das EFS-Verzeichnis unter dem
HomeDirectory
Feld angeben.
Sie können den Prozess automatisieren, indem Sie eine CloudWatch Regel und eine Lambda-Funktion verwenden. Ein Beispiel für eine Lambda-Funktion, die mit EFS interagiert, finden Sie unter Verwenden von Amazon EFS für AWS Lambda in Ihren serverlosen Anwendungen
Darüber hinaus können Sie logische Verzeichnisse für Ihre Transfer Family Family-Benutzer konfigurieren. Einzelheiten finden Sie im Logische Verzeichnisse für Amazon EFS konfigurieren Abschnitt des Verwendung logischer Verzeichnisse zur Vereinfachung Ihrer Transfer Family Family-Verzeichnisstrukturen Themas.
Erstellen Sie einen Amazon EFS-Root-Benutzer
Wenn Ihre Organisation bereit ist, den Root-Benutzerzugriff über SFTP/FTPS für die Konfiguration Ihrer Benutzer zu aktivieren, können Sie einen Benutzer erstellen, dessen UID und GID 0 sind (Root-Benutzer), dann diesen Root-Benutzer verwenden, um Ordner zu erstellen und den übrigen Benutzern POSIX-ID-Besitzer zuzuweisen. Der Vorteil dieser Option besteht darin, dass das Amazon EFS-Dateisystem nicht bereitgestellt werden muss.
Führen Sie die unter beschriebenen Schritte aus und geben Sie sowohl für die Benutzer-ID als auch für die Gruppen-ID 0 (Null) ein. Hinzufügen von serviceverwalteten Amazon-EFS-Benutzern
Unterstützte Amazon EFS-Befehle
Die folgenden Befehle werden für Amazon EFS for unterstützt AWS Transfer Family.
-
cd
-
ls
/dir
-
pwd
-
put
-
get
-
rename
-
chown
: Nur Root-Benutzer (d. h. Benutzer mit uid=0) können den Besitz und die Berechtigungen von Dateien und Verzeichnissen ändern. -
chmod
: Nur Root kann den Besitz und die Berechtigungen von Dateien und Verzeichnissen ändern. -
chgrp
: Wird entweder für Root-Benutzer oder für den Eigentümer der Datei unterstützt, der die Gruppe einer Datei nur in eine seiner sekundären Gruppen ändern kann. -
ln -s
/symlink
-
mkdir
-
rm
/delete
-
rmdir
-
chmtime