Blocco dell'accesso pubblico a sottoreti VPCs e sottoreti - Amazon Virtual Private Cloud

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Blocco dell'accesso pubblico a sottoreti VPCs e sottoreti

VPCBlock Public Access (BPA) è una funzionalità di sicurezza centralizzata che consente di impedire in modo autorevole l'accesso pubblico su Internet alle VPC risorse di un intero AWS account, garantendo la conformità ai requisiti di sicurezza e offrendo al contempo flessibilità per eccezioni specifiche e funzionalità di controllo.

La VPC BPA funzionalità prevede le seguenti modalità:

  • Bidirezionale: tutto il traffico da e verso i gateway Internet e i gateway Internet solo in uscita in questa regione (ad eccezione delle sottoreti e delle sottoreti escluse) è bloccato. VPCs

  • Solo in ingresso: tutto il traffico Internet verso questa regione (ad eccezione delle sottoreti o delle sottoreti che sono VPCs escluse) è bloccato. VPCs È consentito solo il traffico da e verso i NAT gateway e i gateway Internet solo in uscita, poiché questi gateway consentono solo di stabilire connessioni in uscita.

Puoi anche creare «esclusioni» per questa funzione per il traffico che non desideri bloccare. Un'esclusione è una modalità che può essere applicata a una singola rete VPC o a una sottorete, che la esclude dalla BPA modalità dell'account e consente l'accesso bidirezionale o solo in uscita.

Le esclusioni possono avere una delle seguenti modalità:

  • Bidirezionale: è consentito tutto il traffico Internet da e verso le sottoreti e le sottoreti escluseVPCs.

  • Solo in uscita: è consentito il traffico Internet in uscita dalle sottoreti e dalle sottoreti escluse. VPCs Il traffico Internet in entrata verso gli esclusi e le sottoreti è bloccato. VPCs Questo vale solo quando BPA è impostato su Bidirezionale.

BPAnozioni di base

Questa sezione contiene dettagli importanti in merito VPCBPA, inclusi i servizi che lo supportano e come utilizzarlo.

Disponibilità regionale

VPCBPAè disponibile in tutte le AWS regioni commerciali, comprese GovCloud le regioni della Cina.

In questa guida, troverai anche informazioni sull'utilizzo di Network Access Analyzer e Reachability Analyzer con. VPC BPA Tieni presente che Network Access Analyzer e Reachability Analyzer non sono disponibili in tutte le aree commerciali. Per informazioni sulla disponibilità regionale di Network Access Analyzer e Reachability Analyzer, vedere Limitazioni nella Network Access Analyzer Guide e Considerazioni nella Reachability Analyzer Guide.

AWS impatto e supporto del servizio

Il supporto VPC BPA e il traffico verso questi servizi e risorse sono influenzati da VPCBPA:

  • Gateway Internet: tutto il traffico in entrata e in uscita è bloccato.

  • Gateway Internet solo in uscita: tutto il traffico in uscita è bloccato. I gateway Internet Gateway egress-only non consentono il traffico Internet in entrata.

  • NATgateway: tutto il traffico in entrata e in uscita è bloccato. NATi gateway richiedono un gateway Internet per la connettività Internet.

  • Network Load Balancer connesso a Internet: tutto il traffico in entrata e in uscita è bloccato. I Network Load Balancer con accesso a Internet richiedono un gateway Internet per la connettività Internet.

  • Application Load Balancer connesso a Internet: tutto il traffico in entrata e in uscita è bloccato. Gli Application Load Balancer con accesso a Internet richiedono un gateway Internet per la connettività Internet.

  • AWS Global Accelerator: il traffico in entrata verso è bloccato. VPCs

Il traffico relativo alla connettività privata, ad esempio il traffico per i seguenti servizi e risorse, non è bloccato o influenzato da: VPC BPA

  • AWS Client VPN

  • Amazon CloudFront VPCOrigini

  • AWS Nuvola WAN

  • AWS Outposts gateway locale

  • AWS Site-to-Site VPN

  • Transit Gateway

  • Accesso verificato da AWS

  • AWS Wavelength gateway corriere

Importante

Il traffico inviato privatamente dalle risorse dell'utente VPC ad altri servizi in esecuzione sul computerVPC, come il EC2 DNS Resolver, è consentito anche quando BPA è acceso, in quanto non passa attraverso un gateway Internet dell'utente. VPC È possibile che questi servizi effettuino richieste a risorse esterne per conto dell'VPCutente, ad esempio, per risolvere una DNS richiesta, e divulghino informazioni sull'attività delle risorse interne dell'utente VPC se non vengono mitigate da altri controlli di sicurezza.

BPAlimitazioni

VPCBPAla modalità solo ingresso non è supportata in Local Zones (LZs), dove i gateway e i NAT gateway Internet solo in uscita non sono consentiti.

Controlla l'VPABPAaccesso IAM a con una policy

Per esempi di IAM politiche che consentono/negano l'accesso alla VPC BPA funzionalità, consulta. Blocca l'accesso pubblico a sottoreti VPCs e sottoreti

Abilita la modalità BPA bidirezionale per il tuo account

VPCBPAla modalità bidirezionale blocca tutto il traffico da e verso i gateway Internet e i gateway Internet solo in uscita in questa regione (ad eccezione delle sottoreti escluse e delle sottoreti). VPCs Per ulteriori informazioni sulle esclusioni, consultaCreazione ed eliminazione delle esclusioni.

Importante

Ti consigliamo vivamente di esaminare attentamente i carichi di lavoro che richiedono l'accesso a Internet prima di attivarli VPC BPA negli account di produzione.

Nota
  • Per abilitare VPC BPA le sottoreti VPCs and nel tuo account, devi essere il proprietario delle sottoreti and. VPCs

  • Se attualmente condividi VPC sottoreti con altri account, la VPC BPA modalità applicata dal proprietario della sottorete si applica anche al traffico dei partecipanti, ma i partecipanti non possono controllare le impostazioni che influiscono sulla sottorete condivisa. VPC BPA

AWS Management Console
  1. Apri la VPC console Amazon all'indirizzohttps://console.aws.amazon.com/vpc/.

  2. Nel pannello di navigazione a sinistra, seleziona il pulsante Impostazioni.

  3. Scegli Modifica impostazioni di accesso pubblico.

  4. Scegli Attiva il blocco dell'accesso pubblico e Bidirezionale, quindi scegli Salva modifiche.

  5. Attendi che lo stato passi a Attivato. Potrebbero essere necessari alcuni minuti prima che le BPA impostazioni abbiano effetto e l'aggiornamento dello stato.

VPCBPALa modalità bidirezionale è ora attiva.

AWS CLI
  1. Attiva: VPC BPA

    aws ec2 --region us-east-2 modify-vpc-block-public-access-options --internet-gateway-block-mode block-bidirectional

    Potrebbero essere necessari alcuni minuti prima che le BPA impostazioni abbiano effetto e l'aggiornamento dello stato.

  2. Visualizza lo stato di VPCBPA:

    aws ec2 --region us-east-2 describe-vpc-block-public-access-options

Passa alla VPC BPA modalità solo in ingresso

VPCBPAla modalità solo in ingresso blocca tutto il traffico Internet verso questa regione (ad eccezione delle VPCs sottoreti che sono escluse). VPCs È consentito solo il traffico da e verso i NAT gateway e i gateway Internet solo in uscita, poiché questi gateway consentono solo di stabilire connessioni in uscita.

AWS Management Console
  1. Modifica le impostazioni di accesso pubblico nella VPC console e cambia la direzione in Ingress-only.

  2. Salva le modifiche e attendi che lo stato venga aggiornato. Potrebbero essere necessari alcuni minuti prima che le BPA impostazioni abbiano effetto e l'aggiornamento dello stato.

AWS CLI
  1. Modifica la direzione del VPC BPA blocco:

    aws ec2 --region us-east-2 modify-vpc-block-public-access-options --internet-gateway-block-mode block-ingress

    Potrebbero essere necessari alcuni minuti prima che le BPA impostazioni abbiano effetto e l'aggiornamento dello stato.

  2. Visualizza lo stato di VPCBPA:

    aws ec2 --region us-east-2 describe-vpc-block-public-access-options

Creazione ed eliminazione delle esclusioni

Un'VPCBPAesclusione è una modalità che può essere applicata a una singola rete VPC o a una sottorete, che la esclude dalla BPA modalità dell'account e consente l'accesso bidirezionale o solo in uscita. È possibile creare BPA esclusioni VPCs e sottoreti anche quando l'account non BPA è abilitato, per garantire che non si verifichino interruzioni del traffico delle esclusioni quando sono attivate. VPC BPA

È possibile creare un massimo di 50 esclusioni. Per informazioni sulla richiesta di aumento del limite, consulta VPCBPAle esclusioni per account in. VPCQuote Amazon

AWS Management Console
  1. Nella scheda Blocca l'accesso pubblico, in Esclusioni, scegli Crea esclusioni.

  2. Scegli una VPC o una sottorete, scegli la direzione del blocco:

    • Bidirezionale: consente tutto il traffico Internet da e verso le sottoreti e le sottoreti escluseVPCs.

    • Solo uscita: consente il traffico Internet in uscita dalle sottoreti escluse e dalle sottoreti. VPCs Blocca il traffico Internet in entrata verso gli esclusi e le sottoreti. VPCs Questa impostazione si applica quando BPA è impostata su Bidirezionale.

  3. Scegli Crea esclusioni.

  4. Attendi che lo stato di esclusione diventi Attivo. Potrebbe essere necessario aggiornare la tabella di esclusione per visualizzare la modifica.

L'esclusione è stata creata.

AWS CLI
  1. Modifica la direzione di autorizzazione all'esclusione:

    aws ec2 --region us-east-2 create-vpc-block-public-access-exclusion --subnet-id subnet-id --internet-gateway-exclusion-mode allow-bidirectional
  2. L'aggiornamento dello stato di esclusione può richiedere del tempo. Per visualizzare lo stato dell'esclusione:

    aws ec2 --region us-east-2 describe-vpc-block-public-access-exclusions --exclusion-ids exclusion-id

Valutare l'impatto BPA e monitorare BPA

Questa sezione contiene informazioni su come valutare l'impatto del VPC BPA sistema prima di attivarlo e su come monitorare se il traffico viene bloccato dopo l'attivazione.

Valuta l'impatto di BPA con Strumento di analisi degli accessi alla rete

In questa sezione, visualizzerai le risorse del tuo account che utilizzano un gateway Internet prima di abilitare VPC BPA e bloccare l'accesso. Strumento di analisi degli accessi alla rete Utilizza questa analisi per comprendere l'impatto dell'attivazione del tuo account e del blocco del traffico. VPC BPA

Nota
  • Network Access Analyzer non supportaIPv6, quindi non potrai utilizzarlo per visualizzare il potenziale impatto del traffico in uscita dal BPA gateway Internet solo in uscita. IPv6

  • Ti vengono addebitati i costi delle analisi eseguite con Network Access Analyzer. Per ulteriori informazioni, consulta la sezione Prezzi nella Strumento di analisi degli accessi alla rete Guida.

  • Per informazioni sulla disponibilità regionale di Network Access Analyzer, consulta le limitazioni nella Guida Network Access Analyzer.

AWS Management Console
  1. Apri la console AWS Network Insights all'indirizzo. https://console.aws.amazon.com/networkinsights/

  2. Scegli Network Access Analyzer.

  3. Scegli Crea ambito di accesso alla rete.

  4. Scegli Identifica l'accesso da o verso i gateway Internet e scegli Avanti.

  5. Il modello è già configurato per analizzare il traffico da e verso i gateway Internet del tuo account. Puoi visualizzarlo in Origine e destinazione.

  6. Scegli Next (Successivo).

  7. Scegli Crea ambito di accesso alla rete.

  8. Scegli l'ambito che hai appena creato e scegli Analizza.

  9. Attendi il completamento dell'analisi.

  10. Visualizza i risultati dell'analisi. Ogni riga in Findings mostra un percorso di rete che un pacchetto può percorrere in una rete da o verso un gateway Internet del tuo account. In questo caso, se attivi VPC BPA e nessuna delle e/o o delle VPCs sottoreti che appaiono in questi risultati è configurata come BPA esclusione, il traffico verso quelle VPCs e le sottoreti verrà limitato.

  11. Analizza ogni risultato per comprendere l'impatto sulle risorse del BPA tuo. VPCs

L'analisi dell'impatto è completa.

AWS CLI
  1. Crea un ambito di accesso alla rete:

    aws ec2 create-network-insights-access-scope --region us-east-2 --match-paths "Source={ResourceStatement={ResourceTypes=["AWS::EC2::InternetGateway"]}}" "Destination={ResourceStatement={ResourceTypes=["AWS::EC2::InternetGateway"]}}"
  2. Inizia l'analisi dell'ambito:

    aws ec2 start-network-insights-access-scope-analysis --region us-east-2 --network-insights-access-scope-id nis-id
  3. Visualizza i risultati dell'analisi:

    aws ec2 get-network-insights-access-scope-analysis-findings --region us-east-2 --network-insights-access-scope-analysis-id nisa-0aa383a1938f94cd1 --max-items 1

    I risultati mostrano il traffico da e verso i gateway Internet in tutto il VPCs tuo account. I risultati sono organizzati come «risultati». "FindingId«:" AnalysisFinding -1" indica che questo è il primo risultato dell'analisi. Tieni presente che esistono più risultati e ognuno indica un flusso di traffico che sarà influenzato dall'attivazione. VPC BPA Il primo risultato mostrerà che il traffico è iniziato da un gateway Internet (» SequenceNumber «: 1), è passato a un NACL (» SequenceNumber «: 2) a un gruppo di sicurezza (» SequenceNumber «: 3) e è terminato in un'istanza (» SequenceNumber «: 4).

  4. Analizza i risultati per comprendere l'impatto BPA sulle risorse del tuoVPCs.

L'analisi dell'impatto è completa.

Monitora BPA l'impatto con i registri di flusso

VPCLog di flusso è una funzionalità che consente di acquisire le informazioni sul traffico IP da e per le interfacce di rete Elastic in Elastic in Elastic Network. VPC È possibile utilizzare questa funzionalità per monitorare il traffico bloccato VPC BPA dal raggiungimento delle interfacce di rete dell'istanza.

Crea un log di flusso per VPC utilizzare la procedura descritta di seguito. Utilizzo dei log di flusso

Quando crei il log di flusso, assicurati di utilizzare un formato personalizzato che includa il camporeject-reason.

Quando visualizzi i log di flusso, se il traffico verso un ENI viene rifiutato a causa diBPA, vedrai un reject-reason di BPA nella voce del log di flusso.

Oltre alle limitazioni standard per i log di VPC flusso, tieni presente le seguenti limitazioni specifiche per: VPC BPA

  • I log di flusso per VPC BPA non includono i record ignorati.

  • I log di flusso per VPC BPA non sono inclusi bytesanche se si include il bytes campo nel log di flusso.

Tieni traccia dell'eliminazione delle esclusioni con CloudTrail

Questa sezione spiega come monitorare e tenere traccia dell'eliminazione delle VPC BPA esclusioni. AWS CloudTrail

AWS Management Console

Puoi visualizzare tutte le esclusioni eliminate nella cronologia degli CloudTrail eventi cercando Tipo di risorsa > AWS::EC2::VPCBlockPublicAccessExclusion nella AWS CloudTrail console all'indirizzo. https://console.aws.amazon.com/cloudtrailv2/

AWS CLI

Puoi utilizzare il lookup-events comando per visualizzare gli eventi correlati all'eliminazione delle esclusioni:

aws cloudtrail lookup-events --lookup-attributes AttributeKey=ResourceType,AttributeValue=AWS::EC2::VPCBlockPublicAccessExclusion

Verifica che la connettività sia bloccata con Reachability Analyzer

VPCReachability Analyzer può essere utilizzato per valutare se determinati percorsi di rete possono essere raggiunti o meno in base alla configurazione di rete, comprese le impostazioni. VPC BPA

Per informazioni sulla disponibilità regionale di Reachability Analyzer, vedere Considerazioni nella Reachability Analyzer Guide.

AWS Management Console
  1. Apri la console Network Insights all'indirizzo. https://console.aws.amazon.com/networkinsights/home#ReachabilityAnalyzer

  2. Fai clic su Crea e analizza il percorso.

  3. Per il tipo di sorgente, scegli Internet Gateways e seleziona il gateway Internet per il quale desideri bloccare il traffico dal menu a discesa Sorgente.

  4. Per il Tipo di destinazione, scegli Istanze e seleziona l'istanza verso cui vuoi bloccare il traffico dal menu a discesa Destinazione.

  5. Fai clic su Crea e analizza il percorso.

  6. Attendi il completamento dell'analisi. Ciò può richiedere alcuni minuti.

  7. Una volta completato, dovresti vedere che lo stato di raggiungibilità non è raggiungibile e che i dettagli del percorso indicano che VPC_BLOCK_PUBLIC_ACCESS_ENABLED è la causa di questo problema di raggiungibilità.

AWS CLI
  1. Crea un percorso di rete utilizzando l'ID dell'Internet Gateway da cui desideri bloccare il traffico (origine) e l'ID dell'istanza verso cui desideri bloccare il traffico (destinazione):

    aws ec2 --region us-east-2 create-network-insights-path --source igw-id --destination instance-id --protocol TCP
  2. Avvia un'analisi sul percorso di rete:

    aws ec2 --region us-east-2 start-network-insights-analysis --network-insights-path-id nip-id
  3. Recupera i risultati dell'analisi:

    aws ec2 --region us-east-2 describe-network-insights-analyses --network-insights-analysis-ids nia-id
  4. Verifica che ciò VPC_BLOCK_PUBLIC_ACCESS_ENABLED sia dovuto ExplanationCode alla mancanza di raggiungibilità.

Esempio avanzato

Questa sezione contiene un esempio avanzato che ti aiuterà a capire come funziona la funzionalità VPC Block Public Access in diversi scenari. Ogni scenario si basa sullo scenario precedente, quindi è importante completare i passaggi in ordine.

Importante

Non utilizzare questo esempio in un account di produzione. Ti consigliamo vivamente di esaminare attentamente i carichi di lavoro che richiedono l'accesso a Internet prima di attivarli VPC BPA negli account di produzione.

Nota

Per comprendere appieno la VPC BPA funzionalità, avrai bisogno di determinate risorse nel tuo account. In questa sezione, forniamo un AWS CloudFormation modello che puoi utilizzare per fornire le risorse necessarie per comprendere appieno come funziona questa funzionalità. Esistono costi associati alle risorse fornite con il CloudFormation modello e alle analisi eseguite con Network Access Analyzer e Reachability Analyzer. Se utilizzi il modello in questa sezione, assicurati di completare i passaggi di pulizia quando hai finito con questo esempio.

Distribuisci modello CloudFormation

Per dimostrare come funziona questa funzionalità, sono necessarie sottoretiVPC, istanze e altre risorse. Per semplificare il completamento di questa dimostrazione, di seguito abbiamo fornito un AWS CloudFormation modello che puoi utilizzare per aumentare rapidamente le risorse necessarie per gli scenari di questa demo.

Nota

Esistono dei costi associati alle risorse create in questa sezione con il CloudFormation modello, come il costo del NAT gateway e IPv4 gli indirizzi pubblici. Per evitare costi eccessivi, assicuratevi di completare i passaggi di pulizia per rimuovere tutte le risorse create per lo scopo di questo esempio.

Il modello crea le seguenti risorse nel tuo account:

  • Gateway Internet Egress-only

  • Internet Gateway

  • NATgateway

  • Due sottoreti pubbliche

  • Una sottorete privata

  • Due EC2 istanze con indirizzi pubblici e privati IPv4

  • Un'EC2istanza con un IPv6 indirizzo e un indirizzo privato IPv4

  • Un'EC2istanza con un solo IPv4 indirizzo privato

  • Gruppo di sicurezza con SSH traffico ICMP in entrata consentito e traffico ALL in uscita consentito

  • VPCflow-log

  • Endpoint One EC2 Instance Connect nella sottorete B

Copia il modello seguente e salvalo in un file.yaml.

AWSTemplateFormatVersion: '2010-09-09' Description: Creates a VPC with public and private subnets, NAT gateway, and EC2 instances for VPC BPA. Parameters: InstanceAMI: Description: ID of the Amazone Machine Image (AMI) to use with the instances launched by this template Type: AWS::EC2::Image::Id InstanceType: Description: EC2 Instance type to use with the instances launched by this template Type: String Default: t2.micro Resources: # VPC VPCBPA: Type: AWS::EC2::VPC Properties: CidrBlock: 10.0.0.0/16 EnableDnsHostnames: true EnableDnsSupport: true InstanceTenancy: default Tags: - Key: Name Value: VPC BPA # VPC IPv6 CIDR VPCBPAIpv6CidrBlock: Type: AWS::EC2::VPCCidrBlock Properties: VpcId: !Ref VPCBPA AmazonProvidedIpv6CidrBlock: true # EC2 Key Pair VPCBPAKeyPair: Type: AWS::EC2::KeyPair Properties: KeyName: vpc-bpa-key # Internet Gateway VPCBPAInternetGateway: Type: AWS::EC2::InternetGateway Properties: Tags: - Key: Name Value: VPC BPA Internet Gateway VPCBPAInternetGatewayAttachment: Type: AWS::EC2::VPCGatewayAttachment Properties: VpcId: !Ref VPCBPA InternetGatewayId: !Ref VPCBPAInternetGateway # Egress-Only Internet Gateway VPCBPAEgressOnlyInternetGateway: Type: AWS::EC2::EgressOnlyInternetGateway Properties: VpcId: !Ref VPCBPA # Subnets VPCBPAPublicSubnetA: Type: AWS::EC2::Subnet Properties: VpcId: !Ref VPCBPA CidrBlock: 10.0.1.0/24 MapPublicIpOnLaunch: true Tags: - Key: Name Value: VPC BPA Public Subnet A VPCBPAPublicSubnetB: Type: AWS::EC2::Subnet Properties: VpcId: !Ref VPCBPA CidrBlock: 10.0.2.0/24 MapPublicIpOnLaunch: true Tags: - Key: Name Value: VPC BPA Public Subnet B VPCBPAPrivateSubnetC: Type: AWS::EC2::Subnet Properties: VpcId: !Ref VPCBPA CidrBlock: 10.0.3.0/24 MapPublicIpOnLaunch: false Ipv6CidrBlock: !Select [0, !GetAtt VPCBPA.Ipv6CidrBlocks] AssignIpv6AddressOnCreation: true Tags: - Key: Name Value: VPC BPA Private Subnet C # NAT Gateway VPCBPANATGateway: Type: AWS::EC2::NatGateway Properties: AllocationId: !GetAtt VPCBPANATGatewayEIP.AllocationId SubnetId: !Ref VPCBPAPublicSubnetB Tags: - Key: Name Value: VPC BPA NAT Gateway VPCBPANATGatewayEIP: Type: AWS::EC2::EIP Properties: Domain: vpc Tags: - Key: Name Value: VPC BPA NAT Gateway EIP # Route Tables VPCBPAPublicRouteTable: Type: AWS::EC2::RouteTable Properties: VpcId: !Ref VPCBPA Tags: - Key: Name Value: VPC BPA Public Route Table VPCBPAPublicRoute: Type: AWS::EC2::Route DependsOn: VPCBPAInternetGatewayAttachment Properties: RouteTableId: !Ref VPCBPAPublicRouteTable DestinationCidrBlock: 0.0.0.0/0 GatewayId: !Ref VPCBPAInternetGateway VPCBPAPublicSubnetARouteTableAssoc: Type: AWS::EC2::SubnetRouteTableAssociation Properties: SubnetId: !Ref VPCBPAPublicSubnetA RouteTableId: !Ref VPCBPAPublicRouteTable VPCBPAPublicSubnetBRouteTableAssoc: Type: AWS::EC2::SubnetRouteTableAssociation Properties: SubnetId: !Ref VPCBPAPublicSubnetB RouteTableId: !Ref VPCBPAPublicRouteTable VPCBPAPrivateRouteTable: Type: AWS::EC2::RouteTable Properties: VpcId: !Ref VPCBPA Tags: - Key: Name Value: VPC BPA Private Route Table VPCBPAPrivateRoute: Type: AWS::EC2::Route Properties: RouteTableId: !Ref VPCBPAPrivateRouteTable DestinationCidrBlock: 0.0.0.0/0 NatGatewayId: !Ref VPCBPANATGateway VPCBPAPrivateSubnetCRoute: Type: AWS::EC2::Route Properties: RouteTableId: !Ref VPCBPAPrivateRouteTable DestinationIpv6CidrBlock: ::/0 EgressOnlyInternetGatewayId: !Ref VPCBPAEgressOnlyInternetGateway VPCBPAPrivateSubnetCRouteTableAssociation: Type: AWS::EC2::SubnetRouteTableAssociation Properties: SubnetId: !Ref VPCBPAPrivateSubnetC RouteTableId: !Ref VPCBPAPrivateRouteTable # EC2 Instances Security Group VPCBPAInstancesSecurityGroup: Type: AWS::EC2::SecurityGroup Properties: GroupName: VPC BPA Instances Security Group GroupDescription: Allow SSH and ICMP access SecurityGroupIngress: - IpProtocol: tcp FromPort: 22 ToPort: 22 CidrIp: 0.0.0.0/0 - IpProtocol: icmp FromPort: -1 ToPort: -1 CidrIp: 0.0.0.0/0 VpcId: !Ref VPCBPA Tags: - Key: Name Value: VPC BPA Instances Security Group # EC2 Instances VPCBPAInstanceA: Type: AWS::EC2::Instance Properties: ImageId: !Ref InstanceAMI InstanceType: t2.micro KeyName: !Ref VPCBPAKeyPair SubnetId: !Ref VPCBPAPublicSubnetA SecurityGroupIds: - !Ref VPCBPAInstancesSecurityGroup Tags: - Key: Name Value: VPC BPA Instance A VPCBPAInstanceB: Type: AWS::EC2::Instance Properties: ImageId: !Ref InstanceAMI InstanceType: !Ref InstanceType KeyName: !Ref VPCBPAKeyPair SubnetId: !Ref VPCBPAPublicSubnetB SecurityGroupIds: - !Ref VPCBPAInstancesSecurityGroup Tags: - Key: Name Value: VPC BPA Instance B VPCBPAInstanceC: Type: AWS::EC2::Instance Properties: ImageId: !Ref InstanceAMI InstanceType: !Ref InstanceType KeyName: !Ref VPCBPAKeyPair SubnetId: !Ref VPCBPAPrivateSubnetC SecurityGroupIds: - !Ref VPCBPAInstancesSecurityGroup Tags: - Key: Name Value: VPC BPA Instance C VPCBPAInstanceD: Type: AWS::EC2::Instance Properties: ImageId: !Ref InstanceAMI InstanceType: !Ref InstanceType KeyName: !Ref VPCBPAKeyPair NetworkInterfaces: - DeviceIndex: '0' GroupSet: - !Ref VPCBPAInstancesSecurityGroup SubnetId: !Ref VPCBPAPrivateSubnetC Ipv6AddressCount: 1 Tags: - Key: Name Value: VPC BPA Instance D # Flow Logs IAM Role VPCBPAFlowLogRole: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Principal: Service: vpc-flow-logs.amazonaws.com Action: 'sts:AssumeRole' Tags: - Key: Name Value: VPC BPA Flow Logs Role VPCBPAFlowLogPolicy: Type: AWS::IAM::Policy Properties: PolicyName: VPC-BPA-FlowLogsPolicy PolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Action: - 'logs:CreateLogGroup' - 'logs:CreateLogStream' - 'logs:PutLogEvents' - 'logs:DescribeLogGroups' - 'logs:DescribeLogStreams' Resource: '*' Roles: - !Ref VPCBPAFlowLogRole # Flow Logs VPCBPAFlowLog: Type: AWS::EC2::FlowLog Properties: ResourceId: !Ref VPCBPA ResourceType: VPC TrafficType: ALL LogDestinationType: cloud-watch-logs LogGroupName: /aws/vpc-flow-logs/VPC-BPA DeliverLogsPermissionArn: !GetAtt VPCBPAFlowLogRole.Arn LogFormat: '${version} ${account-id} ${interface-id} ${srcaddr} ${dstaddr} ${srcport} ${dstport} ${protocol} ${packets} ${bytes} ${start} ${end} ${action} ${log-status} ${vpc-id} ${subnet-id} ${instance-id} ${tcp-flags} ${type} ${pkt-srcaddr} ${pkt-dstaddr} ${region} ${az-id} ${sublocation-type} ${sublocation-id} ${pkt-src-aws-service} ${pkt-dst-aws-service} ${flow-direction} ${traffic-path} ${reject-reason}' Tags: - Key: Name Value: VPC BPA Flow Logs # EC2 Instance Connect Endpoint VPCBPAEC2InstanceConnectEndpoint: Type: AWS::EC2::InstanceConnectEndpoint Properties: SecurityGroupIds: - !Ref VPCBPAInstancesSecurityGroup SubnetId: !Ref VPCBPAPublicSubnetB Outputs: VPCBPAVPCId: Description: A reference to the created VPC Value: !Ref VPCBPA Export: Name: vpc-id VPCBPAPublicSubnetAId: Description: The ID of the public subnet A Value: !Ref VPCBPAPublicSubnetA VPCBPAPublicSubnetAName: Description: The name of the public subnet A Value: VPC BPA Public Subnet A VPCBPAPublicSubnetBId: Description: The ID of the public subnet B Value: !Ref VPCBPAPublicSubnetB VPCBPAPublicSubnetBName: Description: The name of the public subnet B Value: VPC BPA Public Subnet B VPCBPAPrivateSubnetCId: Description: The ID of the private subnet C Value: !Ref VPCBPAPrivateSubnetC VPCBPAPrivateSubnetCName: Description: The name of the private subnet C Value: VPC BPA Private Subnet C VPCBPAInstanceAId: Description: The ID of instance A Value: !Ref VPCBPAInstanceA VPCBPAInstanceBId: Description: The ID of instance B Value: !Ref VPCBPAInstanceB VPCBPAInstanceCId: Description: The ID of instance C Value: !Ref VPCBPAInstanceC VPCBPAInstanceDId: Description: The ID of instance D Value: !Ref VPCBPAInstanceD
AWS Management Console
  1. Apri la console all' AWS CloudFormation indirizzo. https://console.aws.amazon.com/cloudformation/

  2. Scegli Crea stack e carica il file modello .yaml.

  3. Segui i passaggi per avviare il modello. Dovrai inserire un ID immagine e un tipo di istanza (come t2.micro). Dovrai inoltre consentire CloudFormation la creazione di un IAM ruolo per la creazione del log di flusso e l'autorizzazione per l'accesso. Amazon CloudWatch

  4. Una volta avviato lo stack, visualizza la scheda Eventi per visualizzare i progressi e assicurati che lo stack sia completo prima di continuare.

AWS CLI
  1. Per creare lo CloudFormation stack, esegui il comando seguente:

    aws cloudformation create-stack --stack-name VPC-BPA-stack --template-body file://sampletemplate.yaml --capabilities CAPABILITY_IAM --region us-east-2

    Output:

    { "StackId": "arn:aws:cloudformation:us-east-2:470889052923:stack/VPC-BPA-stack/8a7a2cc0-8001-11ef-b196-06386a84b72f" }
  2. Visualizza lo stato di avanzamento e assicurati che lo stack sia completo prima di continuare:

    aws cloudformation describe-stack-events --stack-name VPC-BPA-stack --region us-east-2

Visualizza l'impatto di Network Access VPC BPA Analyzer

In questa sezione, utilizzerai Network Access Analyzer per visualizzare le risorse del tuo account che utilizzano il gateway Internet. Usa questa analisi per comprendere l'impatto dell'attivazione del tuo account e del blocco del traffico. VPC BPA

Per informazioni sulla disponibilità regionale di Network Access Analyzer, consulta Limitazioni nella Guida Network Access Analyzer.

AWS Management Console
  1. Apri la console AWS Network Insights all'indirizzo. https://console.aws.amazon.com/networkinsights/

  2. Scegli Network Access Analyzer.

  3. Scegli Crea ambito di accesso alla rete.

  4. Scegli Identifica l'accesso da o verso i gateway Internet e scegli Avanti.

  5. Il modello è già configurato per analizzare il traffico da e verso i gateway Internet del tuo account. Puoi visualizzarlo in Origine e destinazione.

  6. Scegli Next (Successivo).

  7. Scegli Crea ambito di accesso alla rete.

  8. Scegli l'ambito che hai appena creato e scegli Analizza.

  9. Attendi il completamento dell'analisi.

  10. Visualizza i risultati dell'analisi. Ogni riga in Findings mostra un percorso di rete che un pacchetto può percorrere in una rete da o verso un gateway Internet del tuo account. In questo caso, se attivi VPC BPA e nessuna delle e/o o delle VPCs sottoreti che appaiono in questi risultati è configurata come BPA esclusione, il traffico verso quelle VPCs e le sottoreti verrà limitato.

  11. Analizza ogni risultato per comprendere l'impatto sulle risorse del BPA tuo. VPCs

L'analisi dell'impatto è completa.

AWS CLI
  1. Crea un ambito di accesso alla rete:

    aws ec2 create-network-insights-access-scope --match-paths "Source={ResourceStatement={ResourceTypes=["AWS::EC2::InternetGateway"]}}" "Destination={ResourceStatement={ResourceTypes=["AWS::EC2::InternetGateway"]}}" --region us-east-2

    Output:

    { "NetworkInsightsAccessScope": { "NetworkInsightsAccessScopeId": "nis-04cad3c4b3a1d5e3e", "NetworkInsightsAccessScopeArn": "arn:aws:ec2:us-east-2:470889052923:network-insights-access-scope/nis-04cad3c4b3a1d5e3e", "CreatedDate": "2024-09-30T15:55:53.171000+00:00", "UpdatedDate": "2024-09-30T15:55:53.171000+00:00" }, "NetworkInsightsAccessScopeContent": { "NetworkInsightsAccessScopeId": "nis-04cad3c4b3a1d5e3e", "MatchPaths": [ { "Source": { "ResourceStatement": { "ResourceTypes": [ "AWS::EC2::InternetGateway" ] } } }, { "Destination": { "ResourceStatement": { "ResourceTypes": [ "AWS::EC2::InternetGateway" ] } } } ] } }
  2. Inizia l'analisi dell'ambito:

    aws ec2 start-network-insights-access-scope-analysis --network-insights-access-scope-id nis-04cad3c4b3a1d5e3e --region us-east-2

    Output:

    { "NetworkInsightsAccessScopeAnalysis": { "NetworkInsightsAccessScopeAnalysisId": "nisa-0aa383a1938f94cd1", "NetworkInsightsAccessScopeAnalysisArn": "arn:aws:ec2:us-east-2:470889052923:network-insights-access-scope-analysis/nisa-0aa383a1938f94cd", "NetworkInsightsAccessScopeId": "nis-04cad3c4b3a1d5e3e", "Status": "running", "StartDate": "2024-09-30T15:56:59.109000+00:00", "AnalyzedEniCount": 0 } }
  3. Visualizza i risultati dell'analisi:

    aws ec2 get-network-insights-access-scope-analysis-findings --network-insights-access-scope-analysis-id nisa-0aa383a1938f94cd1 --region us-east-2 --max-items 1

    Output:

    { "AnalysisFindings": [ { "NetworkInsightsAccessScopeAnalysisId": "nisa-0aa383a1938f94cd1", "NetworkInsightsAccessScopeId": "nis-04cad3c4b3a1d5e3e", "FindingId": "AnalysisFinding-1", "FindingComponents": [ { "SequenceNumber": 1, "Component": { "Id": "igw-04a5344b4e30486f1", "Arn": "arn:aws:ec2:us-east-2:470889052923:internet-gateway/igw-04a5344b4e30486f1", "Name": "VPC BPA Internet Gateway" }, "OutboundHeader": { "DestinationAddresses": [ "10.0.1.85/32" ] }, "InboundHeader": { "DestinationAddresses": [ "10.0.1.85/32" ], "DestinationPortRanges": [ { "From": 22, "To": 22 } ], "Protocol": "6", "SourceAddresses": [ "0.0.0.0/5", "100.0.0.0/10", "96.0.0.0/6" ], "SourcePortRanges": [ { "From": 0, "To": 65535 } ] }, "Vpc": { "Id": "vpc-0762547ec48b6888d", "Arn": "arn:aws:ec2:us-east-2:470889052923:vpc/vpc-0762547ec48b6888d", "Name": "VPC BPA" } }, { "SequenceNumber": 2, "AclRule": { "Cidr": "0.0.0.0/0", "Egress": false, "Protocol": "all", "RuleAction": "allow", "RuleNumber": 100 }, "Component": { "Id": "acl-06194fc3a4a03040b", "Arn": "arn:aws:ec2:us-east-2:470889052923:network-acl/acl-06194fc3a4a03040b" } }, { "SequenceNumber": 3, "Component": { "Id": "sg-093dde06415d03924", "Arn": "arn:aws:ec2:us-east-2:470889052923:security-group/sg-093dde06415d03924", "Name": "VPC BPA Instances Security Group" }, "SecurityGroupRule": { "Cidr": "0.0.0.0/0", "Direction": "ingress", "PortRange": { "From": 22, "To": 22 }, "Protocol": "tcp" } }, { "SequenceNumber": 4, "AttachedTo": { "Id": "i-058db34f9a0997895", "Arn": "arn:aws:ec2:us-east-2:470889052923:instance/i-058db34f9a0997895", "Name": "VPC BPA Instance A" }, "Component": { "Id": "eni-0fa23f2766f03b286", "Arn": "arn:aws:ec2:us-east-2:470889052923:network-interface/eni-0fa23f2766f03b286" }, "InboundHeader": { "DestinationAddresses": [ "10.0.1.85/32" ], "DestinationPortRanges": [ { "From": 22, "To": 22 } ], "Protocol": "6", "SourceAddresses": [ "0.0.0.0/5", "100.0.0.0/10", "96.0.0.0/6" ], "SourcePortRanges": [ { "From": 0, "To": 65535 } ] }, "Subnet": { "Id": "subnet-035d235a762eeed04", "Arn": "arn:aws:ec2:us-east-2:470889052923:subnet/subnet-035d235a762eeed04", "Name": "VPC BPA Public Subnet A" }, "Vpc": { "Id": "vpc-0762547ec48b6888d", "Arn": "arn:aws:ec2:us-east-2:470889052923:vpc/vpc-0762547ec48b6888d", "Name": "VPC BPA" } } ] } ], "AnalysisStatus": "succeeded", "NetworkInsightsAccessScopeAnalysisId": "nisa-0aa383a1938f94cd1", "NextToken": "eyJOZXh0VG9rZW4iOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxfQ==" }

    I risultati mostrano il traffico da e verso i gateway Internet in tutto il VPCs tuo account. I risultati sono organizzati come «risultati». "FindingId«:" AnalysisFinding -1" indica che questo è il primo risultato dell'analisi. Tieni presente che esistono più risultati e ognuno indica un flusso di traffico che sarà influenzato dall'attivazione. VPC BPA Il primo risultato mostrerà che il traffico è iniziato da un gateway Internet (» SequenceNumber «: 1), è passato a un NACL (» SequenceNumber «: 2) a un gruppo di sicurezza (» SequenceNumber «: 3) e è terminato in un'istanza (» SequenceNumber «: 4).

  4. Analizza i risultati per comprendere l'impatto BPA sulle risorse del tuoVPCs.

L'analisi dell'impatto è completa.

Scenario 1

In questa sezione, per impostare una linea di base e garantire che, prima di abilitareBPA, tutte le istanze possano essere raggiunte, ti connetterai a tutte le istanze e eseguirai il ping di un indirizzo IP pubblico.

Diagramma di un VPC dispositivo non acceso: VPC BPA

Diagramma che mostra un VPC senza abilitatoBPA.

1.1 Connect alle istanze

Completa questa sezione per connetterti alle tue istanze con l'opzione VPC BPA disattivata per assicurarti di poterti connettere senza problemi. Tutte le istanze create con questo CloudFormation esempio hanno nomi come "VPCBPAIstanza A».

AWS Management Console
  1. Apri la EC2 console Amazon all'indirizzohttps://console.aws.amazon.com/ec2/.

  2. Apri i dettagli dell'istanza A.

  3. Connettiti all'istanza A utilizzando l'opzione EC2Instance Connect > Connect using EC2 Instance Connect.

  4. Scegli Connetti. Dopo esserti connesso con successo all'istanza, esegui un ping su www.amazon.com per verificare che sia possibile inviare richieste in uscita a Internet.

  5. Usa lo stesso metodo che hai usato per connetterti all'istanza A per connetterti all'istanza B e verifica di poter eseguire il ping per inviare richieste in uscita a Internet.

  6. Connettiti all'istanza C utilizzando l'opzione EC2Instance Connect > Connect using EC2 Instance Connect Endpoint. È necessario utilizzare l'opzione endpoint poiché le istanze C e D si trovano in sottoreti private e non dispongono di indirizzi IP pubblici:

  7. Usa lo stesso metodo che hai usato ad esempio C per connetterti all'istanza D e verifica di poter eseguire il ping per inviare richieste in uscita a Internet.

AWS CLI
  1. Esegui il ping dell'istanza A utilizzando l'IPv4indirizzo pubblico per controllare il traffico in entrata:

    ping 18.225.8.244

    Output:

    Pinging 18.225.8.244 with 32 bytes of data: Reply from 18.225.8.244: bytes=32 time=51ms TTL=110 Reply from 18.225.8.244: bytes=32 time=61ms TTL=110

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

  2. Usa l'IPv4indirizzo privato per connetterti e controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-058db34f9a0997895 --region us-east-2 --connection-type eice

    Output:

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~_ ####_ Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ / / /m/' Last login: Fri Sep 27 18:27:57 2024 from 3.16.146.5 [ec2-user@ip-10-0-1-85 ~]$ ping www.amazon.com PING www-amazon-com.customer.fastly.net (18.65.233.187) 56(84) bytes of data. 64 bytes from 18.65.233.187 (18.65.233.187): icmp_seq=15 ttl=58 time=2.06 ms 64 bytes from 18.65.233.187 (18.65.233.187): icmp_seq=16 ttl=58 time=2.26 ms

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

  3. Esegui il ping dell'istanza B utilizzando l'IPv4indirizzo pubblico per controllare il traffico in entrata:

    ping 3.18.106.198

    Output:

    Pinging 3.18.106.198 with 32 bytes of data: Reply from 3.18.106.198: bytes=32 time=83ms TTL=110 Reply from 3.18.106.198: bytes=32 time=54ms TTL=110

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

  4. Usa l'IPv4indirizzo privato per connetterti e controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-08552a0774b5c8f72 --region us-east-2 --connection-type eice

    Output:

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , # ~_ #### Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~.. _/ / / /m/' Last login: Fri Sep 27 18:12:27 2024 from 3.16.146.5 [ec2-user@ip-10-0-2-98 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data. 64 bytes from server-3-160-24-126.cmh68.r.cloudfront.net (18.65.233.187): icmp_seq=1 ttl=249 time=1.55 ms 64 bytes from server-3-160-24-126.cmh68.r.cloudfront.net (18.65.233.187): icmp_seq=2 ttl=249 time=1.67 ms

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

  5. Connetti all'istanza C. Poiché non esiste un indirizzo IP pubblico a cui eseguire il ping, usa EC2 Instance Connect per connetterti e quindi esegui il ping di un IP pubblico dall'istanza per controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-04eca55f2a482b2c4 --region us-east-2

    Output:

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , # ~_ #### Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~.. _/ / / /m/' Last login: Thu Sep 19 20:31:26 2024 from 10.0.2.86 [ec2-user@ip-10-0-3-180 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data. 64 bytes from server-3-160-24-126.cmh68.r.cloudfront.net (18.65.233.187): icmp_seq=1 ttl=248 time=1.75 ms 64 bytes from server-3-160-24-126.cmh68.r.cloudfront.net (18.65.233.187): icmp_seq=2 ttl=248 time=1.97 ms 64 bytes from server-3-160-24-26.cmh68.r.cloudfront.net (18.65.233.187): icmp_seq=3 ttl=248 time=1.08 ms

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

  6. Connetti all'istanza D. Poiché non esiste un indirizzo IP pubblico a cui eseguire il ping, usa EC2 Instance Connect per connetterti e quindi esegui il ping di un IP pubblico dall'istanza per controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-05f9e6a9cfac1dba0 --region us-east-2

    Output:

    The authenticity of host '10.0.3.59 can't be established. ECDSA key fingerprint is SHA256:c4naBCqbC61/cExDyccEproNU+1HHSpMSzl2J6cOtIZA8g. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added '10.0.3.59' (ECDSA) to the list of known hosts. A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , # ~_ #### Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~.. _/ _/ _/ _/m/' [ec2-user@ip-10-0-3-59 ~]$ ping www.amazon.com PING www.amazon.com(2600:9000:25f3:ee00:7:49a5:5fd4:b121 (2600:9000:25f3:ee00:7:49a5:5fd4:b121)) 56 data bytes 64 bytes from 2600:9000:25f3:ee00:7:49a5:5fd4:b121 (2600:9000:25f3:ee00:7:49a5:5fd4:b121): icmp_seq=1 ttl=58 time=1.19 ms 64 bytes from 2600:9000:25f3:ee00:7:49a5:5fd4:b121 (2600:9000:25f3:ee00:7:49a5:5fd4:b121): icmp_seq=2 ttl=58 time=1.38 ms

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

Scenario 2

In questa sezione attiverai VPC BPA e bloccherai il traffico da e verso i gateway Internet del tuo account.

Diagramma della modalità VPC BPA bidirezionale attivata:

Diagramma illustrativo con la funzionalità VPC bidirezionale abilitata. BPA

2.1 Abilita VPC BPA la modalità bidirezionale a blocchi

Completa questa sezione per abilitarla. VPC BPA

AWS Management Console
  1. Apri la VPC console Amazon all'indirizzohttps://console.aws.amazon.com/vpc/.

  2. Nel pannello di navigazione a sinistra, seleziona il pulsante Impostazioni.

  3. Scegli Modifica impostazioni di accesso pubblico:

  4. Scegli Attiva il blocco dell'accesso pubblico e Bidirezionale, quindi scegli Salva modifiche.

  5. Attendi che lo stato passi a Attivato. Potrebbero essere necessari alcuni minuti prima che le BPA impostazioni abbiano effetto e l'aggiornamento dello stato.

VPCBPAè ora acceso.

AWS CLI
  1. Usa il comando modify-vpc-block-public -access-options per attivare: VPC BPA

    aws ec2 --region us-east-2 modify-vpc-block-public-access-options --internet-gateway-block-mode block-bidirectional

    Potrebbero essere necessari alcuni minuti prima che le BPA impostazioni abbiano effetto e l'aggiornamento dello stato.

  2. Visualizza lo stato di VPCBPA:

    aws ec2 --region us-east-2 describe-vpc-block-public-access-options

2.2 Connect alle istanze

Completa questa sezione per collegarti alle istanze.

AWS Management Console
  1. Esegui il ping dell'IPv4indirizzo pubblico dell'istanza A e dell'istanza B come hai fatto nello Scenario 1. Tieni presente che il traffico è bloccato.

  2. Connettiti a ciascuna istanza utilizzando EC2 instance connect come hai fatto nello Scenario 1 e invia il ping a www.amazon.com da essa. Tieni presente che tutto il traffico in uscita è bloccato.

AWS CLI
  1. Esegui il ping dell'istanza A utilizzando l'IPv4indirizzo pubblico per controllare il traffico in entrata:

    ping 18.225.8.244

    Output:

    Pinging 18.225.8.244 with 32 bytes of data: Request timed out.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  2. Usa l'IPv4indirizzo privato per connetterti e controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-058db34f9a0997895 --region us-east-2 --connection-type eice

    Output:

    The authenticity of host '10.0.1.85' can't be established. ECDSA key fingerprint is SHA256:3zo/gSss+HAZ+7eTyWlOB/Ke04IM+hadjsoLJeRTWBk. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added '10.0.1.85' (ECDSA) to the list of known hosts. A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~_ ####_ Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ / / /m/' Last login: Fri Sep 27 14:16:53 2024 from 3.16.146.5 [ec2-user@ip-10-0-1-85 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  3. Esegui il ping dell'istanza B utilizzando l'IPv4indirizzo pubblico per controllare il traffico in entrata:

    ping 3.18.106.198

    Output:

    Pinging 3.18.106.198 with 32 bytes of data: Request timed out.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  4. Usa l'IPv4indirizzo privato per connetterti e controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-08552a0774b5c8f72 --region us-east-2 --connection-type eice

    Output:

    The authenticity of host '10.0.2.98' can't be established. ECDSA key fingerprint is SHA256:0IjXKKyVlDthcCfI0IPIJMUiItAOLYKRNLGTYURnFXo. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added '10.0.2.98' (ECDSA) to the list of known hosts. A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , # ~_ #### Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~.. _/ / / /m/' Last login: Fri Sep 27 14:18:16 2024 from 3.16.146.5 [ec2-user@ip-10-0-2-98 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  5. Connetti all'istanza C. Poiché non esiste un indirizzo IP pubblico a cui eseguire il ping, usa EC2 Instance Connect per connetterti e quindi esegui il ping di un IP pubblico dall'istanza per controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-04eca55f2a482b2c4 --region us-east-2

    Output:

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , # ~_ #### Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~.. _/ / / /m/' Last login: Tue Sep 24 15:17:56 2024 from 10.0.2.86 [ec2-user@ip-10-0-3-180 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  6. Connetti all'istanza D. Poiché non esiste un indirizzo IP pubblico a cui eseguire il ping, usa EC2 Instance Connect per connetterti e quindi esegui il ping di un IP pubblico dall'istanza per controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-05f9e6a9cfac1dba0 --region us-east-2

    Output:

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , # ~_ #### Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~.. _/ _/ _/ _/m/' Last login: Fri Sep 27 16:42:01 2024 from 3.16.146.5 [ec2-user@ip-10-0-3-59 ~]$ ping www.amazon.com PING www.amazon.com(2600:9000:25f3:8200:7:49a5:5fd4:b121 (2600:9000:25f3:8200:7:49a5:5fd4:b121)) 56 data bytes

    Tieni presente che il ping fallisce e il traffico è bloccato.

2.3 Opzionale: verifica che la connettività sia bloccata con Reachability Analyzer

VPCReachability Analyzer può essere utilizzato per capire se determinati percorsi di rete possono essere raggiunti o meno in base alla configurazione di rete, comprese le impostazioni. VPC BPA In questo esempio analizzerai lo stesso percorso di rete che è stato tentato in precedenza per confermare che questo VPC BPA è il motivo del fallimento della connettività.

AWS Management Console
  1. Andare alla console Network Insights all'indirizzohttps://console.aws.amazon.com/networkinsights/home#ReachabilityAnalyzer.

  2. Fai clic su Crea e analizza il percorso.

  3. Per il Tipo di sorgente, scegli Gateway Internet e seleziona il gateway Internet contrassegnato con VPCBPAInternet Gateway dal menu a discesa Sorgente.

  4. Per il Tipo di destinazione, scegli Istanze e seleziona l'istanza contrassegnata con Istanza A dal menu a VPC BPA discesa Destinazione.

  5. Fai clic su Crea e analizza il percorso.

  6. Attendi il completamento dell'analisi. Ciò può richiedere alcuni minuti.

  7. Una volta completato, dovresti vedere che lo stato di raggiungibilità non è raggiungibile e che i dettagli del percorso indicano che VPC_BLOCK_PUBLIC_ACCESS_ENABLED è la causa.

AWS CLI
  1. Crea un percorso di rete utilizzando l'ID del gateway Internet denominato Internet Gateway e l'ID dell'istanza etichettata VPC BPA Instance A: VPC BPA

    aws ec2 --region us-east-2 create-network-insights-path --source igw-id --destination instance-id --protocol TCP
  2. Avvia un'analisi sul percorso di rete:

    aws ec2 --region us-east-2 start-network-insights-analysis --network-insights-path-id nip-id
  3. Recupera i risultati dell'analisi:

    aws ec2 --region us-east-2 describe-network-insights-analyses --network-insights-analysis-ids nia-id
  4. Verifica che ciò VPC_BLOCK_PUBLIC_ACCESS_ENABLED sia dovuto ExplanationCode alla mancanza di raggiungibilità.

Scenario 3

In questa sezione cambierai la direzione del VPC BPA traffico e consentirai solo il traffico che utilizza un NAT gateway o un gateway Internet solo in uscita.

Diagramma della modalità Solo VPC BPA ingresso attivata:

Diagramma illustrato con la modalità solo ingresso attivata. VPC BPA

3.1 Passa alla modalità solo ingresso

Completa questa sezione per cambiare la modalità.

AWS Management Console
  1. Modifica le impostazioni di accesso pubblico nella VPC console e cambia la direzione su Ingress-only.

  2. Salva le modifiche e attendi che lo stato venga aggiornato. Potrebbero essere necessari alcuni minuti prima che le BPA impostazioni abbiano effetto e l'aggiornamento dello stato.

AWS CLI
  1. Modifica la VPC BPA modalità:

    aws ec2 --region us-east-2 modify-vpc-block-public-access-options --internet-gateway-block-mode block-ingress

    Potrebbero essere necessari alcuni minuti prima che le BPA impostazioni abbiano effetto e l'aggiornamento dello stato.

  2. Visualizza lo stato di VPCBPA:

    aws ec2 --region us-east-2 describe-vpc-block-public-access-options

3.2 Connect alle istanze

Completa questa sezione per connetterti alle istanze.

AWS Management Console
  1. Esegui il ping dell'IPv4indirizzo pubblico dell'istanza A e dell'istanza B come hai fatto nello Scenario 1. Tieni presente che il traffico è bloccato.

  2. Connettiti alle istanze A e B utilizzando EC2 instance connect come hai fatto nello Scenario 1 e invia il ping a www.amazon.com da esse. Tieni presente che non puoi eseguire il ping di un sito pubblico su Internet dall'istanza A o B e il traffico è bloccato.

  3. Connettiti alle istanze C e D utilizzando EC2 instance connect come hai fatto nello Scenario 1 e invia il ping a www.amazon.com da esse. Tieni presente che puoi eseguire il ping di un sito pubblico su Internet dall'istanza C o D e il traffico è consentito.

AWS CLI
  1. Esegui il ping dell'istanza A utilizzando l'IPv4indirizzo pubblico per controllare il traffico in entrata:

    ping 18.225.8.244

    Output:

    Pinging 18.225.8.244 with 32 bytes of data: Request timed out.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  2. Usa l'IPv4indirizzo privato per connetterti e controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-058db34f9a0997895 --region us-east-2 --connection-type eice

    Output:

    The authenticity of host '10.0.1.85' can't be established. ECDSA key fingerprint is SHA256:3zo/gSss+HAZ+7eTyWlOB/Ke04IM+hadjsoLJeRTWBk. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added '10.0.1.85' (ECDSA) to the list of known hosts. A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~_ ####_ Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ / / /m/' Last login: Fri Sep 27 14:16:53 2024 from 3.16.146.5 [ec2-user@ip-10-0-1-85 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  3. Esegui il ping dell'istanza B utilizzando l'IPv4indirizzo pubblico per controllare il traffico in entrata:

    ping 3.18.106.198

    Output:

    Pinging 3.18.106.198 with 32 bytes of data: Request timed out.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  4. Usa l'IPv4indirizzo privato per connetterti e controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-08552a0774b5c8f72 --region us-east-2 --connection-type eice

    Output:

    The authenticity of host '10.0.2.98 ' can't be established. ECDSA key fingerprint is SHA256:0IjXKKyVlDthcCfI0IPIJMUiItAOLYKRNLGTYURnFXo. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added '10.0.2.98' (ECDSA) to the list of known hosts. A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , # ~_ #### Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~.. _/ _/ / /m/' Last login: Fri Sep 27 14:18:16 2024 from 3.16.146.5 [ec2-user@ip-10-0-2-98 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  5. Connetti all'istanza C. Poiché non esiste un indirizzo IP pubblico a cui eseguire il ping, usa EC2 Instance Connect per connetterti e quindi esegui il ping di un IP pubblico dall'istanza per controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-04eca55f2a482b2c4 --region us-east-2 A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~\_ ####_ Amazon Linux 2023 ~~ \_#####\ ~~ \###| ~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ _/ _/ _/m/' Last login: Tue Sep 24 15:28:09 2024 from 10.0.2.86 [ec2-user@ip-10-0-3-180 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data. 64 bytes from server-3-160-24-126.cmh68.r.cloudfront.net (18.65.233.187): icmp_seq=1 ttl=248 time=1.84 ms 64 bytes from server-3-160-24-126.cmh68.r.cloudfront.net (18.65.233.187): icmp_seq=2 ttl=248 time=1.40 ms

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

  6. Connetti all'istanza D. Poiché non esiste un indirizzo IP pubblico a cui eseguire il ping, usa EC2 Instance Connect per connetterti e quindi esegui il ping di un IP pubblico dall'istanza per controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-05f9e6a9cfac1dba0 --region us-east-2 A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~\_ ####_ Amazon Linux 2023 ~~ \_#####\ ~~ \###| ~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ _/ _/ _/m/' Last login: Fri Sep 27 16:48:38 2024 from 3.16.146.5 [ec2-user@ip-10-0-3-59 ~]$ ping www.amazon.com PING www.amazon.com(2600:9000:25f3:5800:7:49a5:5fd4:b121 (2600:9000:25f3:5800:7:49a5:5fd4:b121)) 56 data bytes 64 bytes from 2600:9000:25f3:5800:7:49a5:5fd4:b121 (2600:9000:25f3:5800:7:49a5:5fd4:b121): icmp_seq=14 ttl=58 time=1.47 ms 64 bytes from 2600:9000:25f3:5800:7:49a5:5fd4:b121 (2600:9000:25f3:5800:7:49a5:5fd4:b121): icmp_seq=16 ttl=58 time=1.59 ms

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

Scenario 4

In questa sezione creerai un'esclusione e bloccherai solo il traffico da e verso la sottorete da cui non è escluso. VPC BPA Un'VPCBPAesclusione è una modalità che può essere applicata a una singola VPC o a una sottorete, che la esclude dalla BPA modalità dell'account e consente l'accesso bidirezionale o solo in uscita. È possibile creare BPA esclusioni VPCs e sottoreti anche quando l'account non BPA è abilitato, per garantire che non si verifichino interruzioni del traffico delle esclusioni quando sono attivate. VPC BPA

In questo esempio, creeremo un'esclusione per la sottorete A per mostrare in che modo il traffico verso le esclusioni viene influenzato. VPC BPA

Diagramma della modalità VPC BPA solo ingresso attivata e dell'esclusione della sottorete A con la modalità bidirezionale attivata:

Diagramma che mostra con in modalità solo ingresso con un'esclusione. VPC BPA

4.1 Creare un'esclusione per la sottorete A

Completa questa sezione per creare un'esclusione. Un'VPCBPAesclusione è una modalità che può essere applicata a una singola rete VPC o a una sottorete, che la esclude dalla BPA modalità dell'account e consente l'accesso bidirezionale o solo in uscita. È possibile creare BPA esclusioni VPCs e sottoreti anche quando l'account non BPA è abilitato, per garantire che non si verifichino interruzioni del traffico delle esclusioni quando sono attivate. VPC BPA

AWS Management Console
  1. Nella scheda Blocca accesso pubblico, in Esclusioni, scegli Crea esclusioni.

  2. Scegli VPCBPAPublic Subnet A, assicurati che sia selezionata l'opzione Consenti direzione Bidirezionale e scegli Crea esclusioni.

  3. Attendi che lo stato di esclusione diventi Attivo. Potrebbe essere necessario aggiornare la tabella di esclusione per visualizzare la modifica.

L'esclusione è stata creata.

AWS CLI
  1. Modifica la direzione di autorizzazione all'esclusione:

    aws ec2 --region us-east-2 create-vpc-block-public-access-exclusion --subnet-id subnet-id --internet-gateway-exclusion-mode allow-bidirectional
  2. L'aggiornamento dello stato di esclusione può richiedere del tempo. Per visualizzare lo stato dell'esclusione:

    aws ec2 --region us-east-2 describe-vpc-block-public-access-exclusions --exclusion-ids exclusion-id

4.2 Connect alle istanze

Completa questa sezione per connetterti alle istanze.

AWS Management Console
  1. Esegui il ping dell'IPv4indirizzo pubblico dell'istanza A. Tieni presente che il traffico è consentito.

  2. Esegui il ping dell'IPv4indirizzo pubblico dell'istanza B. Tieni presente che il traffico è bloccato.

  3. Connettiti all'istanza A utilizzando EC2 instance connect come hai fatto nello Scenario 1 e fai ping su www.amazon.com. Tieni presente che puoi eseguire il ping di un sito pubblico su Internet dall'Istanza A. Il traffico è consentito.

  4. Connettiti all'istanza B utilizzando EC2 instance connect come hai fatto nello Scenario 1 e invia il ping a www.amazon.com da essa. Tieni presente che non puoi eseguire il ping di un sito pubblico su Internet dall'Istanza B. Il traffico è bloccato.

  5. Connettiti alle istanze C e D utilizzando EC2 instance connect come hai fatto nello Scenario 1 e invia il ping a www.amazon.com da esse. Tieni presente che puoi eseguire il ping di un sito pubblico su Internet dall'istanza C o D. Il traffico è consentito.

AWS CLI
  1. Esegui il ping dell'istanza A utilizzando l'IPv4indirizzo pubblico per controllare il traffico in entrata:

    ping 18.225.8.244

    Output:

    Pinging 18.225.8.244 with 32 bytes of data: Reply from 18.225.8.244: bytes=32 time=51ms TTL=110 Reply from 18.225.8.244: bytes=32 time=61ms TTL=110

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

  2. Usa l'IPv4indirizzo privato per connetterti e controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-058db34f9a0997895 --region us-east-2 --connection-type eice

    Output:

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~_ ####_ Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ / / /m/' Last login: Fri Sep 27 17:58:12 2024 from 3.16.146.5 [ec2-user@ip-10-0-1-85 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data. 64 bytes from server-3-160-24-126.cmh68.r.cloudfront.net (18.65.233.187): icmp_seq=1 ttl=249 time=1.03 ms 64 bytes from server-3-160-24-126.cmh68.r.cloudfront.net (18.65.233.187): icmp_seq=2 ttl=249 time=1.72 ms

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

  3. Esegui il ping dell'istanza B utilizzando l'IPv4indirizzo pubblico per controllare il traffico in entrata:

    ping 3.18.106.198

    Output:

    Pinging 3.18.106.198 with 32 bytes of data: Request timed out.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  4. Usa l'IPv4indirizzo privato per connetterti e controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-08552a0774b5c8f72 --region us-east-2 --connection-type eice

    Output:

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , # ~_ #### Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~.. _/ _/ / /m/' Last login: Fri Sep 27 18:12:03 2024 from 3.16.146.5 [ec2-user@ip-10-0-2-98 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  5. Connetti all'istanza C. Poiché non esiste un indirizzo IP pubblico a cui eseguire il ping, usa EC2 Instance Connect per connetterti e quindi esegui il ping di un IP pubblico dall'istanza per controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-04eca55f2a482b2c4 --region us-east-2

    Output

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , # ~_ #### Amazon Linux 2023 ~~ _#####\ ~~ ###| ~~ #/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~.. _/ _/ / /m/' Last login: Tue Sep 24 15:28:09 2024 from 10.0.2.86 [ec2-user@ip-10-0-3-180 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data. 64 bytes from server-3-160-24-126.cmh68.r.cloudfront.net (18.65.233.187): icmp_seq=1 ttl=248 time=1.84 ms 64 bytes from server-3-160-24-126.cmh68.r.cloudfront.net (18.65.233.187): icmp_seq=2 ttl=248 time=1.40 ms

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

  6. Connetti all'istanza D. Poiché non esiste un indirizzo IP pubblico a cui eseguire il ping, usa EC2 Instance Connect per connetterti e quindi esegui il ping di un IP pubblico dall'istanza per controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-05f9e6a9cfac1dba0 --region us-east-2

    Output

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~\_ ####_ Amazon Linux 2023 ~~ \_#####\ ~~ \###| ~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ _/ _/ _/m/' Last login: Fri Sep 27 18:00:52 2024 from 3.16.146.5 [ec2-user@ip-10-0-3-59 ~]$ ping www.amazon.com PING www.amazon.com(g2600-141f-4000-059a-0000-0000-0000-3bd4.deploy.static.akamaitechnologies.com (2600:141f:4000:59a::3bd4)) 56 data bytes 64 bytes from g2600-141f-4000-059a-0000-0000-0000-3bd4.deploy.static.akamaitechnologies.com (2600:141f:4000:59a::3bd4): icmp_seq=1 ttl=48 time=15.9 ms 64 bytes from g2600-141f-4000-059a-0000-0000-0000-3bd4.deploy.static.akamaitechnologies.com (2600:141f:4000:59a::3bd4): icmp_seq=2 ttl=48 time=15.8 ms

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

4.3 Opzionale: verifica la connettività con Reachability Analyzer

Utilizzando lo stesso percorso di rete creato in Reachability Analyzer nello Scenario 2, è ora possibile eseguire una nuova analisi e confermare che il percorso è raggiungibile ora che è stata creata un'esclusione per la subnet pubblica A.

Per informazioni sulla disponibilità regionale di Reachability Analyzer, vedere Considerazioni nella Reachability Analyzer Guide.

AWS Management Console
  1. Dal percorso di rete creato in precedenza nella console di Network Insights, fai clic su Esegui nuovamente l'analisi.

  2. Attendi il completamento dell'analisi. Ciò può richiedere alcuni minuti.

  3. Conferma che il percorso è ora raggiungibile.

AWS CLI
  1. Utilizzando l'ID del percorso di rete creato in precedenza, avvia una nuova analisi:

    aws ec2 --region us-east-2 start-network-insights-analysis --network-insights-path-id nip-id
  2. Recupera i risultati dell'analisi:

    aws ec2 --region us-east-2 describe-network-insights-analyses --network-insights-analysis-ids nia-id
  3. Conferma che il codice VPC_BLOCK_PUBLIC_ACCESS_ENABLED esplicativo non è più presente.

Scenario 5

In questa sezione modificherai la direzione del traffico consentita sull'esclusione per vederne l'impatto VPCBPA. Tieni presente che la modalità solo in uscita per un'esclusione non è realmente significativa se abilitata nella modalità solo ingresso a VPC BPA blocchi. Questo è lo stesso comportamento di Scenario 3.

Diagramma della modalità VPC BPA solo ingresso attivata e dell'esclusione della sottorete A con la modalità solo uscita attivata:

Diagramma illustrato in modalità solo ingresso, che consente il traffico in uscita attraverso VPC il BPA gateway. NAT

5.1 L'esclusione delle modifiche consente solo la direzione in uscita

Completa questa sezione per modificare la direzione di esclusione consentita.

AWS Management Console
  1. Modifica l'esclusione creata nello Scenario 4 e modifica la direzione di autorizzazione impostandola su Solo uscita.

  2. Scegli Save changes (Salva modifiche).

  3. Attendi che lo stato di esclusione diventi Attivo. Potrebbero essere necessari alcuni minuti prima che le BPA impostazioni abbiano effetto e l'aggiornamento dello stato. Potrebbe essere necessario aggiornare la tabella di esclusione per visualizzare la modifica.

AWS CLI
  1. Modifica la direzione di autorizzazione all'esclusione:

    aws ec2 --region us-east-2 modify-vpc-block-public-access-exclusion --exclusion-id exclusion-id --internet-gateway-exclusion-mode allow-egress

    Potrebbero essere necessari alcuni minuti prima che le BPA impostazioni abbiano effetto e l'aggiornamento dello stato.

  2. L'aggiornamento dello stato di esclusione può richiedere del tempo. Per visualizzare lo stato dell'esclusione:

    aws ec2 --region us-east-2 describe-vpc-block-public-access-exclusion

5.2 Connect alle istanze

Completa questa sezione per connetterti alle istanze.

AWS Management Console
  1. Esegui il ping dell'IPv4indirizzo pubblico delle istanze A e B. Tieni presente che il traffico è bloccato.

  2. Connettiti all'istanza A e B utilizzando EC2 instance connect come hai fatto nello Scenario 1 e fai ping su www.amazon.com. Tieni presente che non puoi eseguire il ping di un sito pubblico su Internet dall'istanza A o B. Il traffico è bloccato.

  3. Connettiti alle istanze C e D utilizzando EC2 instance connect come hai fatto nello Scenario 1 e invia il ping a www.amazon.com da esse. Tieni presente che puoi eseguire il ping di un sito pubblico su Internet dall'istanza C o D. Il traffico è consentito.

AWS CLI
  1. Esegui il ping dell'istanza A utilizzando l'IPv4indirizzo pubblico per controllare il traffico in entrata:

    ping 18.225.8.244

    Output:

    Pinging 18.225.8.244 with 32 bytes of data: Request timed out.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  2. Usa l'IPv4indirizzo privato per connetterti e controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-058db34f9a0997895 --region us-east-2 --connection-type eice

    Output:

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~\_ ####_ Amazon Linux 2023 ~~ \_#####\ ~~ \###| ~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ _/ _/ _/m/' Last login: Fri Sep 27 18:09:55 2024 from 3.16.146.5 [ec2-user@ip-10-0-1-85 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  3. Esegui il ping dell'istanza B utilizzando l'IPv4indirizzo pubblico per controllare il traffico in entrata:

    ping 3.18.106.198

    Output:

    Pinging 3.18.106.198 with 32 bytes of data: Request timed out.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  4. Usa l'IPv4indirizzo privato per connetterti e controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-058db34f9a0997895 --region us-east-2 --connection-type eice

    Output:

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~\_ ####_ Amazon Linux 2023 ~~ \_#####\ ~~ \###| ~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ _/ _/ _/m/' Last login: Fri Sep 27 18:09:55 2024 from 3.16.146.5 [ec2-user@ip-10-0-1-85 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  5. Connetti all'istanza C. Poiché non esiste un indirizzo IP pubblico a cui eseguire il ping, usa EC2 Instance Connect per connetterti e quindi esegui il ping di un IP pubblico dall'istanza per controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-04eca55f2a482b2c4 --region us-east-2 A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~\_ ####_ Amazon Linux 2023 ~~ \_#####\ ~~ \###| ~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ _/ _/ _/m/' Last login: Fri Sep 27 18:00:31 2024 from 3.16.146.5 [ec2-user@ip-10-0-3-180 ~]$ ping www.amazon.com PING www.amazon.com(2600:9000:25f3:a600:7:49a5:5fd4:b121 (2600:9000:25f3:a600:7:49a5:5fd4:b121)) 56 data bytes 64 bytes from 2600:9000:25f3:a600:7:49a5:5fd4:b121 (2600:9000:25f3:a600:7:49a5:5fd4:b121): icmp_seq=1 ttl=58 time=1.51 ms 64 bytes from 2600:9000:25f3:a600:7:49a5:5fd4:b121 (2600:9000:25f3:a600:7:49a5:5fd4:b121): icmp_seq=2 ttl=58 time=1.49 ms

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

  6. Connetti all'istanza D. Poiché non esiste un indirizzo IP pubblico a cui eseguire il ping, usa EC2 Instance Connect per connetterti e quindi esegui il ping di un IP pubblico dall'istanza per controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-05f9e6a9cfac1dba0 --region us-east-2 A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~\_ ####_ Amazon Linux 2023 ~~ \_#####\ ~~ \###| ~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ _/ _/ _/m/' Last login: Fri Sep 27 18:13:55 2024 from 3.16.146.5 [ec2-user@ip-10-0-3-59 ~]$ ping www.amazon.com PING www.amazon.com(2606:2cc0::374 (2606:2cc0::374)) 56 data bytes 64 bytes from 2606:2cc0::374 (2606:2cc0::374): icmp_seq=1 ttl=58 time=1.21 ms 64 bytes from 2606:2cc0::374 (2606:2cc0::374): icmp_seq=2 ttl=58 time=1.51 ms

    Tieni presente che il ping ha esito positivo e il traffico non è bloccato.

Scenario 6

In questa sezione cambierai la direzione del VPC BPA blocco per vedere come influisce sul traffico. In questo scenario, VPC BPA abilitato in modalità bidirezionale, blocca tutto il traffico proprio come nello Scenario 1. A meno che un'esclusione non abbia accesso a un NAT gateway o gateway Internet egress-only, il traffico viene bloccato.

Diagramma della modalità VPC BPA bidirezionale attivata e dell'esclusione della sottorete A con la modalità solo uscita attivata:

Diagramma illustrato in modalità solo ingresso, che consente il traffico in uscita VPC attraverso il gateway BPA NAT

6.1 Passare alla modalità bidirezionale VPC BPA

Completa questa sezione per cambiare la modalità. BPA

AWS Management Console
  1. Scegli Modifica impostazioni di accesso pubblico:

  2. Cambia la direzione del blocco in Bidirezionale, quindi scegli Salva modifiche.

  3. Attendi che lo stato passi a Attivato. Potrebbero essere necessari alcuni minuti prima che le BPA impostazioni abbiano effetto e l'aggiornamento dello stato.

AWS CLI
  1. Modifica la direzione del VPC BPA blocco:

    aws ec2 --region us-east-2 modify-vpc-block-public-access-options --internet-gateway-block-mode block-bidirectional

    Potrebbero essere necessari alcuni minuti prima che le BPA impostazioni abbiano effetto e l'aggiornamento dello stato.

  2. Visualizza lo stato di VPCBPA:

    aws ec2 --region us-east-2 describe-vpc-block-public-access-options

6.2 Connect alle istanze

Completa questa sezione per connetterti alle istanze.

AWS Management Console
  1. Esegui il ping dell'IPv4indirizzo pubblico delle istanze A e B. Tieni presente che il traffico è bloccato.

  2. Connettiti all'istanza A e B utilizzando EC2 instance connect come hai fatto nello Scenario 1 e fai ping su www.amazon.com. Tieni presente che non puoi eseguire il ping di un sito pubblico su Internet dall'istanza A o B. Il traffico è bloccato.

  3. Connettiti alle istanze C e D utilizzando EC2 instance connect come hai fatto nello Scenario 1 e invia il ping a www.amazon.com da esse. Tieni presente che non puoi eseguire il ping di un sito pubblico su Internet dall'istanza C o D. Il traffico è bloccato.

AWS CLI
  1. Esegui il ping dell'istanza A utilizzando l'IPv4indirizzo pubblico per controllare il traffico in entrata:

    ping 18.225.8.244

    Output:

    Pinging 18.225.8.244 with 32 bytes of data: Request timed out.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  2. Usa l'IPv4indirizzo privato per connetterti e controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-058db34f9a0997895 --region us-east-2 --connection-type eice

    Output:

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~\_ ####_ Amazon Linux 2023 ~~ \_#####\ ~~ \###| ~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ _/ _/ _/m/' Last login: Fri Sep 27 18:17:44 2024 from 3.16.146.5 [ec2-user@ip-10-0-1-85 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  3. Esegui il ping dell'istanza A utilizzando l'IPv4indirizzo pubblico per controllare il traffico in entrata:

    ping 3.18.106.198

    Output:

    Pinging 3.18.106.198 with 32 bytes of data: Request timed out.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  4. Usa l'IPv4indirizzo privato per connetterti e controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-058db34f9a0997895 --region us-east-2 --connection-type eice

    Output:

    A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~\_ ####_ Amazon Linux 2023 ~~ \_#####\ ~~ \###| ~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ _/ _/ _/m/' Last login: Fri Sep 27 18:09:55 2024 from 3.16.146.5 [ec2-user@ip-10-0-1-85 ~]$ ping www.amazon.com PING d3ag4hukkh62yn.cloudfront.net (18.65.233.187) 56(84) bytes of data.

    Tieni presente che il ping fallisce e il traffico è bloccato.

  5. Connetti all'istanza C. Poiché non esiste un indirizzo IP pubblico a cui eseguire il ping, usa EC2 Instance Connect per connetterti e quindi esegui il ping di un IP pubblico dall'istanza per controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-04eca55f2a482b2c4 --region us-east-2 A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~\_ ####_ Amazon Linux 2023 ~~ \_#####\ ~~ \###| ~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ _/ _/ _/m/' Last login: Fri Sep 27 18:19:45 2024 from 3.16.146.5 [ec2-user@ip-10-0-3-180 ~]$ ping www.amazon.com PING www.amazon.com(2600:9000:25f3:6200:7:49a5:5fd4:b121 (2600:9000:25f3:6200:7:49a5:5fd4:b121)) 56 data bytes

    Tieni presente che il ping fallisce e il traffico è bloccato.

  6. Connetti all'istanza D. Poiché non esiste un indirizzo IP pubblico a cui eseguire il ping, usa EC2 Instance Connect per connetterti e quindi esegui il ping di un IP pubblico dall'istanza per controllare il traffico in uscita:

    aws ec2-instance-connect ssh --instance-id i-05f9e6a9cfac1dba0 --region us-east-2 A newer release of "Amazon Linux" is available. Version 2023.5.20240916: Run "/usr/bin/dnf check-release-update" for full release and version update info , #_ ~\_ ####_ Amazon Linux 2023 ~~ \_#####\ ~~ \###| ~~ \#/ ___ https://aws.amazon.com/linux/amazon-linux-2023 ~~ V~' '-> ~~~ / ~~._. _/ _/ _/ _/m/' Last login: Fri Sep 27 18:20:58 2024 from 3.16.146.5 [ec2-user@ip-10-0-3-59 ~]$ ping www.amazon.com PING www.amazon.com(2600:9000:25f3:b400:7:49a5:5fd4:b121 (2600:9000:25f3:b400:7:49a5:5fd4:b121)) 56 data bytes

    Tieni presente che il ping fallisce e il traffico è bloccato.

Rimozione

In questa sezione eliminerai tutte le risorse che hai creato per questo esempio avanzato. È importante pulire le risorse per evitare costi aggiuntivi eccessivi per le risorse create nel tuo account.

Elimina le risorse CloudFormation

Completa questa sezione per eliminare le risorse create con il AWS CloudFormation modello.

AWS Management Console
  1. Apri la AWS CloudFormation console all'indirizzohttps://console.aws.amazon.com/cloudformation/.

  2. Scegli lo VPC BPA stack.

  3. Scegli Elimina.

  4. Una volta che inizi a eliminare lo stack, visualizza la scheda Eventi per visualizzare lo stato di avanzamento e assicurarti che lo stack venga eliminato. Potrebbe essere necessario forzare l'eliminazione dello stack per eliminarlo completamente.

AWS CLI
  1. Eliminare lo CloudFormation stack. Potrebbe essere necessario forzare l'eliminazione dello stack per eliminarlo completamente.

    aws cloudformation delete-stack --stack-name VPC-BPA-stack --region us-east-2
  2. Visualizza lo stato di avanzamento e assicurati che lo stack venga eliminato.

    aws cloudformation describe-stack-events --stack-name VPC-BPA-stack --region us-east-2

Tieni traccia dell'eliminazione delle esclusioni con AWS CloudTrail

Completa questa sezione per tenere traccia dell'eliminazione delle esclusioni con. AWS CloudTrail CloudTrail le voci vengono visualizzate quando si elimina un'esclusione.

AWS Management Console

Puoi visualizzare tutte le esclusioni eliminate nella cronologia degli CloudTrail eventi cercando Tipo di risorsa > AWS:::EC2: VPCBlockPublicAccessExclusion nella AWS CloudTrail console all'indirizzo. https://console.aws.amazon.com/cloudtrailv2/

AWS CLI

Puoi utilizzare il comando lookup-events per visualizzare gli eventi relativi all'eliminazione delle esclusioni:

aws cloudtrail lookup-events --lookup-attributes AttributeKey=ResourceType,AttributeValue=AWS::EC2::VPCBlockPublicAccessExclusion

L'esempio avanzato è completo.