Einführung: Sichere Dateiübertragungen mit der AWS Transfer Family
HWS hilft Unternehmen dabei, das volle Potenzial der AWS Transfer Family auszuschöpfen, und bietet umfassende Unterstützung bei der Konzeption, Bereitstellung und Optimierung sicherer Dateiübertragungs-Workflows. Ganz gleich, ob Sie von Altsystemen migrieren oder eine neue Lösung von Grund auf neu aufbauen – HWS sorgt für einen nahtlosen Übergang mit minimalen Unterbrechungen und maximaler Effizienz.
Die Herausforderung des sicheren externen Dateiaustauschs
Unternehmen haben oft mit dem Betriebsaufwand traditioneller SFTP-Server zu kämpfen. Dazu gehören das Patchen von Betriebssystemen, die Verwaltung der Serververfügbarkeit, die Skalierung für die Leistung und die Gewährleistung einer starken Sicherheitslage gegen ständige Bedrohungen. Selbstverwaltete Lösungen können zu kostspieligen Engpässen werden und erfordern viel Zeit und Ressourcen, die besser für Kerngeschäftsinitiativen eingesetzt werden könnten.
Warum sollten Sie sich für HWS für Ihre AWS Transfer Family-Einrichtung entscheiden?
Die Implementierung von AWS Transfer Family umfasst mehr als nur das Hochfahren eines Servers – sie erfordert eine durchdachte Architektur, eine sichere Identitätsintegration und ein skalierbares Design. So schafft HWS einen Mehrwert:
• Kompetentes Architekturdesign: Die Architekten von HWS passen Ihre AWS Transfer Family-Einrichtung an Ihre spezifischen Anforderungen in Bezug auf Sicherheit, Compliance und Leistung an – unabhängig davon, ob es sich um eine öffentlich zugängliche oder eine VPC-gehostete Lösung handelt.
• Maßgeschneiderte Identitätsintegration: Wir sind auf die Entwicklung von Lambda-basierten Identitätsanbietern spezialisiert, die sich mit Ihren bestehenden Systemen verbinden (z. B. Microsoft Entra ID, Secrets Manager oder benutzerdefinierte Datenbanken).
• Beschleunigte Bereitstellung: Mit bewährten Vorlagen und Automatisierung reduziert HWS die Einrichtungszeit und stellt sicher, dass vom ersten Tag an Best Practices befolgt werden.
• Sicherheit und Compliance: Unser Team stellt sicher, dass Ihre Dateiübertragungs-Workflows den Branchenstandards entsprechen, mit detaillierten IAM-Rollen und Audit-Protokollierung.
• Kontinuierlicher Support und Optimierung: Von der Leistungsoptimierung bis zur Kostenoptimierung bietet HWS kontinuierlichen Support, damit Ihre Lösung reibungslos funktioniert.
Unabhängig davon, ob Sie Daten mit externen Partnern oder internen Systemen austauschen, verwandelt HWS die AWS Transfer Family in einen strategischen Vorteil für Ihr Unternehmen.
Einführung der AWS Transfer Family und SFTP
![]()
Die AWS Transfer Family macht diese undifferenzierte Schwerstarbeit überflüssig. Es handelt sich um einen vollständig verwalteten Dienst, der die Protokolle SFTP, FTPS, FTP und AS2 unterstützt und eine sichere Dateiübertragung direkt in AWS-Speicherdienste ermöglicht. Sie können einen über das Internet zugänglichen öffentlichen Endpunkt einrichten oder eine SFTP-Instanz innerhalb einer VPC für interne Zwecke einrichten oder über Elastic IP-Adressen nur für bestimmte IP-Adressen (unter Verwendung von Sicherheitsgruppen) freigeben. Als Eckpfeiler des sicheren Datenaustauschs bietet SFTP eine Verschlüsselung für Daten während der Übertragung und gewährleistet so Vertraulichkeit und Integrität. AWS bietet AWS Transfer Family Web Apps als Add-on an, das Sie aktivieren können, wenn Sie eine benutzerdefinierte und einfache webbasierte Schnittstelle für die Übertragung von Daten zu und von Amazon S3 über einen Webbrowser einrichten möchten. AWS Transfer Family unterstützt benutzerdefinierte Identitätsanbieter, bei denen es sich direkt um AWS API Gateway oder eine AWS Lambda-Funktion handeln kann. Als Backend-Speicher unterstützt es AWS S3 und AWS EFS (Elastic File System). Die AWS Transfer Family bietet auch Konnektoren. Der Zweck eines Konnektors besteht darin, eine Verbindung zwischen Ihrem AWS-Speicher und dem SFTP-Server eines Partners herzustellen. Sie können Dateien von AWS S3 an einen externen Partner senden. Sie können den SFTP-Konnektor auch verwenden, um Dateien vom SFTP-Server eines Partners abzurufen.
Warum ein öffentlicher Endpunkt mit direkter Lambda-Authentifizierung? Vorteile und Anwendungsfälle
Die AWS Transfer-Familie unterstützt zwar eine Vielzahl von Identitätsanbietern, aber die Verwendung eines öffentlichen Endpunkts mit direkter AWS Lambda-Integration bietet eine einzigartige Kombination aus Zugänglichkeit und Kontrolle. Die Einrichtung ist einfach und bietet Flexibilität ohne zusätzlichen Betriebsaufwand.
· Ultimative Flexibilität: Sie können benutzerdefinierten Code schreiben, um eine Verbindung zu jeder Identitätsquelle herzustellen, egal ob es sich um eine proprietäre Datenbank, eine API eines Drittanbieters oder einen Dienst wie AWS Secrets Manager handelt.
· Dynamische Autorisierung: Gehen Sie über die einfache Authentifizierung hinaus. Ihre Lambda-Funktion kann dynamisch detaillierte Berechtigungen auf Benutzer- und Sitzungsbasis generieren und zuweisen und dabei genau definieren, auf welche S3-Präfixe ein Benutzer zugreifen kann.
· Serverlose Vorgänge: Durch die Nutzung von Lambda wird Ihr Authentifizierungsmechanismus vollständig serverlos. Er skaliert automatisch mit der Nachfrage, und Sie zahlen nur für die tatsächlich genutzte Rechenzeit, sodass Sie keinen weiteren Server verwalten müssen.
· Externe Zugänglichkeit: Ein öffentlicher Endpunkt macht Ihren SFTP-Server über das Internet zugänglich, was für die Zusammenarbeit mit externen Partnern und Kunden, die keine Verbindung über eine private VPC herstellen können, unerlässlich ist.
Die Kernkomponenten einer robusten SFTP-Lösung verstehen
Bevor wir uns mit der Implementierung befassen, ist es wichtig, die Rollen der wichtigsten AWS-Services zu verstehen, aus denen unsere Lösung besteht.
AWS Transfer Family: Ihr verwalteter SFTP-Server
Die AWS Transfer Family ist die zentrale Komponente, die den verwalteten SFTP-Server-Endpunkt bereitstellt. Sie übernimmt die gesamte zugrunde liegende Infrastruktur, die Protokollverhandlungen und die Verwaltung der Client-Verbindungen. Sie konfigurieren den Endpunkt des Servers (öffentlich zugänglich oder VPC-gehostet), wählen Ihre Protokolle (in unserem Fall SFTP) und legen fest, wie Benutzer authentifiziert werden sollen. Dieser Dienst abstrahiert die Komplexität des Betriebs eines hochverfügbaren und skalierbaren Dateiübertragungsdienstes.
Amazon S3: Das skalierbare und sichere Speicher-Backend
Amazon S3 dient als dauerhafte und skalierbare Speicherschicht für alle Dateien, die über den SFTP-Server übertragen werden. Wenn ein Benutzer eine Datei hochlädt, wird diese direkt in einen S3-Bucket geschrieben. Dank dieser nativen Integration können Sie sofort andere AWS-Dienste wie AWS Glue für ETL, Amazon SageMaker für maschinelles Lernen oder Amazon Athena für Analysen Ihrer übertragenen Daten nutzen, ohne diese verschieben zu müssen.
AWS Lambda: Das Herzstück der benutzerdefinierten Identitätsverwaltung
AWS Lambda ist die Engine unserer benutzerdefinierten Authentifizierungslogik. Wenn ein Benutzer versucht, sich beim SFTP-Server anzumelden, ruft AWS Transfer Family unsere Lambda-Funktion über einen API Gateway-Endpunkt auf. Die Funktion empfängt die vom Benutzer angegebenen Anmeldedaten (z. B. ein Passwort), überprüft sie anhand einer ausgewählten Identitätsquelle und sendet eine Antwort an Transfer Family zurück. Diese Antwort gibt an, ob die Anmeldung erfolgreich war, und legt die Zugriffsebene des Benutzers fest, einschließlich seines Home-Verzeichnisses und der IAM-Rolle, die seine Berechtigungen innerhalb von Amazon S3 definiert.
Architektur im Detail: Öffentlicher Endpunkt mit direkter Lambda-Authentifizierung
Das Verständnis des Informationsflusses ist der Schlüssel zur Fehlerbehebung und Sicherung des Systems.
Allgemeiner Ablauf: Benutzerverbindung zum S3-Speicher
1. Verbindungsanfrage: Ein SFTP-Benutzer verbindet sich über seine Client-Software mit dem öffentlichen Endpunkt des AWS Transfer Family-Servers und gibt dabei einen Benutzernamen und ein Passwort an.
2. Authentifizierungsauslöser: AWS Transfer Family empfängt die Anfrage und ruft gemäß der Konfiguration den angegebenen API Gateway-Endpunkt auf, wobei die Anmeldedaten des Benutzers weitergeleitet werden.
3. Lambda-Aufruf: API Gateway löst die zugehörige AWS Lambda-Funktion aus und übergibt die Details der Authentifizierungsanforderung in der Ereignis-Nutzlast.
4. Identitätsprüfung: Die Lambda-Funktion führt Ihren benutzerdefinierten Code aus. Sie analysiert den Benutzernamen und das Passwort und überprüft sie anhand Ihrer Identitätsquelle (z. B. Abfrage einer Datenbank, Überprüfung eines Geheimnisses in Secrets Manager).
5. Autorisierungsantwort: Wenn die Authentifizierung erfolgreich ist, erstellt die Lambda-Funktion eine JSON-Antwort. Diese Antwort muss eine IAM-Rollen-ARN enthalten, die S3-Berechtigungen gewährt, und kann optional das Home-Verzeichnis des Benutzers innerhalb des S3-Buckets angeben.
6. Sitzung gewährt: AWS Transfer Family empfängt die erfolgreiche Antwort von Lambda und gewährt dem Benutzer eine Sitzung. Die Berechtigungen für diese Sitzung sind streng auf die von der Lambda-Funktion zurückgegebene IAM-Rolle beschränkt.
7. Dateiübertragung: Der Benutzer kann nun Dateioperationen (Hochladen, Herunterladen, Auflisten) durchführen, und alle Aktionen werden unter der angenommenen IAM-Rolle in S3-API-Aufrufe übersetzt.
Schrittweise Implementierungsanleitung: Erstellen Ihres SFTP-Servers
Dieser Abschnitt enthält eine allgemeine Anleitung zum Konfigurieren der erforderlichen Komponenten.
Vorbereiten Ihres Amazon S3-Speichers
Erstellen Sie zunächst einen S3-Bucket, der als Speicher-Backend dient. Es empfiehlt sich, innerhalb des Buckets eine logische Ordnerstruktur für die Benutzerverzeichnisse zu erstellen, z. B. /my-sftp-bucket/home/.
Entwickeln der AWS Lambda Identity Provider-Funktion
Erstellen Sie eine Lambda-Funktion, die die Authentifizierung übernimmt. Diese Funktion benötigt eine IAM-Ausführungsrolle, die es ihr ermöglicht, Protokolle in CloudWatch zu schreiben. Die Kernlogik umfasst:
1. Parsen des eingehenden Ereignisses vom SFTP-Server der AWS Transfer Family, um Benutzername und Passwort zu extrahieren.
2. Validieren des Passworts. Der Einfachheit halber könnten Sie ein fest codiertes Wörterbuch verwenden, aber ein Produktionssystem sollte eine sichere Quelle wie AWS Secrets Manager oder eine Datenbank oder Microsoft Entra ID (über Graph API) abfragen.
3. Wenn das Passwort gültig ist, geben Sie ein JSON-Objekt mit den Feldern „Role“, „HomeDirectory“ und optional „Policy“ für Inline-Sitzungsrichtlinien zurück. Das Feld „Role“ muss eine ARN einer IAM-Rolle sein, die Transfer Family übernehmen kann.
Konfigurieren des SFTP-Servers der AWS Transfer Family
1. Erstellen Sie in der AWS Transfer Family-Konsole einen neuen Server.
2. Wählen Sie SFTP als Protokoll aus.
3. Wählen Sie als Identitätsanbieter Benutzerdefinierter Identitätsanbieter und wählen Sie Ihre Lambda-Funktion aus.
4. Wählen Sie einen öffentlich zugänglichen Endpunkt für die SFTP-Serverinstanz.
5. Wählen Sie Amazon S3 als Speicher-Backend aus.
6. Schließen Sie die Konfiguration ab, einschließlich aller Protokollierungsrollen.
Benutzerbereitstellung und Konfiguration des Home-Verzeichnisses
Die Benutzerbereitstellung wird vollständig von Ihrem Identitäts-Backend verwaltet. Wenn Sie einen Benutzer zu Ihrer Datenbank oder Ihrem Geheimnistresor hinzufügen, kann dieser von Ihrer Lambda-Funktion authentifiziert werden. Die Lambda-Funktion ist dafür verantwortlich, einen Benutzernamen einem bestimmten Home-Verzeichnis in S3 zuzuordnen. Ein gängiges Muster ist die Rückgabe von HomeDirectory: /${transfer:HomeBucket}/${transfer:UserName}, um Benutzer automatisch einem Ordner zuzuordnen, der ihrem Benutzernamen innerhalb des angegebenen S3-Buckets entspricht.
Testen Ihres öffentlichen SFTP-Endpunkts
Sobald der Server erstellt ist, verwenden Sie seinen öffentlichen DNS-Hostnamen, um eine Verbindung mit einem beliebigen Standard-SFTP-Client (z. B. FileZilla, WinSCP oder dem Befehlszeilen-sftp) herzustellen. Verwenden Sie die Anmeldedaten für einen in Ihrer Identitätsquelle definierten Benutzer. Eine erfolgreiche Verbindung und die
Überlegungen, Leistung und Kostenoptimierung
Diese serverlose Architektur ist äußerst kostengünstig. Sie bezahlen für die AWS Transfer Family basierend auf den Stunden, in denen der Endpunkt aktiv ist, und der übertragenen Datenmenge. Außerdem fallen Standardkosten für S3-Speicher, API Gateway-Anfragen und AWS Lambda-Ausführungszeit an. Da alle Komponenten nach Bedarf skaliert werden, vermeiden Sie Kosten für ungenutzte Kapazitäten.
Fazit
Durch die Kombination der AWS Transfer Family mit einem direkten AWS Lambda-Authentifizierungsanbieter können Sie einen hochsicheren, skalierbaren und flexiblen öffentlichen SFTP-Server aufbauen. Diese Architektur beseitigt den Betriebsaufwand für die Verwaltung herkömmlicher Server und bietet gleichzeitig eine detaillierte Kontrolle über die Benutzerauthentifizierung und -autorisierung. Sie erhalten die Möglichkeit, sich in jedes Identitätssystem zu integrieren, das Prinzip der geringsten Privilegien mit dynamischen IAM-Richtlinien durchzusetzen und die volle Leistungsfähigkeit des AWS-Ökosystems für Ihre Daten zu nutzen. Dieser serverlose Ansatz modernisiert nicht nur Ihre Dateiübertragungs-Workflows, sondern stärkt auch Ihre Sicherheitslage und stellt sicher, dass Ihr Datenaustausch sowohl effizient als auch vor neuen Bedrohungen geschützt ist.