Schritt 8: (Optional) Berechtigungen für SSH-Verbindungen über Session Manager zulassen und steuern - AWS Systems Manager

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.

Schritt 8: (Optional) Berechtigungen für SSH-Verbindungen über Session Manager zulassen und steuern

Sie können Benutzern in Ihrem Konto erlauben AWS-Konto , mithilfe von AWS Command Line Interface (AWS CLI) Secure Shell (SSH) -Verbindungen zu verwalteten Knoten herzustellen. AWS Systems Manager Session Manager Benutzer, die eine Verbindung über SSH herstellen, können auch mit dem Secure Copy Protocol (SCP) Dateien zwischen ihren lokalen Maschinen und verwalteten Knoten kopieren. Sie können diese Funktionalität verwenden, um eine Verbindung zu verwalteten Knoten herzustellen, ohne eingehende Ports öffnen oder Bastion-Hosts pflegen zu müssen.

Nachdem Sie SSH-Verbindungen zugelassen haben, können Sie AWS Identity and Access Management (IAM) -Richtlinien verwenden, um Benutzern, Gruppen oder Rollen das Herstellen von SSH-Verbindungen explizit zu gestatten oder zu verweigern. Session Manager

Anmerkung

Protokollieren ist für Session Manager-Sitzungen, die eine Verbindung über Port-Weiterleitung oder SSH herstellen, nicht verfügbar. Dies liegt daran, dass SSH alle Sitzungsdaten verschlüsselt und Session Manager nur als Tunnel für SSH-Verbindungen dient.

Zulassen von SSH-Verbindungen für Session Manager

Gehen Sie wie folgt vor, um über Session Manager SSH-Verbindungen für einen verwalteten Knoten zuzulassen.

Um SSH-Verbindungen für Session Manager zuzulassen
  1. Gehen Sie auf dem verwalteten Knoten, zu dem Sie SSH-Verbindungen erlauben möchten, wie folgt vor:

  2. Gehen Sie auf der lokalen Maschine, mit der Sie mit SSH eine Verbindung zu einem verwalteten Knoten herstellen möchten, wie folgt vor:

    • Stellen Sie sicher, dass Version 1.1.23.0 oder höher des Session Manager-Plugin installiert ist.

      Weitere Informationen zur Installation des Session Manager-Plugins finden Sie unter Installiere das Session Manager Plugin für AWS CLI.

    • Aktualisieren Sie die SSH-Konfigurationsdatei so, dass ein Proxy-Befehl ausgeführt wird, der eine Session Manager-Sitzung startet und alle Daten über die Verbindung überträgt.

      Linux und macOS

      Tipp

      Die SSH-Konfigurationsdatei befindet sich in der Regel unter ~/.ssh/config.

      Fügen Sie der Konfigurationsdatei auf dem lokalen Computer den folgenden Code hinzu.

      # SSH over Session Manager Host i-* mi-* ProxyCommand sh -c "aws ssm start-session --target %h --document-name AWS-StartSSHSession --parameters 'portNumber=%p'" User ec2-user

      Windows

      Tipp

      Die SSH-Konfigurationsdatei befindet sich in der Regel unter C:\Users\<username>\.ssh\config.

      Fügen Sie der Konfigurationsdatei auf dem lokalen Computer den folgenden Code hinzu.

      # SSH over Session Manager Host i-* mi-* ProxyCommand C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe "aws ssm start-session --target %h --document-name AWS-StartSSHSession --parameters portNumber=%p"
    • Erstellen ein Privacy-Enhanced-Mail-Zertifikat (eine PEM-Datei) oder mindestens einen öffentlichen Schlüssel, bzw. überprüfen Sie, ob sie darüber verfügen, die beim Herstellen von Verbindungen zu verwalteten Knoten verwendet werden sollen. Dies muss ein Schlüssel sein, der dem verwalteten Knoten bereits zugeordnet ist. Die Berechtigungen für Ihre private Schlüsseldatei müssen so festgelegt sein, dass nur Sie diese lesen können. Mit dem folgenden Befehl können Sie die Berechtigungen für Ihre private Schlüsseldatei so festlegen, dass nur Sie diese lesen können.

      chmod 400 <my-key-pair>.pem

      Zum Beispiel für eine Amazon Elastic Compute Cloud (Amazon EC2) -Instance die Schlüsselpaardatei, die Sie bei der Erstellung der Instance erstellt oder ausgewählt haben. (Sie geben den Pfad zum Zertifikat oder Schlüssel als Teil des Befehls zum Starten einer Sitzung an. Informationen zum Starten einer Sitzung mithilfe von SSH finden Sie unter Starten einer Sitzung (SSH).)

Steuern von Benutzerberechtigungen für SSH-Verbindungen über Session Manager

Nachdem Sie SSH-Verbindungen über Session Manager auf einem verwalteten Knoten aktiviert haben, können Sie IAM-Richtlinien verwenden, um Benutzern, Gruppen oder Rollen zu erlauben oder zu verweigern, SSH-Verbindungen über Session Manager herzustellen.

So verwenden Sie eine IAM-Richtlinie, um SSH-Verbindungen über Session Manager zu erlauben
  • Wählen Sie eine der folgenden Optionen aus:

    • Option 1: Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

      Wählen Sie im Navigationsbereich Policies (Richtlinien) aus und aktualisieren Sie dann die Berechtigungsrichtlinie für den Benutzer oder die Rolle, dem/der Sie die Berechtigung erteilen möchten, SSH-Verbindungen über Session Manager zu starten.

      Fügen Sie beispielsweise das folgende Element der Schnellstart-Richtlinie hinzu, die Sie in Kurzeinführung in Endbenutzerrichtlinien für Session Manager erstellt haben. Ersetzen Sie jeden example resource placeholder durch Ihre Informationen.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ssm:StartSession", "Resource": [ "arn:aws:ec2:region:account-id:instance/instance-id", "arn:aws:ssm:*:*:document/AWS-StartSSHSession" ] } ] }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }
    • Option 2: Hängen Sie mithilfe der, der oder der AWS Management Console AWS API eine Inline-Richtlinie an AWS CLI eine Benutzerrichtlinie an.

      Verwenden Sie die Methode Ihrer Wahl und fügen Sie die Richtlinienerklärung in Option 1 der Richtlinie für einen AWS Benutzer, eine Gruppe oder eine Rolle bei.

      Informationen finden Sie im Abschnitt Hinzufügen und Entfernen von IAM-Identitätsberechtigungen im IAM-Benutzerhandbuch.

So verwenden Sie eine IAM-Richtlinie, um SSH-Verbindungen über Session Manager zu verweigern
  • Wählen Sie eine der folgenden Optionen aus:

    • Option 1: Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/. Wählen Sie im Navigationsbereich Policies (Richtlinien) aus und aktualisieren Sie dann die Berechtigungsrichtlinie für den Benutzer oder die Rolle, die am Starten von Session Manager-Sitzungen gehindert werden soll.

      Fügen Sie beispielsweise das folgende Element der Schnellstart-Richtlinie hinzu, die Sie in Kurzeinführung in Endbenutzerrichtlinien für Session Manager erstellt haben.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "ssm:StartSession", "Resource": "arn:aws:ssm:*:*:document/AWS-StartSSHSession" } ] }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }
    • Option 2: Hängen Sie mithilfe der, der oder der AWS Management Console AWS API eine Inline-Richtlinie an AWS CLI eine Benutzerrichtlinie an.

      Verwenden Sie die Methode Ihrer Wahl und fügen Sie die Richtlinienerklärung in Option 1 der Richtlinie für einen AWS Benutzer, eine Gruppe oder eine Rolle bei.

      Informationen finden Sie im Abschnitt Hinzufügen und Entfernen von IAM-Identitätsberechtigungen im IAM-Benutzerhandbuch.