AWSSupport-TroubleshootLambdaInternetAccess - AWS Systems Manager Guide de référence du manuel d'automatisation

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

AWSSupport-TroubleshootLambdaInternetAccess

Description

Le AWSSupport-TroubleshootLambdaInternetAccess runbook vous aide à résoudre les problèmes d'accès à Internet liés à une AWS Lambda fonction lancée dans Amazon Virtual Private Cloud (Amazon VPC). Les ressources telles que les itinéraires de sous-réseau, les règles des groupes de sécurité et les règles de liste de contrôle d'accès réseau (ACL) sont examinées pour confirmer que l'accès Internet sortant est autorisé.

Exécuter cette automatisation (console)

Type de document

 Automatisation

Propriétaire

Amazon

Plateformes

LinuxmacOS, Windows

Paramètres

  • AutomationAssumeRole

    Type : chaîne

    Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle AWS Identity and Access Management (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.

  • FunctionName

    Type : chaîne

    Description : (Obligatoire) Nom de la fonction Lambda pour laquelle vous souhaitez résoudre les problèmes d'accès à Internet.

  • destinationIp

    Type : chaîne

    Description : (Obligatoire) Adresse IP de destination à laquelle vous souhaitez établir une connexion sortante.

  • destinationPort

    Type : chaîne

    Par défaut: 443

    Description : (Facultatif) Le port de destination sur lequel vous souhaitez établir une connexion sortante.

Autorisations IAM requises

Le AutomationAssumeRole paramètre nécessite les actions suivantes pour utiliser correctement le runbook.

  • lambda:GetFunction

  • ec2:DescribeRouteTables

  • ec2:DescribeNatGateways

  • ec2:DescribeSecurityGroups

  • ec2:DescribeNetworkAcls

Étapes de document

  • aws:executeScript- Vérifie la configuration des différentes ressources de votre VPC où la fonction Lambda a été lancée.

  • aws:branch- Branches basées sur le fait que la fonction Lambda spécifiée se trouve dans un VPC ou non.

  • aws:executeScript- Examine les routes de la table de routage pour le sous-réseau sur lequel la fonction Lambda a été lancée et vérifie que les routes menant à une passerelle de traduction d'adresses réseau (NAT) et à une passerelle Internet sont présentes. Confirme que la fonction Lambda ne se trouve pas dans un sous-réseau public.

  • aws:executeScript- Vérifie que le groupe de sécurité associé à la fonction Lambda autorise l'accès Internet sortant en fonction des valeurs spécifiées pour destinationIp les paramètres et. destinationPort

  • aws:executeScript- Vérifie les règles ACL associées aux sous-réseaux de la fonction Lambda et la passerelle NAT autorise l'accès Internet sortant en fonction des valeurs spécifiées pour les paramètres et. destinationIp destinationPort

Sorties

CheckVPC.vpc : ID du VPC sur lequel votre fonction Lambda a été lancée.

CheckVPC.subnet - Les identifiants des sous-réseaux sur lesquels votre fonction Lambda a été lancée.

CheckVPC.SecurityGroups - Groupes de sécurité associés à la fonction Lambda.

Checknacl.nacl - Message d'analyse avec les noms des ressources. LambdaIpfait référence à l'adresse IP privée de l'interface elastic network de votre fonction Lambda. L'LambdaIpRulesobjet n'est généré que pour les sous-réseaux dotés d'une route vers une passerelle NAT. Le contenu suivant est un exemple de sortie.

{ "subnet-1234567890":{ "NACL":"acl-1234567890", "destinationIp_Egress":"Allowed", "destinationIp_Ingress":"notAllowed", "Analysis":"This NACL has an allow rule for Egress traffic but there is no Ingress rule. Please allow the destination IP / destionation port in Ingress rule", "LambdaIpRules":{ "{LambdaIp}":{ "Egress":"notAllowed", "Ingress":"notAllowed", "Analysis":"This is a NAT subnet NACL. It does not have ingress or egress rule allowed in it for Lambda's corresponding private ip {LambdaIp} Please allow this IP in your egress and ingress NACL rules" } } }, "subnet-0987654321":{ "NACL":"acl-0987654321", "destinationIp_Egress":"Allowed", "destinationIp_Ingress":"notAllowed", "Analysis":"This NACL has an allow rule for Egress traffic but there is no Ingress rule. Please allow the destination IP / destionation port in Ingress rule" } }

checkSecurityGroups.secgrps : analyse du groupe de sécurité associé à votre fonction Lambda. Le contenu suivant est un exemple de sortie.

{ "sg-123456789":{ "Status":"Allowed", "Analysis":"This security group has allowed destintion IP and port in its outbuond rule." } }

Checksubnet.subnets - Analyse des sous-réseaux de votre VPC associés à votre fonction Lambda. Le contenu suivant est un exemple de sortie.

{ "subnet-0c4ee6cdexample15":{ "Route":{ "DestinationCidrBlock":"8.8.8.0/26", "NatGatewayId":"nat-00f0example69fdec", "Origin":"CreateRoute", "State":"active" }, "Analysis":"This Route Table has an active NAT gateway path. Also, The NAT gateway is launched in public subnet", "RouteTable":"rtb-0b1fexample16961b" } }