Complete a 3 Question Survey and Earn a re:Post Badge
Help improve AWS Support Official channel in re:Post and share your experience - complete a quick three-question survey to earn a re:Post badge!
Wie behebe ich Probleme, wenn ich EC2 Connect verwende, um eine Verbindung zu meiner EC2-Instance herzustellen?
Ich möchte Probleme beheben, wenn ich Amazon Elastic Compute Cloud (Amazon EC2) Instance Connect verwende, um eine Verbindung zu meiner EC2-Linux-Instance herzustellen.
Kurzbeschreibung
Im Folgenden findest du häufige Gründe, warum du möglicherweise eine Fehlermeldung erhältst, wenn du EC2 Instance Connect verwendest, um eine Verbindung zu deiner Instance herzustellen:
- EC2 Instance Connect unterstützt die Betriebssystemverteilung (OS) nicht.
- Das EC2 Instance Connect-Paket ist nicht auf der Instance installiert.
- Es liegen fehlende oder falsche Richtlinien oder Berechtigungen für AWS Identity and Access Management (IAM) vor.
- Sicherheitsgruppen, die der Instance zugeordnet sind, listen keine IP-Adressen des EC2 Instance Connect-Dienstes auf.
- Der Netzwerkzugriff oder die Netzwerkkonfiguration sind falsch.
Um die Ursache des Verbindungsfehlers zu ermitteln, kannst du das AWSSupport-TroubleshootEC2InstanceConnect AWS Systems Manager Automation-Runbook verwenden. Informationen zu Automatisierungs-Workflows findest du unter Workflows zur Automatisierung von AWS Support (SAW) und Setting up Automation (Einrichtung der Automatisierung).
Du kannst Probleme mit der EC2-Instance auch manuell beheben.
Lösung
Voraussetzung: Wenn deine Instance keine öffentliche IP-Adresse hat, musst du eine private Netzwerkkonnektivität zur Virtual Private Cloud (VPC) einrichten. Verwende AWS Direct Connect, AWS Site-to-Site VPN oder VPC-Peering, um eine private Netzwerkkonnektivität zur VPC herzustellen. Wenn deine Instance keine öffentliche IPv4-Adresse hat und deine VPC keine private Netzwerkkonnektivitätskonfiguration hat, verwende EC2 Instance Connect Endpoint (EC2-Instance-Verbindungsendpunkt).
Hinweis: Wenn du die serielle EC2-Konsole für Linux-Instances aktiviert hast, kannst du damit Probleme mit unterstützten Nitro-basierten Instance-Typen beheben. Wenn du die Instance nicht erreichen kannst und du den Zugriff auf die serielle Konsole nicht konfiguriert hast, findest du weitere Informationen unter Zugriff auf die serielle EC2-Konsole konfigurieren.
Verwendung des Runbooks, um Probleme mit der EC2-Instance zu beheben
Bevor du das AWSSupport-TroubleshootEC2InstanceConnect-Runbook startest, stelle sicher, dass dein IAM-Benutzer oder deine IAM-Rolle über die erforderlichen Berechtigungen verfügt. Weitere Informationen findest du im Abschnitt Required IAM permissions (Erforderliche IAM-Berechtigungen) von AWSSupport-TroubleshootEC2InstanceConnect.
Gehe wie folgt vor, um das Runbook auszuführen:
- Öffne die Systems Manager-Konsole.
- Wähle im Navigationsbereich Gemeinsame Ressourcen und dann Dokumente aus.
- Wähle ** Automatisierungsdokumente**.
- Gib in das Suchfeld AWSSupport-TroubleshootEC2InstanceConnect ein, und wähle dann das Dokument aus.
- Wähle Automatisierung ausführen.
- Gib die folgenden Werte für die Eingabeparameter ein:
Gib für InstanceId die ID der Instance ein, zu der du keine Verbindung herstellen kannst.
(Optional) Gib für die AutomationAssumeRole den ARN der IAM-Rolle ein, die es der Systems Manager Automation ermöglicht, Aktionen in deinem Namen auszuführen. Wenn du keine IAM-Rolle angibst, verwendet Systems Manager Automation die Berechtigungen des Benutzers, der das Runbook ausführt.
Gib unter Benutzername den Benutzernamen ein, den du für die Verbindung mit der Instance verwendest. Dieser Parameter bestimmt, ob dem Benutzer IAM-Zugriff gewährt wird.
Gib für EC2InstanceConnectRoleOrUser den ARN der IAM-Identität ein, die für EC2 Instance Connect verwendet wird, um Schlüssel an die Instance mithilfe von Push zu übertragen.
(Optional) Gib für SSHPort den SSH-Port ein, der auf der Instance konfiguriert ist. Der Standardwert ist 22, und die Portnummer muss zwischen 1 und 65535 liegen.
(Optional) Gib für SourceNetworkType den Netzwerktyp ein, den du für die Verbindung mit der Instance verwendest.
(Optional) Gib für SourceIpCIDR den Classless Inter-Domain Routing (CIDR)-Bereich ein, der die IP-Adresse des Geräts enthält, das du für die Verbindung mit EC2 Instance Connect verwendest. Wenn dieses Feld leer ist, kann das Runbook nicht ermitteln, ob die Regeln der Sicherheitsgruppe und Netzwerk-Zugriffssteuerungsliste (ACL) der Instance SSH-Datenverkehr zulassen. - Wähle Ausführen.
- Überprüfe die detaillierten Ergebnisse im Abschnitt Ausgaben.
Manuelles Beheben von Fehlern in deiner EC2-Instance
Bestätige die folgenden Konfigurationen, um Probleme zu beheben, wenn du eine Verbindung zur EC2-Instance herstellst:
- EC2 Instance Connect unterstützt die Linux-Distribution der Instance.
- Das EC2 Instance Connect-Paket ist auf der unterstützten Instance installiert.
- Der IAM-Benutzer, der versucht, EC2 Instance Connect zu verwenden, ist berechtigt den öffentlichen Schlüssel mithilfe von Push an die Instance zu übertragen.
- In den Sicherheitsgruppenregeln der Instance sind EC2 Instance Connect-IPs aufgeführt.
- Du hast Netzwerkzugriff auf deine Instance.
Browserbasierte SSH-Verbindungen verwenden
Browserbasierte SSH-Verbindungen setzen voraus, dass die Regeln der Instance-Sicherheitsgruppen für eingehenden Datenverkehr EC2 Instance Connect den Zugriff auf SSH auf TCP-Port 22 erlauben.
EC2 Instance Connect verwendet bestimmte IP-Adressbereiche für browserbasierte SSH-Verbindungen zur Instance. Diese AWS-IP-Adressbereiche unterscheiden sich je nach AWS-Region. Führe die folgenden Befehle aus, um den IP-Adressbereich für EC2 Instance Connect in einer bestimmten Region zu ermitteln.
Hinweis: Ersetze in den folgenden Befehlen us-east-1 durch die Region, in der sich deine Instance befindet. Stelle sicher, dass sich die Instance in einer Region befindet, die EC2 Instance Connect unterstützt.
Windows
Verwende Windows PowerShell, um den folgenden Befehl auszuführen:
PS C:\> Get-AWSPublicIpAddressRange -Region us-east-1 -ServiceKey EC2_INSTANCE_CONNECT | select IpPrefix
Linux
Verwende curl und jq, um den folgenden Befehl auszuführen:
$ curl -s https://ip-ranges.amazonaws.com/ip-ranges.json | jq -r '.prefixes[] | select(.region=="us-east-1") | select(.service=="EC2_INSTANCE_CONNECT") | .ip_prefix'
Aktualisiere die Sicherheitsgruppenregeln für eingehenden Datenverkehr, um den Zugriff auf TCP-Port 22 von dem IP-Adressbereich zuzulassen, den die vorherigen Befehle zurückgeben.
EC2 Instance Connect CLI-Verbindung verwenden
Aktualisiere die Sicherheitsgruppenregeln für eingehenden Datenverkehr, um den Zugriff auf TCP-Port 22 von deiner IP-Adresse aus zu erlauben.
Ähnliche Informationen
Ausführung einer automatisierten Operation, die von Systems Manager Automation unterstützt wird
Mithilfe von EC2 Instance Connect eine Verbindung zur Linux-Instance herstellen
Ähnliche Videos


Relevanter Inhalt
- AWS OFFICIALAktualisiert vor 2 Jahren