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.
Übertragung von Dateien über einen Serverendpunkt mit einem Client
Sie übertragen Dateien über den AWS Transfer Family Dienst, indem Sie den Übertragungsvorgang in einem Client angeben. AWS Transfer Family unterstützt die folgenden Clients:
-
Wir unterstützen Version 3 des SFTP Protokolls.
-
Öffnen SSH (macOS und Linux)
Anmerkung
Dieser Client funktioniert nur mit Servern, die für das Secure Shell (SSH) File Transfer Protocol (SFTP) aktiviert sind.
-
Win SCP (nur Microsoft Windows)
-
Cyberduck (Windows, macOS und Linux)
-
FileZilla (Windows, macOS und Linux)
Die folgenden Einschränkungen gelten für jeden Client:
-
Die maximale Anzahl gleichzeitiger SFTP Multiplex-Sitzungen pro Verbindung beträgt 10.
-
Amazon S3 und Amazon EFS (aufgrund des NFSv4 Protokolls) verlangen, dass Dateinamen in der UTF -8-Kodierung vorliegen. Die Verwendung einer anderen Kodierung kann zu unerwarteten Ergebnissen führen. Informationen zu Amazon S3 finden Sie unter Richtlinien zur Benennung von Objektschlüsseln.
-
Für File Transfer Protocol over SSL (FTPS) wird nur der Modus Explizit unterstützt. Der implizite Modus wird nicht unterstützt.
-
Für File Transfer Protocol (FTP) und FTPS wird nur der passive Modus unterstützt.
-
Für FTP und FTPS wird nur der STREAM Modus unterstützt.
-
Für FTP und FTPS wird nur der Bild-/Binärmodus unterstützt.
-
Für FTP und FTPS ist TLS — PROT C (ungeschützt) TLS für die Datenverbindung die Standardeinstellung, aber PROT C wird im AWS Transfer Family FTPS Protokoll nicht unterstützt. Sie müssen also PROT P eingebenFTPS, damit Ihre Datenoperation akzeptiert wird.
-
Wenn Sie Amazon S3 für den Speicher Ihres Servers verwenden und Ihr Client die Option enthält, mehrere Verbindungen für eine einzelne Übertragung zu verwenden, stellen Sie sicher, dass Sie die Option deaktivieren. Andernfalls können große Datei-Uploads auf unvorhersehbare Weise fehlschlagen. Beachten Sie, dass, wenn Sie Amazon EFS als Speicher-Backend verwenden, mehrere Verbindungen für eine einzige Übertragung EFS unterstützt werden.
Im Folgenden finden Sie eine Liste der verfügbaren Befehle für FTP undFTPS:
Verfügbare Befehle | |||||
---|---|---|---|---|---|
ABOR |
FEAT |
MLST |
PASS |
RETR |
STOR |
AUTH |
LANG |
MKD |
PASV |
RMD |
STOU |
CDUP |
LIST |
MODE |
PBSZ |
RNFR |
STRU |
CWD |
MDTM |
NLST |
PROT |
RNTO |
SYST |
DELE |
MFMT |
NOOP |
PWD |
SIZE |
TYPE |
EPSV |
MLSD |
OPTS |
QUIT |
STAT |
USER |
Anmerkung
APPE wird nicht unterstützt.
Denn SFTP die folgenden Operationen werden derzeit nicht für Benutzer unterstützt, die das logische Home-Verzeichnis auf Servern verwenden, die Amazon Elastic File System (AmazonEFS) verwenden.
Befehle werden nicht unterstützt SFTP | |||
---|---|---|---|
SSH_FXP_READLINK |
SSH_FXP_SYMLINK |
SSH_ FXP _ STAT wenn die angeforderte Datei ein Symlink ist |
SSH_ FXP _ REALPATH wenn der angeforderte Pfad irgendwelche Symlink-Komponenten enthält |
Generieren Sie ein öffentlich-privates key pair
Bevor Sie eine Datei übertragen können, müssen Sie über ein öffentlich-privates key pair verfügen. Wenn Sie noch kein key pair generiert haben, finden Sie weitere Informationen unterGenerieren Sie SSH Schlüssel für vom Service verwaltete Benutzer.
Themen
Verfügbare SFTP/FTPS/FTP Befehle
In der folgenden Tabelle werden die verfügbaren Befehle für AWS Transfer Family, für die SFTPFTPS, und FTP Protokolle beschrieben.
Anmerkung
In der Tabelle werden Dateien und Verzeichnisse für Amazon S3 erwähnt, das nur Buckets und Objekte unterstützt: Es gibt keine Hierarchie. Sie können jedoch Präfixe in Objektschlüsselnamen verwenden, um eine Hierarchie zu implizieren und Ihre Daten ähnlich wie Ordner zu organisieren. Dieses Verhalten wird unter Arbeiten mit Objektmetadaten im Amazon Simple Storage Service-Benutzerhandbuch beschrieben.
Befehl | Amazon S3 | Amazon EFS |
---|---|---|
cd |
Unterstützt | Unterstützt |
chgrp |
Nicht unterstützt | Unterstützt (root oder owner nur) |
chmod |
Nicht unterstützt | Wird unterstützt (root nur) |
chmtime |
Nicht unterstützt | Unterstützt |
chown |
Nicht unterstützt | Unterstützt (root nur) |
get |
Unterstützt | Unterstützt (einschließlich der Auflösung symbolischer Links) |
ln -s |
Nicht unterstützt | Unterstützt |
ls/dir |
Unterstützt | Unterstützt |
mkdir |
Unterstützt | Unterstützt |
put |
Unterstützt | Unterstützt |
pwd |
Unterstützt | Unterstützt |
rename |
Wird nur für Dateien unterstützt |
Unterstützt AnmerkungEin Umbenennen, das eine bestehende Datei oder ein vorhandenes Verzeichnis überschreiben würde, wird nicht unterstützt. |
rm |
Unterstützt | Unterstützt |
rmdir |
Unterstützt (nur leere Verzeichnisse) | Unterstützt |
version |
Unterstützt | Unterstützt |
Finden Sie Ihren VPC Amazon-Endpunkt
Wenn der Endpunkttyp für Ihren Transfer Family Family-Server lautetVPC, ist es nicht einfach, den Endpunkt zu identifizieren, der für die Übertragung von Dateien verwendet werden soll. Gehen Sie in diesem Fall wie folgt vor, um Ihren VPC Amazon-Endpunkt zu finden.
Finden Sie Ihren VPC Amazon-Endpunkt
-
Navigieren Sie zur Detailseite Ihres Servers.
-
Wählen Sie im Bereich Endpunktdetails die VPC.
Wählen Sie im VPC Amazon-Dashboard die VPCEndpunkt-ID aus.
-
In der DNSNamensliste ist Ihr Serverendpunkt der erste, der aufgeführt ist.
Vermeiden Sie Fehler setstat
Einige SFTP Dateiübertragungsclients können versuchen, die Attribute von Remotedateien, einschließlich Zeitstempel und Berechtigungen, mithilfe von Befehlen zu ändern, z. B. SETSTAT beim Hochladen der Datei. Diese Befehle sind jedoch nicht mit Objekt-Speichersystemen wie Amazon S3 kompatibel. Aufgrund dieser Inkompatibilität können Datei-Uploads von diesen Clients zu Fehlern führen, selbst wenn die Datei anderweitig erfolgreich hochgeladen wurde.
-
Wenn Sie
CreateServer
oder aufrufenUpdateServer
API, verwenden Sie dieProtocolDetails
Option, um den FehlerSetStatOption
zu ignorieren, der generiert wird, wenn der Client versucht, eine Datei SETSTAT zu verwenden, die Sie in einen S3-Bucket hochladen. -
Stellen Sie den Wert
ENABLE_NO_OP
auf ein, damit der Transfer Family Family-Server den SETSTAT Befehl ignoriert und Dateien hochlädt, ohne Änderungen an Ihrem SFTP Client vornehmen zu müssen. -
Beachten Sie, dass die
SetStatOption
ENABLE_NO_OP
Einstellung zwar den Fehler ignoriert, aber einen Protokolleintrag in CloudWatch Logs generiert, sodass Sie feststellen können, wann der Client einen SETSTAT Anruf tätigt.
APIEinzelheiten zu dieser Option finden Sie unter ProtocolDetails.
Verwenden Sie „Öffnen“ SSH
Verwenden Sie die folgenden Anweisungen, um Dateien mithilfe von Öffnen von der Befehlszeile aus zu übertragenSSH.
Anmerkung
Dieser Client funktioniert nur mit einem Server, der SFTP -fähig ist.
Um Dateien AWS Transfer Family mit dem SSH Befehlszeilenprogramm Open zu übertragen
-
Öffnen Sie unter Linux, macOS oder Windows ein Befehlsterminal.
-
Geben Sie an der Eingabeaufforderung den folgenden Befehl ein:
sftp -i
transfer-key
sftp_user
@service_endpoint
Im vorherigen Befehl
ist dies der Benutzername undsftp_user
der SSH private Schlüssel. Hiertransfer-key
ist der Endpunkt des Servers, wie er in der AWS Transfer Family Konsole für den ausgewählten Server angezeigt wird.service_endpoint
Anmerkung
Dieser Befehl verwendet Einstellungen, die in der
ssh_config
Standarddatei enthalten sind. SFTPVerwendet Port 22. Es sei denn, Sie haben diese Datei zuvor bearbeitet. Sie können einen anderen Port angeben (z. B. 2222), indem Sie dem Befehl wie folgt ein-P
Flag hinzufügen.sftp -P 2222 -i
transfer-key
sftp_user
@service_endpoint
Wenn Sie immer Port 2222 verwenden möchten, können Sie alternativ Ihren Standardport in Ihrer
ssh_config
Datei aktualisieren.Eine
sftp
-Eingabeaufforderung sollte angezeigt werden. -
(Optional) Um das Home-Verzeichnis des Benutzers anzuzeigen, geben Sie an der
sftp
Eingabeaufforderung den folgenden Befehl ein:pwd
-
Verwenden Sie den
put
Befehl, um eine Datei von Ihrem Dateisystem auf den Transfer Family Family-Server hochzuladen. Um beispielsweise hochzuladenhello.txt
(vorausgesetzt, die Datei befindet sich in Ihrem aktuellen Verzeichnis auf Ihrem Dateisystem), führen Sie an dersftp
Eingabeaufforderung den folgenden Befehl aus:put hello.txt
Eine Meldung ähnlich der folgenden wird angezeigt, die darauf hinweist, dass die Dateiübertragung im Gange ist oder abgeschlossen ist.
Uploading hello.txt to /my-bucket/home/sftp_user/hello.txt
hello.txt 100% 127 0.1KB/s 00:00
Anmerkung
Nachdem Ihr Server erstellt wurde, kann es einige Minuten dauern, bis der Hostname des Serverendpunkts vom DNS Dienst in Ihrer Umgebung aufgelöst werden kann.
Verwenden Sie Win SCP
Verwenden Sie die folgenden Anweisungen, um Dateien mit Win von der Befehlszeile aus zu übertragenSCP.
Anmerkung
Wenn Sie Win SCP 5.19 verwenden, können Sie mit Ihren AWS Anmeldeinformationen direkt eine Verbindung zu Amazon S3 herstellen und Dateien hochladen/herunterladen. Weitere Informationen finden Sie unter Verbindung zum Amazon S3 S3-Service
Um Dateien AWS Transfer Family mithilfe von Win zu übertragen SCP
-
Öffnen Sie den SCP Win-Client.
-
Wählen Sie im Anmeldedialogfeld für Dateiprotokoll ein Protokoll aus: SFTPoder FTP.
Wenn Sie sich für Verschlüsselung entschieden habenFTP, wählen Sie eine der folgenden Optionen:
-
Keine Verschlüsselung für FTP
-
TLS/SSLExplizite Verschlüsselung für FTPS
-
-
Geben Sie in das Feld Host name (Host-Name) den Server-Endpunkt ein. Der Serverendpunkt befindet sich auf der Seite mit den Serverdetails. Weitere Informationen finden Sie unter SFTPFTPServerdetails FTPS anzeigen und.
Anmerkung
Wenn Ihr Server einen VPC Endpunkt verwendet, finden Sie weitere Informationen unterFinden Sie Ihren VPC Amazon-Endpunkt.
-
Geben Sie als Portnummer Folgendes ein:
-
22
für SFTP -
21
fürFTP/FTPS
-
-
Geben Sie unter Benutzername den Namen für den Benutzer ein, den Sie für Ihren spezifischen Identity Provider erstellt haben.
Anmerkung
Der Benutzername sollte einer der Benutzer sein, die Sie für Ihren Identitätsanbieter erstellt oder konfiguriert haben. AWS Transfer Family bietet die folgenden Identitätsanbieter:
-
Wählen Sie „Erweitert“, um das Dialogfeld „Erweiterte Seiteneinstellungen“ zu öffnen. Wählen Sie in dem SSHAbschnitt Authentifizierung aus.
-
Suchen Sie unter Datei mit privatem Schlüssel nach der Datei mit dem SSH privaten Schlüssel aus Ihrem Dateisystem und wählen Sie sie aus.
Anmerkung
Wenn Win SCP anbietet, Ihren SSH privaten Schlüssel in das PPK Format zu konvertieren, wählen Sie OK.
-
Wählen Sie OK aus, um zum Dialogfeld Login (Anmelden) zurückzukehren. Wählen Sie dann Save (Speichern) aus.
-
Wählen Sie im Dialogfeld Sitzung als Site speichern die Option OK, um die Verbindungseinrichtung abzuschließen.
-
Wählen Sie im Anmeldedialogfeld die Option Tools und anschließend Einstellungen aus.
-
Wählen Sie im Dialogfeld „Einstellungen“ für „Übertragung“ die Option „Endurance“.
Wählen Sie für die Option „Wiederaufnahme der Übertragung/Übertragung auf temporären Dateinamen aktivieren“ die Option „Deaktivieren“.
Anmerkung
Wenn Sie diese Option aktiviert lassen, erhöht dies die Upload-Kosten und verringert die Upload-Leistung erheblich. Dies kann auch dazu führen, dass das Hochladen großer Dateien fehlschlägt.
-
Wählen Sie für Übertragung die Option Hintergrund und deaktivieren Sie das Kontrollkästchen Mehrere Verbindungen für eine einzige Übertragung verwenden.
Anmerkung
Wenn Sie diese Option aktiviert lassen, können große Dateiuploads auf unvorhersehbare Weise fehlschlagen. Beispielsweise können verwaiste mehrteilige Uploads erstellt werden, für die Amazon S3 S3-Gebühren anfallen. Es kann auch zu einer unbemerkten Beschädigung von Daten kommen.
-
Führen Sie Ihre Dateiübertragung durch.
Sie können drag-and-drop Methoden verwenden, um Dateien zwischen dem Ziel- und dem Quellfenster zu kopieren. Sie können die Symbolleistensymbole verwenden, um die Eigenschaften von Dateien in Win hochzuladen, herunterzuladen, zu löschen, zu bearbeiten oder zu ändernSCP.
Anmerkung
Dieser Hinweis gilt nicht, wenn Sie Amazon EFS als Speicher verwenden.
Befehle, die versuchen, Attribute von Remote-Dateien, einschließlich Zeitstempeln, zu ändern, sind nicht mit Objektspeichersystemen wie Amazon S3 kompatibel. Wenn Sie Amazon S3 als Speicher verwenden, sollten Sie daher sicherstellen, dass Sie die SCP Win-Zeitstempeleinstellungen deaktivieren (oder SetStatOption
wie unter beschrieben verwendenVermeiden Sie Fehler setstat), bevor Sie Dateiübertragungen durchführen. Deaktivieren Sie dazu im Dialogfeld mit den Einstellungen für Win SCP Transfer die Upload-Optionen „Berechtigungen festlegen“ und die Option „Zeitstempel beibehalten“.
Verwenden Sie Cyberduck
Unten wird beschrieben, wie Dateien in der Befehlszeile mit Cyberduck übertragen werden.
Um Dateien AWS Transfer Family mit Cyberduck zu übertragen
-
Öffnen Sie den Cyberduck-Client.
-
Wählen Sie Verbindung öffnen.
-
Wählen Sie im Dialogfeld „Verbindung öffnen“ ein Protokoll aus: SFTP(SSHFile Transfer Protocol), FTP- SSL (Explizit AUTHTLS) oder FTP(File Transfer Protocol).
-
Geben Sie unter Server Ihren Serverendpunkt ein. Der Serverendpunkt befindet sich auf der Seite mit den Serverdetails. Weitere Informationen finden Sie unter SFTPFTPServerdetails FTPS anzeigen und.
Anmerkung
Wenn Ihr Server einen VPC Endpunkt verwendet, finden Sie weitere Informationen unterFinden Sie Ihren VPC Amazon-Endpunkt.
-
Geben Sie als Portnummer Folgendes ein:
-
22
für SFTP -
21
fürFTP/FTPS
-
-
Geben Sie in das Feld Username (Benutzername) den Namen des Benutzers ein, den Sie in Benutzer für Serverendpunkte verwalten erstellt haben.
-
Falls SFTP ausgewählt, wählen Sie für SSHPrivate Key den privaten Schlüssel aus oder geben Sie SSH ihn ein.
-
Wählen Sie Connect aus.
-
Führen Sie Ihre Dateiübertragung durch.
Führen Sie nun – abhängig von der Position der Dateien – einen der folgenden Schritte durch:
-
Wählen Sie in Ihrem lokalen Verzeichnis (der Quelle) die Dateien aus, die Sie übertragen möchten, und ziehen Sie sie per Drag & Drop in das Amazon S3 S3-Verzeichnis (das Ziel).
-
Wählen Sie im Amazon S3 S3-Verzeichnis (der Quelle) die Dateien aus, die Sie übertragen möchten, und ziehen Sie sie per Drag & Drop in Ihr lokales Verzeichnis (das Ziel).
-
Verwenden FileZilla
Verwenden Sie die folgenden Anweisungen, um Dateien mit zu übertragen FileZilla.
Um eine Dateiübertragung einzurichten FileZilla
-
Öffnen Sie den FileZilla Client.
-
Wählen Sie „Datei“ und anschließend „Site-Manager“.
-
Wählen Sie im Dialogfeld „Site-Manager“ die Option „Neue Site“ aus.
-
Wählen Sie auf der Registerkarte Allgemein für Protokoll ein Protokoll aus: SFTPoder FTP.
Wenn Sie sich für Verschlüsselung entschieden habenFTP, wählen Sie eine der folgenden Optionen:
-
Verwenden Sie nur Plain FTP (unsicher) — für FTP
-
Verwenden Sie explizites FTP OverTLS, falls verfügbar — für FTPS
-
-
Geben Sie als Hostname das Protokoll ein, das Sie verwenden, gefolgt von Ihrem Serverendpunkt. Der Serverendpunkt befindet sich auf der Seite mit den Serverdetails. Weitere Informationen finden Sie unter SFTPFTPServerdetails FTPS anzeigen und.
Anmerkung
Wenn Ihr Server einen VPC Endpunkt verwendet, finden Sie weitere Informationen unterFinden Sie Ihren VPC Amazon-Endpunkt.
-
Wenn Sie verwendenSFTP, geben Sie Folgendes ein:
sftp://
hostname
-
Wenn Sie verwendenFTPS, geben Sie ein:
ftps://
hostname
Stellen Sie sicher, dass Sie es ersetzen
hostname
mit Ihrem tatsächlichen Serverendpunkt. -
-
Geben Sie als Portnummer Folgendes ein:
-
22
für SFTP -
21
fürFTP/FTPS
-
-
Falls SFTP ausgewählt, wählen Sie für Anmeldetyp die Option Schlüsseldatei aus.
Wählen Sie für Schlüsseldatei den SSH privaten Schlüssel aus, oder geben Sie ihn ein.
-
Geben Sie unter Benutzer den Namen des Benutzers ein, den Sie in erstellt habenBenutzer für Serverendpunkte verwalten.
-
Wählen Sie Connect aus.
-
Führen Sie Ihre Dateiübertragung durch.
Anmerkung
Wenn Sie eine laufende Dateiübertragung unterbrechen, wird AWS Transfer Family möglicherweise ein Teilobjekt in Ihren Amazon S3 S3-Bucket geschrieben. Wenn Sie einen Upload unterbrechen, überprüfen Sie, ob die Dateigröße im Amazon S3 S3-Bucket der Dateigröße des Quellobjekts entspricht, bevor Sie fortfahren.
Verwenden Sie einen Perl-Client
Wenn Sie den NET::SFTP::Foreign Perl-Client verwenden, müssen Sie den queue_size
Wert auf setzen. 1
Beispielsweise:
my $sftp =
Net::SFTP::Foreign->new('
user
@s-12345
.server.transfer.us-east-2
.amazonaws.com',
queue_size => 1);
Verarbeitung nach dem Upload
Sie können Verarbeitungsinformationen nach dem Upload anzeigen, einschließlich Amazon S3 S3-Objektmetadaten und Ereignisbenachrichtigungen.
Amazon S3 S3-Objektmetadaten
Als Teil der Metadaten Ihres Objekts sehen Sie einen Schlüssel namens x-amz-meta-user-agent
Wessen Wert ist AWSTransfer
und x-amz-meta-user-agent-id
Wessen Wert istusername@server-id
. Der username
ist der Transfer Family Family-Benutzer, der die Datei hochgeladen hat, und server-id
ist der Server, der für den Upload verwendet wurde. Auf diese Informationen kann mithilfe der HeadObjectOperation für das S3-Objekt in Ihrer Lambda-Funktion zugegriffen werden.
Amazon-S3-Ereignis-Benachrichtigungen
Wenn ein Objekt mit Transfer Family in Ihren S3-Bucket hochgeladen RoleSessionName
wird, ist es im Feld Requester in der S3-Ereignisbenachrichtigungsstruktur als [AWS:Role Unique
Identifier]/username.sessionid@server-id
enthalten. Im Folgenden finden Sie beispielsweise den Inhalt eines Beispielfeldes „Requester“ aus einem S3-Zugriffsprotokoll für eine Datei, die in den S3-Bucket kopiert wurde.
arn:aws:sts::AWS-Account-ID:assumed-role/IamRoleName/username.sessionid@server-id
Im Feld Anforderer oben wird die aufgerufene IAM Rolle angezeigt. IamRoleName
Weitere Informationen zur Konfiguration von S3-Ereignisbenachrichtigungen finden Sie unter Konfiguration von Amazon S3 S3-Ereignisbenachrichtigungen im Amazon Simple Storage Service Developer Guide. Weitere Informationen zu eindeutigen Rollen-Identifikatoren AWS Identity and Access Management (IAM) finden Sie unter Eindeutige Identifikatoren im AWS Identity and Access Management Benutzerhandbuch.