View a markdown version of this page

Tutorial: Konfiguration des privaten Netzwerkzugriffs mit einem AWS Client VPN - Von Amazon verwaltete Workflows für Apache Airflow

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.

Tutorial: Konfiguration des privaten Netzwerkzugriffs mit einem AWS Client VPN

Dieses Tutorial führt Sie durch die Schritte zum Erstellen eines VPN-Tunnels von Ihrem Computer zum Apache Airflow-Webserver für Ihre Amazon Managed Workflows for Apache Airflow-Umgebung. Um über einen VPN-Tunnel eine Verbindung zum Internet herzustellen, müssen Sie zunächst einen Endpunkt erstellen. AWS Client VPN Nach der Einrichtung fungiert ein Client-VPN-Endpunkt als VPN-Server, der eine sichere Verbindung von Ihrem Computer zu den Ressourcen in Ihrer VPC ermöglicht. Anschließend stellen Sie von Ihrem Computer aus mithilfe von AWS Client VPN for Desktop eine Verbindung zum Client-VPN her.

Anmerkung

Dieses Tutorial bezieht sich auf den Zugriffsmodus Privates Netzwerk. Wenn Sie sowohl öffentlichen als auch privaten Netzwerkzugriff ausgewählt haben, benötigen Sie kein VPN, um auf die Apache Airflow-Benutzeroberfläche zuzugreifen, da sie über das Internet zugänglich ist.

Privates Netzwerk

In diesem Tutorial wird davon ausgegangen, dass Sie den privaten Netzwerkzugriffsmodus für Ihren Apache Airflow-Webserver ausgewählt haben.

Dieses Bild zeigt die Architektur für eine Amazon MWAA-Umgebung mit privatem Netzwerkzugriff.

Der Zugriffsmodus für private Netzwerke beschränkt den Zugriff auf die Apache Airflow-Benutzeroberfläche auf Benutzer in Ihrer Amazon VPC, denen Zugriff auf die IAM-Richtlinie für Ihre Umgebung gewährt wurde.

Wenn Sie eine Umgebung mit privatem Netzwerkzugriff erstellen, müssen Sie alle Ihre Abhängigkeiten in einem Python-Wheel-Archiv (.whl) verpacken und dann in Ihrem darauf verweisen. .whl requirements.txt Anweisungen zum Verpacken und Installieren Ihrer Abhängigkeiten mit Wheel finden Sie unter Abhängigkeiten mit Python Wheel verwalten.

Die folgende Abbildung zeigt, wo Sie die Option Privates Netzwerk auf der Amazon MWAA-Konsole finden.

Dieses Bild zeigt, wo Sie die Option Privates Netzwerk auf der Amazon MWAA-Konsole finden.

Anwendungsfälle

Sie können dieses Tutorial vor oder nach der Erstellung einer Amazon MWAA-Umgebung verwenden. Sie müssen dieselbe Amazon VPC, dieselben VPC-Sicherheitsgruppen und privaten Subnetze wie Ihre Umgebung verwenden. Wenn Sie dieses Tutorial verwenden, nachdem Sie eine Amazon MWAA-Umgebung erstellt haben, können Sie nach Abschluss der Schritte zur Amazon MWAA-Konsole zurückkehren und den Zugriffsmodus Ihres Apache Airflow-Webservers in Privates Netzwerk ändern.

Bevor Sie beginnen

  1. Prüfen Sie die Benutzerberechtigungen. Stellen Sie sicher, dass Ihr Konto in AWS Identity and Access Management (IAM) über ausreichende Berechtigungen zum Erstellen und Verwalten von VPC-Ressourcen verfügt.

  2. Verwenden Sie Ihre Amazon MWAA VPC. In diesem Tutorial wird davon ausgegangen, dass Sie das Client-VPN einer vorhandenen VPC zuordnen. Die Amazon VPC muss sich in derselben AWS-Region Amazon MWAA-Umgebung befinden und über zwei private Subnetze verfügen. Wenn Sie keine Amazon VPC erstellt haben, verwenden Sie die Vorlage in. CloudFormation Option drei: Erstellen eines Amazon VPC-Netzwerks ohne Internetzugang

Ziele

In diesem Tutorial führen Sie folgende Aufgaben durch:

  1. Erstellen Sie einen AWS Client VPN Endpunkt mithilfe einer CloudFormation Vorlage für eine bestehende Amazon VPC.

  2. Generieren Sie Server- und Client-Zertifikate und -Schlüssel und laden Sie dann das Serverzertifikat und den Schlüssel AWS Certificate Manager in dieselbe AWS-Region Amazon MWAA-Umgebung hoch.

  3. Laden Sie eine Client-VPN-Endpunktkonfigurationsdatei für Ihr Client-VPN herunter, ändern Sie sie und verwenden Sie die Datei, um ein VPN-Profil für die Verbindung mit dem Client-VPN für Desktop zu erstellen.

(Optional) Erster Schritt: Identifizieren Sie Ihre VPC, CIDR-Regeln und VPC-Sicherheit

Im folgenden Abschnitt wird beschrieben, wie Sie die IDs für Ihre Amazon VPC und Ihre VPC-Sicherheitsgruppe finden und wie Sie die CIDR-Regeln identifizieren können, die Sie für die Erstellung Ihres Client-VPN in den nachfolgenden Schritten benötigen.

Identifizieren Sie Ihre CIDR-Regeln

Im folgenden Abschnitt wird erklärt, wie Sie die CIDR-Regeln identifizieren, die Sie benötigen, um Ihr Client-VPN zu erstellen.

Um den CIDR für Ihr Client-VPN zu identifizieren
  1. Öffnen Sie die Seite „Ihre Amazon VPCs“ auf der Amazon VPC-Konsole.

  2. Verwenden Sie die Regionsauswahl in der Navigationsleiste, um dieselbe AWS-Region wie eine Amazon MWAA-Umgebung auszuwählen.

  3. Wählen Sie Ihre Amazon VPC.

  4. Angenommen, die CIDRs für Ihre privaten Subnetze lauten wie folgt:

    • Privates Subnetz 1:10.192.10.0 /24

    • Privates Subnetz 2:10.192.11.0 /24

    Wenn der CIDR für Ihre Amazon-VPC 10.192.0.0 lautet, wäre der Client-IPv4-CIDR/16, den Sie für Ihr Client-VPN angeben würden, 172.16.0.0. /22

  5. Speichern Sie diesen CIDR-Wert und den Wert Ihrer VPC-ID für nachfolgende Schritte.

Identifizieren Sie Ihre VPC und Sicherheitsgruppen

Im folgenden Abschnitt wird erklärt, wie Sie die ID Ihrer Amazon VPC und Sicherheitsgruppen finden, die Sie zur Erstellung Ihres Client-VPN benötigen.

Anmerkung

Möglicherweise verwenden Sie mehr als eine Sicherheitsgruppe. In den nachfolgenden Schritten müssen Sie alle Sicherheitsgruppen Ihrer VPC angeben.

Um die Sicherheitsgruppen zu identifizieren
  1. Öffnen Sie die Seite „Sicherheitsgruppen“ auf der Amazon VPC-Konsole.

  2. Verwenden Sie die Regionsauswahl in der Navigationsleiste, um die auszuwählen. AWS-Region

  3. Suchen Sie in der VPC-ID nach der Amazon VPC und identifizieren Sie die Sicherheitsgruppen, die der VPC zugeordnet sind.

  4. Speichern Sie die ID Ihrer Sicherheitsgruppen und Ihrer VPC für nachfolgende Schritte.

Schritt zwei: Erstellen Sie die Server- und Client-Zertifikate

Client VPN-Endpunkte unterstützen bei RSA nur Schlüsselgrößen von 1024-Bit und 2048-Bit. Im folgenden Abschnitt wird erklärt, wie Sie OpenVPN easy-rsa verwenden, um die Server- und Client-Zertifikate und -Schlüssel zu generieren und die Zertifikate dann mit () auf ACM hochzuladen. AWS Command Line Interface AWS CLI

Um die Client-Zertifikate zu erstellen
  1. Folgen Sie diesen schnellen Schritten, um die Zertifikate zu erstellen und über den AWS CLI Link Client-Authentifizierung und -Autorisierung: Gegenseitige Authentifizierung auf ACM hochzuladen.

  2. In diesen Schritten müssen Sie beim Hochladen Ihrer Server- und Client-Zertifikate im AWS CLI Befehl dieselbe Umgebung AWS-Region wie eine Amazon MWAA-Umgebung angeben. Hier sind einige Beispiele dafür, wie Sie die Region in diesen Befehlen angeben:

    1. Beispiel Region für das Serverzertifikat
      aws acm import-certificate --certificate fileb://server.crt --private-key fileb://server.key --certificate-chain fileb://ca.crt --region us-west-2
    2. Beispiel Region für das Client-Zertifikat
      aws acm import-certificate --certificate fileb://client1.domain.tld.crt --private-key fileb://client1.domain.tld.key --certificate-chain fileb://ca.crt --region us-west-2
    3. Speichern Sie nach diesen Schritten den Wert, der in der AWS CLI Antwort für die ARNs des Serverzertifikats und des Clientzertifikats zurückgegeben wurde. Sie geben diese ARNs in Ihrer CloudFormation Vorlage an, um das Client-VPN zu erstellen.

  3. In diesen Schritten werden ein Client-Zertifikat und ein privater Schlüssel auf Ihrem Computer gespeichert. Hier ist ein Beispiel dafür, wo Sie diese Anmeldeinformationen finden:

    1. Beispiel auf macOS

      Auf macOS werden die Inhalte unter gespeichert/Users/your-user/custom_folder. Wenn du alle (ls -a) Inhalte dieses Verzeichnisses auflistest, erhältst du etwas Ähnliches wie das Folgende:

      . .. ca.crt client1.domain.tld.crt client1.domain.tld.key server.crt server.key
    2. Speichern Sie nach diesen Schritten den Inhalt oder notieren Sie sich den Speicherort des Client-Zertifikats in client1.domain.tld.crt und den privaten Schlüssel inclient1.domain.tld.key. Sie fügen diese Werte zur Konfigurationsdatei für Ihr Client-VPN hinzu.

Schritt drei: Speichern Sie CloudFormation Vorlage lokal

Der folgende Abschnitt enthält die CloudFormation Vorlage zum Erstellen des Client-VPN. Sie müssen dieselben Amazon VPC, VPC-Sicherheitsgruppen und privaten Subnetze wie Ihre Amazon MWAA-Umgebung angeben.

  • Kopieren Sie den Inhalt der folgenden Vorlage und speichern Sie sie lokal unter. mwaa_vpn_client.yaml Sie können die Vorlage auch herunterladen.

    Ersetzen Sie die folgenden Werte:

    • YOUR_CLIENT_ROOT_CERTIFICATE_ARN— Die ARN für Ihr client1.domain.tld Zertifikat in. ClientRootCertificateChainArn

    • YOUR_SERVER_CERTIFICATE_ARN— Die ARN für Ihr Serverzertifikat in. ServerCertificateArn

    • Die Client-IPv4-CIDR-Regel in. ClientCidrBlock Eine CIDR-Regel von wird bereitgestellt. 172.16.0.0/22 Dieser Bereich darf Ihren Amazon VPC-CIDR nicht überschneiden.

    • Ihre Amazon VPC-ID ist eingetroffen. VpcId Eine VPC von vpc-010101010101 wird bereitgestellt.

    • Ihre VPC-Sicherheitsgruppen-IDs sind in. SecurityGroupIds Eine Sicherheitsgruppe von sg-0101010101 wird bereitgestellt.

    AWSTemplateFormatVersion: 2010-09-09 Description: This template deploys a VPN Client Endpoint. Resources: ClientVpnEndpoint: Type: 'AWS::EC2::ClientVpnEndpoint' Properties: AuthenticationOptions: - Type: "certificate-authentication" MutualAuthentication: ClientRootCertificateChainArn: "YOUR_CLIENT_ROOT_CERTIFICATE_ARN" ClientCidrBlock: 172.16.0.0/22 ClientConnectOptions: Enabled: false ConnectionLogOptions: Enabled: false Description: "MWAA Client VPN" DnsServers: [] SecurityGroupIds: - sg-0101010101 SelfServicePortal: '' ServerCertificateArn: "YOUR_SERVER_CERTIFICATE_ARN" SplitTunnel: true TagSpecifications: - ResourceType: "client-vpn-endpoint" Tags: - Key: Name Value: MWAA-Client-VPN TransportProtocol: udp VpcId: vpc-010101010101 VpnPort: 443
Anmerkung

Wenn Sie mehr als eine Sicherheitsgruppe für Ihre Umgebung verwenden, können Sie mehrere Sicherheitsgruppen im folgenden Format angeben:

SecurityGroupIds: - sg-0112233445566778b - sg-0223344556677889f

Vierter Schritt: Erstellen Sie das Client-VPN CloudFormation Stack

Um das zu erstellen AWS Client VPN
  1. Öffnen Sie die AWS CloudFormation -Konsole.

  2. Wählen Sie Vorlage ist fertig, Vorlagendatei hochladen.

  3. Wählen Sie Datei auswählen und wählen Sie Ihre mwaa_vpn_client.yaml Datei aus.

  4. Wählen Sie Weiter, Weiter aus.

  5. Wählen Sie die Bestätigung aus und wählen Sie dann Stapel erstellen.

Fünfter Schritt: Ordnen Sie Ihrem Client-VPN Subnetze zu

Um private Subnetze dem zuzuordnen AWS Client VPN
  1. Öffnen Sie die Amazon VPC-Konsole.

  2. Wählen Sie die Seite Client-VPN-Endpunkte.

  3. Wählen Sie Ihr Client-VPN aus und wählen Sie dann auf der Registerkarte „Verknüpfungen“ die Option „Zuordnen“.

  4. Wählen Sie in der Dropdownliste Folgendes aus:

    • Ihre Amazon VPC in VPC.

    • Eines Ihrer privaten Subnetze unter Wählen Sie ein Subnetz zum Zuordnen aus.

  5. Wählen Sie Associate aus.

Anmerkung

Es dauert mehrere Minuten, bis die VPC und das Subnetz dem Client-VPN zugeordnet sind.

Schritt 6: Fügen Sie Ihrem Client-VPN eine Regel für den Autorisierungseingang hinzu

Sie müssen Ihrem Client-VPN eine Regel für den Autorisierungseingang hinzufügen, die die CIDR-Regel für Ihre VPC verwendet. Wenn Sie bestimmte Benutzer oder Gruppen von Ihrer Active Directory-Gruppe oder Ihrem SAML-based Identitätsanbieter (IdP) aus autorisieren möchten, lesen Sie die Autorisierungsregeln im Client-VPN-Handbuch.

Um den CIDR dem hinzuzufügen AWS Client VPN
  1. Öffnen Sie die Amazon VPC-Konsole.

  2. Wählen Sie die Seite Client-VPN-Endpunkte.

  3. Wählen Sie Ihr Client-VPN aus und wählen Sie dann auf der Registerkarte Autorisierung Ingress autorisieren.

  4. Machen Sie folgende Angaben:

    • Aktivieren Sie die CIDR-Regel Ihrer Amazon VPC im Zielnetzwerk. Beispiel:

      10.192.0.0/16
    • Wählen Sie unter Zugriff gewähren auf die Option Allen Benutzern Zugriff gewähren aus.

    • Geben Sie im Feld Beschreibung einen aussagekräftigen Namen ein.

  5. Wählen Sie Autorisierungsregel hinzufügen.

Anmerkung

Abhängig von den Netzwerkkomponenten für Ihre Amazon VPC müssen Sie diese Regel für den Autorisierungseingang möglicherweise auch zu Ihrer Network Access Control List (NACL) hinzufügen.

Schritt 7: Laden Sie die Konfigurationsdatei für den Client-VPN-Endpunkt herunter

So laden Sie die Konfigurationsdatei herunter
  1. Folgen Sie diesen kurzen Schritten, um die Client-VPN-Konfigurationsdatei unter Laden Sie die Client-VPN-Endpunktkonfigurationsdatei herunter.

  2. In diesen Schritten werden Sie aufgefordert, dem DNS-Namen Ihres Client-VPN-Endpunkts eine Zeichenfolge voranzustellen. Hier ein Beispiel:

    1. Beispiel DNS-Name des Endpunkts

      Wenn der DNS-Name Ihres Client-VPN-Endpunkts lautet:

      remote cvpn-endpoint-0909091212aaee1.prod.clientvpn.us-west-1.amazonaws.com 443

      Sie können eine Zeichenfolge hinzufügen, um Ihren Client-VPN-Endpunkt wie folgt zu identifizieren:

      remote mwaavpn.cvpn-endpoint-0909091212aaee1.prod.clientvpn.us-west-1.amazonaws.com 443
  3. In diesen Schritten werden Sie aufgefordert, den Inhalt des Client-Zertifikats zwischen einem neuen Satz von <cert></cert> Tags und den Inhalt des privaten Schlüssels zwischen einem neuen Satz von <key></key> Tags hinzuzufügen. Hier ein Beispiel:

    1. Öffnen Sie eine Eingabeaufforderung und wechseln Sie in das Verzeichnis, in dem sich Ihr Client-Zertifikat und Ihr privater Schlüssel befinden.

    2. Beispiel macOS client1.domain.tld.crt

      Um den Inhalt der client1.domain.tld.crt Datei auf macOS anzuzeigen, können Sie verwenden. cat client1.domain.tld.crt

      Kopieren Sie den Wert vom Terminal und fügen Sie ihn downloaded-client-config.ovpn wie folgt ein:

      ZZZ1111dddaBBB -----END CERTIFICATE----- </ca> <cert> -----BEGIN CERTIFICATE----- YOUR client1.domain.tld.crt -----END CERTIFICATE----- </cert>
    3. Beispiel macOS client1.domain.tld.key

      Um den Inhalt von anzuzeigen, können Sie verwenden. client1.domain.tld.key cat client1.domain.tld.key

      Kopieren Sie den Wert aus dem Terminal und fügen Sie ihn downloaded-client-config.ovpn wie folgt ein:

      ZZZ1111dddaBBB -----END CERTIFICATE----- </ca> <cert> -----BEGIN CERTIFICATE----- YOUR client1.domain.tld.crt -----END CERTIFICATE----- </cert> <key> -----BEGIN CERTIFICATE----- YOUR client1.domain.tld.key -----END CERTIFICATE----- </key>

Schritt acht: Stellen Sie eine Verbindung zum her AWS Client VPN

Das Client-Formular AWS Client VPN wird kostenlos zur Verfügung gestellt. Sie können Ihren Computer direkt mit verbinden, AWS Client VPN um ein durchgängiges VPN-Erlebnis zu erhalten.

Um eine Verbindung zum Client-VPN herzustellen
  1. Laden Sie das AWS Client VPN für Desktop herunter und installieren Sie es.

  2. Öffnen Sie die AWS Client VPN.

  3. Wählen Sie im VPN-Client-Menü Datei, Verwaltete Profile.

  4. Wählen Sie Profil hinzufügen und wählen Sie dann diedownloaded-client-config.ovpn.

  5. Geben Sie im Feld Anzeigename einen beschreibenden Namen ein.

  6. Wählen Sie Profil hinzufügen, Fertig.

  7. Wählen Sie Connect aus.

Nachdem Sie eine Verbindung zum Client-VPN hergestellt haben, müssen Sie die Verbindung zu anderen VPNs trennen, um auf Ressourcen in Ihrer Amazon VPC zugreifen zu können.

Anmerkung

Möglicherweise müssen Sie den Client beenden und erneut beginnen, bevor Sie eine Verbindung herstellen können.

Als nächstes