Direkt zum Inhalt

Wie verwende ich Session Manager, um Portweiterleitung zu erstellen?

Lesedauer: 2 Minute
0

Ich möchte Session Manager, eine Funktion von AWS Systems Manager, verwenden, um Portweiterleitung zu erstellen.

Behebung

Hinweis: Wenn du beim Ausführen von AWS Command Line Interface (AWS CLI)-Befehlen Fehlermeldungen erhältst, findest du weitere Informationen dazu unter Problembehandlung bei der AWS CLI. Stelle außerdem sicher, dass du die neueste Version der AWS CLI-Version verwendest.

Gehe wie folgt vor, um den Session Manager zum Erstellen einer Portweiterleitung zu verwenden:

  1. Vergewissere dich, dass Systems Manager die Amazon Elastic Compute Cloud (Amazon EC2)-Instance verwaltet. Weitere Informationen findest du unter Verwalten von EC2-Instances mit Systems Manager und Manuelles Installieren und Deinstallieren von AWS Systems Manager Agent auf EC2-Instances für Linux.

  2. Installiere das Session Manager-Plugin für den AWS-CLI.

  3. Führe die folgenden Befehle aus, um zu überprüfen, ob sich der Port in der EC2-Ziel-Instance im Abhörmodus befindet:
    Linux:

    netstat -plant

    macOS:

    lsof -iTCP -sTCP:LISTEN -P -n

    Windows:

    netstat -nb
  4. Konfiguriere eine AWS Identity and Access Management (IAM)-Richtlinie, die es Benutzern ermöglicht, Portweiterleitungssitzungen über Systems Manager zu verwenden. Das folgende IAM-Richtlinienbeispiel ermöglicht die Portweiterleitung auf allen EC2-Instances in einem AWS-Konto:

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": "ssm:StartSession",
                "Resource": [
                    "arn:aws:ec2:*:example-account-id:instance/*",
                    "arn:aws:ssm:*::document/AWS-StartPortForwardingSession"
                ]
            }
        ]
    }

    Hinweis: Ersetze example-account-id durch die Konto-ID:

  5. Führe den Befehl basierend auf dem Betriebssystem aus.
    Linux oder macOS:

    # aws ssm start-session \
     --target example-EC2-instance-ID \
     --document-name AWS-StartPortForwardingSession \  
      --parameters '{"portNumber":["80"], "localPortNumber":["example-local-port"]}'

    Hinweis: Ersetzen example-ec2-instance-ID durch die EC2-Instance-ID und example-local-port durch den lokalen Port.
    Windows:

    # aws ssm start-session  
     --target "example-EC2-instance-ID" --document-name AWS-StartPortForwardingSession --parameters "portNumber"=["80"],"localPortNumber"=["example-local-port"]

    Hinweis: Ersetzen example-ec2-instance-ID durch die EC2-Instance-ID und example-local-port durch den lokalen Port.

  6. Um den Webserverinhalt der Instance anzuzeigen, lade ** http://localhost:example-local-port** im Browser auf dem lokalen Computer.
    Hinweis: Es ist nicht erforderlich, den eingehenden Port 80 auf der verwalteten EC2-Instance in einer Sicherheitsgruppe oder einer Netzwerk-Zugriffssteuerungsliste zu öffnen.

AWS OFFICIALAktualisiert vor 9 Monaten