

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.

# Sichere Dateiübertragungen mithilfe von Transfer Family, Amazon Cognito und GuardDuty
<a name="secure-file-transfers"></a>

*Manoj Kumar, Amazon Web Services*

## Zusammenfassung
<a name="secure-file-transfers-summary"></a>

Mit dieser Lösung können Sie Dateien sicher über einen SFTP-Server übertragen, indem Sie. AWS Transfer Family Es umfasst automatisierte Malware-Scanfunktionen über [Malware Protection for S3](https://docs.aws.amazon.com/guardduty/latest/ug/gdu-malware-protection-s3.html), eine Funktion von Amazon GuardDuty. Es wurde für Unternehmen entwickelt, die Dateien sicher mit externen Parteien austauschen und überprüfen müssen, ob alle eingehenden Dateien vor der Verarbeitung auf Malware gescannt werden.

Die mit diesem Muster bereitgestellten IaC-Vorlagen (Infrastructure as Code) helfen Ihnen bei der Bereitstellung von Folgendem:
+ Ein sicherer SFTP-Server mit Amazon Cognito Cognito-Authentifizierung über AWS Lambda
+ Amazon Simple Storage Service (Amazon S3) -Buckets für Uploads und eingehende Dateien, die auf Malware gescannt wurden
+ Eine auf Virtual Private Cloud (VPC) basierende Architektur mit öffentlichen und privaten Subnetzen in mehreren Availability Zones
+ IP-basierte Zugriffskontrolle für eingehenden und ausgehenden Verkehr mit konfigurierbaren Zulassungs- und Verweigerungslisten
+ Automatisiertes Scannen nach Schadsoftware durch GuardDuty
+ Intelligentes Datei-Routing auf der Grundlage von Scanergebnissen über Amazon EventBridge und Lambda
+ Benachrichtigungen in Echtzeit bei Sicherheitsvorfällen über Amazon Simple Notification Service (Amazon SNS)
+ Verschlüsselung für Amazon S3 S3-Buckets und Lambda-Umgebungsvariablen durch AWS Key Management Service ()AWS KMS
+ Amazon Virtual Private Cloud (Amazon VPC) -Endpunkte für den Zugriff ohne Internetzugriff
+ Umfassende Protokollierung durch CloudWatch Amazon-Integration

## Voraussetzungen und Einschränkungen
<a name="secure-file-transfers-prereqs"></a>

**Voraussetzungen**
+ Ein aktiver AWS-Konto
+ Berechtigungen in AWS Identity and Access Management (IAM) zur Ausführung der in diesem Muster beschriebenen Aktionen, einschließlich der Bereitstellung von AWS CloudFormation Vorlagen, die IAM-Rollen bereitstellen
+ GuardDuty, im [Zielkonto aktiviert](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_settingup.html)
+ Malware-Schutz für S3, im Zielkonto [aktiviert](https://docs.aws.amazon.com/guardduty/latest/ug/malware-protection-s3-get-started-independent.html)
+ Mithilfe von Dienstkontingenten können Sie im Zielkonto Folgendes erstellen:
  + Eine VPC
  + Ein privates Subnetz
  + Ein öffentliches Subnetz
  + Drei elastische IP-Adressen
  + Ausreichende Lambda-Parallelitätsgrenzen
+ Eine gültige E-Mail-Adresse für sicherheitsrelevante Benachrichtigungen
+ (Optional) Eine Liste von IP-Adressen oder CIDR-Bereichen, die Sie zulassen oder verweigern möchten
+ [(Optional) AWS Command Line Interface (AWS CLI), [installiert](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) und konfiguriert](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html)

**Einschränkungen**
+ Der Malware-Schutz für S3 ist an bestimmte Kontingente gebunden, z. B. an maximale Dateigrößen. Weitere Informationen finden Sie [in der GuardDuty Dokumentation unter Kontingente im Malware-Schutz für S3](https://docs.aws.amazon.com/guardduty/latest/ug/malware-protection-s3-quotas-guardduty.html) und [Unterstützbarkeit der Amazon S3-Funktionen](https://docs.aws.amazon.com/guardduty/latest/ug/supported-s3-features-malware-protection-s3.html).
+ Diese Lösung verwendet nur die Authentifizierung mit Benutzername und Passwort von Amazon Cognito. Zertifikatsbasierte oder andere Authentifizierungsmethoden werden in dieser Vorlage nicht unterstützt. Standardmäßig konfiguriert diese Lösung keine Multi-Faktor-Authentifizierung (MFA).
+ Die Lösung implementiert eine IP-basierte Zugriffskontrolle nur über Sicherheitsgruppen.

## Architektur
<a name="secure-file-transfers-architecture"></a>

Das folgende Architekturdiagramm zeigt die Ressourcen, die in diesem Muster bereitgestellt werden. Diese Lösung verwendet Amazon Cognito für die Benutzerauthentifizierung und Autorisierung. Ein AWS Transfer Family SFTP-Server wird für Datei-Uploads verwendet. Dateien werden in Amazon S3 S3-Buckets gespeichert, und Amazon GuardDuty scannt die Dateien auf Malware. Amazon SNS sendet eine E-Mail-Benachrichtigung, wenn Malware erkannt wird.

![Verwenden von GuardDuty und Cognito zur sicheren Übertragung von Dateien in Amazon S3 S3-Buckets.](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/images/pattern-img/39d98ebe-2844-4ccd-a497-9b796b7da5e8/images/05567010-e189-40e7-acab-74e77c4f8525.png)


Das Diagramm zeigt den folgenden Workflow:

1. Ein Benutzer stellt eine Verbindung zum SFTP-Serverendpunkt in her. AWS Transfer Family Dadurch wird der Authentifizierungsprozess mit dem Amazon Cognito Cognito-Benutzerpool eingeleitet.

1. Eine Lambda-Funktion initiiert den Authentifizierungs- und Autorisierungsprozess und validiert die Anmeldeinformationen des Benutzers mit Amazon Cognito.

1. Die Lambda-Funktion gibt den `UploadBucket` Amazon S3 S3-Bucket als Home-Verzeichnis zurück. Der Benutzer übernimmt die IAM-Rolle für den Transfer Family Family-Server, und die Lambda-Funktion benachrichtigt den Benutzer, dass er erfolgreich authentifiziert wurde.

1. Der Benutzer lädt eine Datei auf den Transfer Family SFTP-Server hoch. Die Datei wird im `UploadBucket` Amazon S3 S3-Bucket gespeichert.

1. GuardDuty scannt die Datei auf Malware. Die möglichen Scanergebnisse sind `NO_THREATS_FOUND``THREATS_FOUND`,`UNSUPPORTED`,`ACCESS_DENIED`, und`FAILED`. Beispielergebnisse finden Sie in der GuardDuty Dokumentation unter [Ergebnis des S3-Objektscans](https://docs.aws.amazon.com/guardduty/latest/ug/monitor-with-eventbridge-s3-malware-protection.html#s3-object-scan-status-malware-protection-s3-ev).

1. Eine EventBridge Regel erkennt das Scanergebnis-Ereignis.

1. EventBridge initiiert die Lambda-Funktion für das File-Routing.

1. Die Lambda-Funktion verarbeitet das Ereignis und filtert die Dateien anhand der Scanergebnisse wie folgt:
   + Dateien mit einem `NO_THREATS_FOUND` Scanergebnis werden an den `CleanBucket` Amazon S3 S3-Bucket gesendet.
   + Dateien mit einem `THREATS_FOUND` Scanergebnis werden an den `MalwareBucket` Amazon S3 S3-Bucket gesendet.
   + Dateien mit einem `UNSUPPORTED` Scanergebnis werden an den `ErrorBucket` Amazon S3 S3-Bucket gesendet.
   + Dateien mit einem `ACCESS_DENIED` Scanergebnis werden an den `ErrorBucket` Amazon S3 S3-Bucket gesendet.
   + Dateien mit einem `FAILED` Scanergebnis werden an den `ErrorBucket` Amazon S3 S3-Bucket gesendet.

   Alle Dateien sind mit einem verschlüsselt AWS KMS key.

1. Wenn eine Datei an den `MalwareBucket` Amazon S3 S3-Bucket gesendet wurde, initiiert die Lambda-Funktion ein Amazon SNS SNS-Thema. Das Amazon SNS SNS-Thema sendet eine E-Mail-Benachrichtigung an eine von Ihnen konfigurierte E-Mail-Adresse.

## Tools
<a name="secure-file-transfers-tools"></a>

**AWS-Services**
+ [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) hilft Ihnen dabei, die Kennzahlen Ihrer AWS Ressourcen und der Anwendungen, auf denen Sie laufen, AWS in Echtzeit zu überwachen.
+ [Amazon Cognito](https://docs.aws.amazon.com/cognito/latest/developerguide/what-is-amazon-cognito.html) bietet Authentifizierung, Autorisierung und Benutzerverwaltung für Web- und mobile Apps.
+ [Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html) ist ein serverloser Event-Bus-Service, mit dem Sie Ihre Anwendungen mit Echtzeitdaten aus einer Vielzahl von Quellen verbinden können. Zum Beispiel AWS Lambda Funktionen, HTTP-Aufruf-Endpunkte, die API-Ziele verwenden, oder Event-Busse in anderen. AWS-Konten
+ [Amazon GuardDuty](https://docs.aws.amazon.com/guardduty/latest/ug/what-is-guardduty.html) ist ein Dienst zur kontinuierlichen Sicherheitsüberwachung, der Protokolle analysiert und verarbeitet, um unerwartete und potenziell nicht autorisierte Aktivitäten in Ihrer AWS Umgebung zu identifizieren.
+ [AWS Key Management Service (AWS KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html) hilft Ihnen dabei, kryptografische Schlüssel zu erstellen und zu kontrollieren, um Ihre Daten zu schützen.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) ist ein Datenverarbeitungsservice, mit dem Sie Code ausführen können, ohne dass Sie Server bereitstellen oder verwalten müssen. Es führt Ihren Code nur bei Bedarf aus und skaliert automatisch, sodass Sie nur für die tatsächlich genutzte Rechenzeit zahlen.
+ [Amazon Simple Notification Service (Amazon SNS)](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) unterstützt Sie bei der Koordination und Verwaltung des Nachrichtenaustauschs zwischen Herausgebern und Kunden, einschließlich Webservern und E-Mail-Adressen.
+ [Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) ist ein cloudbasierter Objektspeicherservice, der Sie beim Speichern, Schützen und Abrufen beliebiger Datenmengen unterstützt.
+ [AWS Transfer Family](https://docs.aws.amazon.com/transfer/latest/userguide/what-is-aws-transfer-family.html)unterstützt Sie bei der Übertragung von Dateien in und aus AWS Speicherdiensten über die Protokolle SFTP, FTPS oder FTP.
+ [Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) hilft Ihnen dabei, AWS Ressourcen in einem von Ihnen definierten virtuellen Netzwerk bereitzustellen. Dieses virtuelle Netzwerk entspricht einem herkömmlichen Netzwerk, wie Sie es in Ihrem Rechenzentrum betreiben würden, mit den Vorteilen der Verwendung der skalierbaren Infrastruktur von AWS.

**Code-Repository**

Der Code für dieses Muster ist im Repository GitHub [AWS Transfer Family und der GuardDuty Malware Scanning Solution](https://github.com/aws-samples/sample-secure-transfer-family-code) verfügbar.

## Best Practices
<a name="secure-file-transfers-best-practices"></a>

Die bereitgestellte CloudFormation Vorlage wurde so konzipiert, dass sie viele AWS bewährte Methoden berücksichtigt, z. B. Berechtigungen mit den geringsten Rechten für IAM-Rollen und -Richtlinien, Verschlüsselung im Ruhezustand und bei der Übertragung sowie automatische Schlüsselrotation. Für Produktionsumgebungen sollten Sie die Implementierung der folgenden zusätzlichen Empfehlungen in Betracht ziehen:
+ [MFA](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-mfa.html) für Amazon Cognito Cognito-Benutzer aktivieren
+ Implementieren Sie [AWS Shield](https://docs.aws.amazon.com/waf/latest/developerguide/shield-chapter.html)einen Distributed-Denial-of-Service (DDoS) -Schutz
+ Konfigurieren Sie [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html)für eine kontinuierliche Compliance-Überwachung
+ Implementieren [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)Sie eine umfassende API-Protokollierung
+ Richten Sie [Amazon GuardDuty](https://docs.aws.amazon.com/guardduty/latest/ug/what-is-guardduty.html) für die Erkennung von Bedrohungen ein, die über das Scannen von Malware hinausgeht
+ Implementieren [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub-v2.html)Sie ein zentralisiertes Sicherheitsmanagement
+ [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html)Für die Verwaltung von Anmeldeinformationen verwenden
+ Implementieren Sie die Überwachung des Netzwerkverkehrs mit [Traffic Mirroring](https://docs.aws.amazon.com/vpc/latest/mirroring/what-is-traffic-mirroring.html)
+ [Amazon Macie](https://docs.aws.amazon.com/macie/latest/user/what-is-macie.html) für die Erkennung und den Schutz sensibler Daten in Amazon S3 konfigurieren
+ Führen Sie regelmäßige Sicherheitsbewertungen und Penetrationstests durch
+ Erstellen Sie einen formellen Plan zur Reaktion auf Vorfälle
+ Implementieren Sie automatisiertes Patching für alle Komponenten
+ Führen Sie regelmäßige Sicherheitsschulungen für Administratoren durch
+ Richten Sie das Sicherheitsmanagement [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html)für mehrere Konten ein

## Epen
<a name="secure-file-transfers-epics"></a>

### Stellen Sie die Ressourcen bereit
<a name="deploy-the-resources"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Klonen Sie das Repository | Geben Sie den folgenden Befehl ein, um das Repository [AWS Transfer Family und die GuardDuty Malware-Scanlösung](https://github.com/aws-samples/sample-secure-transfer-family-code) auf Ihre lokale Workstation zu klonen:<pre>git clone https://github.com/aws-samples/sample-secure-transfer-family-code.git</pre> | App-Entwickler, DevOps Ingenieur | 
| Erstellen Sie den CloudFormation Stapel. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/secure-file-transfers.html) | Cloud-Administrator, Ingenieur DevOps  | 

### Konfigurieren Sie die Ressourcen
<a name="configure-the-resources"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Schalten Sie den Malware-Schutz ein. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/secure-file-transfers.html) | Cloud-Administrator, AWS-Administrator | 
| Fügen Sie Benutzer zum Benutzerpool hinzu. | Fügen Sie einen oder mehrere Benutzer zum Amazon Cognito Cognito-Benutzerpool hinzu. Anweisungen finden Sie [in der Amazon Cognito Cognito-Dokumentation unter Benutzer in Ihrem Benutzerpool verwalten](https://docs.aws.amazon.com/cognito/latest/developerguide/managing-users.html). | Cloud-Administrator, AWS-Administrator | 

### Testen Sie den SFTP-Server
<a name="test-the-sftp-server"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Connect zum SFTP-Serverendpunkt her. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/secure-file-transfers.html) | App-Entwickler, Cloud-Administrator, Cloud-Architekt, DevOps Ingenieur | 

## Fehlerbehebung
<a name="secure-file-transfers-troubleshooting"></a>


| Problem | Lösung | 
| --- | --- | 
| Die Benutzerauthentifizierung schlägt fehl | [See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/secure-file-transfers.html)Eine Liste der AWS CLI Befehle, die Ihnen bei der Durchführung dieser Schritte zur Problembehandlung helfen können, finden Sie im Abschnitt [Zusätzliche Informationen](#secure-file-transfers-additional) unter *Nützliche Befehle für die Problembehandlung*. | 
| Die SFTP-Authentifizierung schlägt fehl | [See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/secure-file-transfers.html)Eine Liste der AWS CLI Befehle, die Ihnen bei der Durchführung dieser Schritte zur Fehlerbehebung helfen können, finden Sie im Abschnitt [Zusätzliche Informationen](#secure-file-transfers-additional) unter *Hilfreiche Befehle für die Problembehandlung*. | 
| Der Zugriff auf das Hochladen von Dateien wurde verweigert | [See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/secure-file-transfers.html)Eine Liste der AWS CLI Befehle, die Ihnen bei der Durchführung dieser Schritte zur Fehlerbehebung helfen können, finden Sie im Abschnitt [Zusätzliche Informationen](#secure-file-transfers-additional) unter *Hilfreiche Befehle für die Problembehandlung*. | 
| Kein Malware-Scan | [See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/secure-file-transfers.html)Eine Liste von AWS CLI Befehlen, die Ihnen bei der Durchführung dieser Schritte zur Fehlerbehebung helfen können, finden Sie unter *Nützliche Befehle für die Fehlerbehebung* im Abschnitt [Zusätzliche Informationen](#secure-file-transfers-additional). | 
| Lambda-Funktionsfehler | [See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/secure-file-transfers.html)Eine Liste der AWS CLI Befehle, die Ihnen bei der Durchführung dieser Schritte zur Problembehandlung helfen können, finden Sie im Abschnitt [Zusätzliche Informationen](#secure-file-transfers-additional) unter *Nützliche Befehle für die Problembehandlung*. | 

## Zugehörige Ressourcen
<a name="secure-file-transfers-resources"></a>
+ [Familien-Web-Apps](https://docs.aws.amazon.com/transfer/latest/userguide/web-app.html) übertragen (Dokumentation zu Transfer Family)

## Zusätzliche Informationen
<a name="secure-file-transfers-additional"></a>

**Nützliche Befehle für die Problembehandlung**

Überprüfen Sie den Status eines CloudFormation Stacks:

```
aws cloudformation describe-stacks \
  --stack-name <STACK_NAME>
```

Alle Benutzer in einem Amazon Cognito Cognito-Benutzerpool auflisten:

```
aws cognito-idp list-users \
  --user-pool-id <USER_POOL_ID>
```

Logs für Lambda-Funktionen anzeigen:

```
aws logs describe-log-groups \
  --log-group-name-prefix /aws/lambda/
```

Überprüfen Sie den Status von GuardDuty:

```
aws guardduty list-detectors
```

Überprüfen Sie die Sicherheitsgruppenregeln:

```
aws ec2 describe-security-groups \
  --group-ids <SECURITY_GROUP_ID> \
  --output table
```

Überprüfen Sie den Status des AWS Transfer Family Servers:

```
aws transfer describe-server \
  --server-id <SERVER_ID>
```

Alle Dateien in einem Amazon S3 S3-Bucket auflisten:

```
aws s3 ls s3://<BUCKET_NAME>/ \
  --recursive
```

Überprüfen Sie den Status einer EventBridge Regel:

```
aws events describe-rule \
  --name <RULE_NAME>
```