Blokir akses publik ke VPCs dan subnet - Amazon Virtual Private Cloud

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Blokir akses publik ke VPCs dan subnet

VPCBlokir Akses Publik (BPA) adalah fitur keamanan terpusat yang memungkinkan Anda untuk secara otoritatif mencegah akses internet publik ke VPC sumber daya di seluruh AWS akun, memastikan kepatuhan terhadap persyaratan keamanan sambil memberikan fleksibilitas untuk pengecualian dan kemampuan audit tertentu.

VPCBPAFitur ini memiliki mode berikut:

  • Dua arah: Semua lalu lintas ke dan dari gateway internet dan gateway internet khusus pintu masuk di Wilayah ini (kecuali untuk dikecualikan dan subnet) diblokir. VPCs

  • Ingress-only: Semua lalu lintas internet ke VPCs dalam Wilayah ini (kecuali untuk VPCs atau subnet yang dikecualikan) diblokir. Hanya lalu lintas ke dan dari NAT gateway dan gateway internet khusus pintu masuk yang diizinkan karena gateway ini hanya memungkinkan koneksi keluar dibuat.

Anda juga dapat membuat “pengecualian” untuk fitur ini untuk lalu lintas yang tidak ingin Anda blokir. Pengecualian adalah mode yang dapat diterapkan ke satu VPC atau subnet yang mengecualikannya dari BPA mode akun dan akan memungkinkan akses dua arah atau hanya keluar.

Pengecualian dapat memiliki salah satu mode berikut:

  • Dua arah: Semua lalu lintas internet ke dan dari yang dikecualikan VPCs dan subnet diperbolehkan.

  • Egress-only: Lalu lintas internet keluar dari yang dikecualikan VPCs dan subnet diizinkan. Lalu lintas internet masuk ke yang dikecualikan VPCs dan subnet diblokir. Ini hanya berlaku ketika BPA disetel ke Dua Arah.

BPAdasar-dasar

Bagian ini mencakup detail penting tentang VPCBPA, termasuk layanan mana yang mendukungnya dan bagaimana Anda dapat bekerja dengannya.

Ketersediaan wilayah

VPCBPAtersedia di semua AWS Wilayah komersial termasuk GovCloud dan Wilayah Tiongkok.

Dalam panduan ini, Anda juga akan menemukan informasi tentang penggunaan Network Access Analyzer dan Reachability Analyzer dengan. VPC BPA Perhatikan bahwa Network Access Analyzer dan Reachability Analyzer tidak tersedia di semua Wilayah komersial. Untuk informasi tentang ketersediaan regional Network Access Analyzer dan Reachability Analyzer, lihat Batasan dalam Panduan dan Pertimbangan Penganalisis Akses Jaringan dalam Panduan Reachability Analyzer.

AWS dampak dan dukungan layanan

Dukungan sumber daya dan layanan berikut VPC BPA dan lalu lintas ke layanan dan sumber daya ini dipengaruhi oleh VPCBPA:

  • Internet gateway: Semua lalu lintas masuk dan keluar diblokir.

  • Gateway internet khusus Egress: Semua lalu lintas keluar diblokir. Gateway internet khusus jalan keluar tidak mengizinkan lalu lintas masuk.

  • NATgateway: Semua lalu lintas masuk dan keluar diblokir. NATgateway membutuhkan gateway internet untuk konektivitas internet.

  • Network Load Balancer yang menghadap ke Internet: Semua lalu lintas masuk dan keluar diblokir. Network Load Balancer yang menghadap ke internet memerlukan gateway internet untuk konektivitas internet.

  • Application Load Balancer yang menghadap ke Internet: Semua lalu lintas masuk dan keluar diblokir. Penyeimbang Beban Aplikasi yang menghadap ke Internet memerlukan gateway internet untuk konektivitas internet.

  • AWS Akselerator Global: Lalu lintas masuk ke VPCs diblokir.

Lalu lintas yang terkait dengan konektivitas pribadi, seperti lalu lintas untuk layanan dan sumber daya berikut, tidak diblokir atau dipengaruhi oleh VPCBPA:

  • AWS Client VPN

  • Amazon CloudFront VPCAsal-usul

  • AWS Awan WAN

  • AWS Outposts gerbang lokal

  • AWS Site-to-Site VPN

  • Gateway transit

  • Akses Terverifikasi AWS

  • AWS Wavelength Gateway operator

penting

Lalu lintas yang dikirim secara pribadi dari sumber daya di layanan Anda VPC ke layanan lain yang berjalan di AndaVPC, seperti EC2 DNS Resolver, diizinkan bahkan ketika BPA dihidupkan karena tidak melewati gateway internet di Anda. VPC Ada kemungkinan bahwa layanan ini dapat membuat permintaan ke sumber daya di luar atas nama Anda, misalnya, untuk menyelesaikan DNS kueri, dan dapat mengekspos informasi tentang aktivitas sumber daya di dalam Anda VPC jika tidak dikurangi melalui kontrol keamanan lainnya. VPC

BPAketerbatasan

VPCBPAMode masuk saja tidak didukung di Local Zones (LZs) di mana gateway dan NAT gateway internet khusus pintu masuk tidak diizinkan.

Kontrol akses VPA BPA dengan IAM kebijakan

Untuk contoh IAM kebijakan yang mengizinkan/menolak akses ke VPC BPA fitur, lihat. Blokir akses publik ke VPCs dan subnet

Aktifkan mode BPA dua arah untuk akun Anda

VPCBPAmode dua arah memblokir semua lalu lintas ke dan dari gateway internet dan gateway internet khusus pintu masuk di Wilayah ini (kecuali untuk dikecualikan dan subnet). VPCs Untuk informasi selengkapnya tentang pengecualian, lihatMembuat dan menghapus pengecualian.

penting

Kami sangat menyarankan agar Anda meninjau secara menyeluruh beban kerja yang memerlukan akses Internet sebelum mengaktifkan VPC BPA di akun produksi Anda.

catatan
  • Untuk mengaktifkan VPC BPA pada VPCs dan subnet di akun Anda, Anda harus memiliki VPCs dan subnet.

  • Jika saat ini Anda berbagi VPC subnet dengan akun lain, VPC BPA mode yang diberlakukan oleh pemilik subnet juga berlaku untuk lalu lintas peserta, tetapi peserta tidak dapat mengontrol VPC BPA pengaturan yang memengaruhi subnet bersama.

AWS Management Console
  1. Buka VPC konsol Amazon dihttps://console.aws.amazon.com/vpc/.

  2. Di panel navigasi kiri, pilih Pengaturan.

  3. Pilih Edit setelan akses publik.

  4. Pilih Aktifkan blokir akses publik dan dua arah, lalu pilih Simpan perubahan.

  5. Tunggu Status berubah menjadi On. Mungkin perlu waktu beberapa menit agar BPA pengaturan diterapkan dan status akan diperbarui.

VPCBPAMode dua arah sekarang aktif.

AWS CLI
  1. Hidupkan VPCBPA:

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

    Mungkin perlu waktu beberapa menit agar BPA pengaturan diterapkan dan status akan diperbarui.

  2. Lihat status VPCBPA:

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

Ubah VPC BPA mode ke ingress-only

VPCBPAmodus masuk-only memblokir semua lalu lintas internet ke VPCs dalam Wilayah ini (kecuali untuk VPCs atau subnet yang dikecualikan). Hanya lalu lintas ke dan dari NAT gateway dan gateway internet khusus pintu masuk yang diizinkan karena gateway ini hanya memungkinkan koneksi keluar dibuat.

AWS Management Console
  1. Ubah pengaturan akses publik di VPC konsol dan ubah arah ke Ingress-only.

  2. Simpan perubahan dan tunggu statusnya diperbarui. Mungkin perlu waktu beberapa menit agar BPA pengaturan diterapkan dan status akan diperbarui.

AWS CLI
  1. Ubah arah VPC BPA blok:

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

    Mungkin perlu waktu beberapa menit agar BPA pengaturan diterapkan dan status akan diperbarui.

  2. Lihat status VPCBPA:

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

Membuat dan menghapus pengecualian

VPCBPAPengecualian adalah mode yang dapat diterapkan ke satu VPC atau subnet yang mengecualikannya dari BPA mode akun dan akan memungkinkan akses dua arah atau hanya keluar. Anda dapat membuat BPA pengecualian untuk VPCs dan subnet bahkan ketika tidak BPA diaktifkan pada akun untuk memastikan bahwa tidak ada gangguan lalu lintas ke pengecualian saat VPC BPA dihidupkan.

Anda dapat membuat maksimum 50 pengecualian. Untuk informasi tentang meminta kenaikan batas, lihat VPCBPApengecualian per akun di. VPCKuota Amazon

AWS Management Console
  1. Di tab Blokir akses publik, di bawah Pengecualian, pilih Buat pengecualian.

  2. Pilih VPC atau subnet, pilih arah blok:

    • Dua arah: Memungkinkan semua lalu lintas internet ke dan dari yang dikecualikan VPCs dan subnet.

    • Egress-only: Memungkinkan lalu lintas internet keluar dari yang dikecualikan dan subnet. VPCs Memblokir lalu lintas internet masuk ke yang dikecualikan VPCs dan subnet. Pengaturan ini berlaku ketika BPA diatur ke dua arah.

  3. Pilih Buat pengecualian.

  4. Tunggu status Pengecualian berubah menjadi Aktif. Anda mungkin perlu me-refresh tabel pengecualian untuk melihat perubahan.

Pengecualian telah dibuat.

AWS CLI
  1. Ubah arah izin pengecualian:

    aws ec2 --region us-east-2 create-vpc-block-public-access-exclusion --subnet-id subnet-id --internet-gateway-exclusion-mode allow-bidirectional
  2. Diperlukan waktu untuk memperbarui status pengecualian. Untuk melihat status pengecualian:

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

Menilai dampak BPA dan memantau BPA

Bagian ini berisi informasi tentang Anda dapat menilai dampak VPC BPA sebelum Anda menyalakannya dan bagaimana Anda memantau apakah lalu lintas diblokir setelah Anda menyalakannya.

Menilai dampak dari BPA dengan Network Access Analyzer

Di bagian ini, Anda akan menggunakan Network Access Analyzer untuk melihat sumber daya di akun Anda yang menggunakan gateway internet sebelum Anda mengaktifkan VPC BPA dan memblokir akses. Gunakan analisis ini untuk memahami dampak VPC BPA mengaktifkan akun Anda dan memblokir lalu lintas.

catatan
  • Network Access Analyzer tidak mendukungIPv6; jadi Anda tidak akan dapat menggunakannya untuk melihat dampak potensial BPA pada lalu lintas keluar gateway internet khusus egres. IPv6

  • Anda dikenakan biaya untuk analisis yang Anda lakukan dengan Network Access Analyzer. Untuk informasi selengkapnya, lihat Harga di Network Access Analyzer Panduan.

  • Untuk informasi tentang ketersediaan regional Network Access Analyzer, lihat Batasan dalam Panduan Penganalisis Akses Jaringan.

AWS Management Console
  1. Buka konsol AWS Network Insights dihttps://console.aws.amazon.com/networkinsights/.

  2. Pilih Network Access Analyzer.

  3. Pilih Buat Lingkup Akses Jaringan.

  4. Pilih Identifikasi akses ke atau dari gateway internet dan pilih Berikutnya.

  5. Template sudah dikonfigurasi untuk menganalisis lalu lintas ke dan dari gateway internet di akun Anda. Anda dapat melihat ini di bawah Sumber dan Tujuan.

  6. Pilih Berikutnya.

  7. Pilih Buat Lingkup Akses Jaringan.

  8. Pilih ruang lingkup yang baru saja Anda buat dan pilih Analisis.

  9. Tunggu hingga analisis selesai.

  10. Lihat temuan analisis. Setiap baris di bawah Temuan menunjukkan jalur jaringan yang dapat diambil paket dalam jaringan ke atau dari gateway internet di akun Anda. Dalam hal ini, jika Anda menghidupkan VPC BPA dan tidak ada subnet VPCs dan atau yang muncul dalam temuan ini dikonfigurasi sebagai BPA pengecualian, lalu lintas ke subnet VPCs dan subnet akan dibatasi.

  11. Analisis setiap temuan untuk memahami dampak sumber daya BPA di AndaVPCs.

Analisis dampak selesai.

AWS CLI
  1. Membuat cakupan akses jaringan:

    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. Mulai analisis ruang lingkup:

    aws ec2 start-network-insights-access-scope-analysis --region us-east-2 --network-insights-access-scope-id nis-id
  3. Dapatkan hasil analisis:

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

    Hasilnya menunjukkan lalu lintas ke dan dari gateway internet di semua akun Anda. VPCs Hasilnya diatur sebagai “temuan”. “FindingId“:" AnalysisFinding -1" menunjukkan bahwa ini adalah temuan pertama dalam analisis. Perhatikan bahwa ada beberapa temuan dan masing-masing menunjukkan arus lalu lintas yang akan terpengaruh dengan menyalakan VPCBPA. Temuan pertama akan menunjukkan bahwa lalu lintas dimulai pada gateway internet (” SequenceNumber “: 1), diteruskan ke NACL (” SequenceNumber “: 2) ke grup keamanan (” SequenceNumber “: 3) dan berakhir pada sebuah instance (” SequenceNumber “: 4).

  4. Analisis temuan untuk memahami dampak sumber daya BPA di AndaVPCs.

Analisis dampak selesai.

Memantau BPA dampak dengan log alur

VPCFlow Logs adalah fitur yang memungkinkan Anda untuk menangkap informasi tentang lalu lintas IP ke dan dari antarmuka jaringan Elastic di situs AndaVPC. Anda dapat menggunakan fitur ini untuk memantau lalu lintas yang diblokir dengan VPC BPA menjangkau antarmuka jaringan instans Anda.

Buat log alur untuk Anda VPC menggunakan langkah-langkah diBekerja dengan log alur.

Saat membuat log alur, pastikan Anda menggunakan format khusus yang menyertakan bidangreject-reason.

Ketika Anda melihat log aliran, jika lalu lintas ke sebuah ENI ditolak karenaBPA, Anda akan melihat reject-reason dari BPA dalam entri log aliran.

Selain batasan standar untuk log VPC aliran, perhatikan batasan berikut khusus untuk VPCBPA:

  • Log aliran untuk VPC BPA tidak menyertakan catatan yang dilewati.

  • Log aliran untuk VPC BPA tidak termasuk bytesbahkan jika Anda menyertakan bytes bidang dalam log aliran Anda.

Lacak penghapusan pengecualian dengan CloudTrail

Bagian ini menjelaskan bagaimana Anda dapat menggunakan AWS CloudTrail untuk memantau dan melacak penghapusan pengecualian. VPC BPA

AWS Management Console

Anda dapat melihat pengecualian yang dihapus dalam riwayat CloudTrail Acara dengan mencari Jenis sumber daya > AWS::EC2::VPCBlockPublicAccessExclusion di AWS CloudTrail konsol dihttps://console.aws.amazon.com/cloudtrailv2/.

AWS CLI

Anda dapat menggunakan lookup-events perintah untuk melihat peristiwa yang terkait dengan penghapusan pengecualian:

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

Verifikasi konektivitas diblokir dengan Reachability Analyzer

VPCReachability Analyzer dapat digunakan untuk mengevaluasi apakah jalur jaringan tertentu dapat dicapai mengingat konfigurasi jaringan Anda, termasuk pengaturan. VPC BPA

Untuk informasi tentang ketersediaan regional Reachability Analyzer, lihat Pertimbangan dalam Panduan Reachability Analyzer.

AWS Management Console
  1. Buka konsol Network Insights dihttps://console.aws.amazon.com/networkinsights/home#ReachabilityAnalyzer.

  2. Klik Buat dan analisis jalur.

  3. Untuk Jenis Sumber, pilih Internet Gateways dan pilih gateway internet yang ingin Anda blokir lalu lintas dari dropdown Sumber.

  4. Untuk Jenis Tujuan, pilih Instans dan pilih instance yang ingin Anda blokir lalu lintas dari dropdown Tujuan.

  5. Klik Buat dan analisis jalur.

  6. Tunggu hingga analisis selesai. Hal ini dapat menghabiskan waktu beberapa menit.

  7. Setelah selesai, Anda akan melihat bahwa Status Reachability Tidak dapat dijangkau dan detail Path menunjukkan bahwa VPC_BLOCK_PUBLIC_ACCESS_ENABLED itulah penyebab masalah jangkauan ini.

AWS CLI
  1. Buat jalur jaringan menggunakan ID Internet Gateway yang ingin Anda blokir lalu lintas (sumber) dan ID instance yang ingin Anda blokir lalu lintas ke (tujuan):

    aws ec2 --region us-east-2 create-network-insights-path --source igw-id --destination instance-id --protocol TCP
  2. Mulai analisis pada jalur jaringan:

    aws ec2 --region us-east-2 start-network-insights-analysis --network-insights-path-id nip-id
  3. Ambil hasil analisis:

    aws ec2 --region us-east-2 describe-network-insights-analyses --network-insights-analysis-ids nia-id
  4. Verifikasi bahwa VPC_BLOCK_PUBLIC_ACCESS_ENABLED itu ExplanationCode karena kurangnya jangkauan.

Contoh lanjutan

Bagian ini berisi contoh lanjutan yang akan membantu Anda memahami cara kerja fitur VPC Blokir Akses Publik dalam berbagai skenario. Setiap skenario dibangun dari skenario sebelumnya, jadi penting untuk menyelesaikan langkah-langkahnya secara berurutan.

penting

Jangan melalui contoh ini di akun produksi. Kami sangat menyarankan agar Anda meninjau secara menyeluruh beban kerja yang memerlukan akses Internet sebelum mengaktifkan VPC BPA di akun produksi Anda.

catatan

Untuk memahami VPC BPA fitur ini sepenuhnya, Anda memerlukan sumber daya tertentu di akun Anda. Di bagian ini, kami menyediakan AWS CloudFormation templat yang dapat Anda gunakan untuk menyediakan sumber daya yang Anda butuhkan untuk sepenuhnya memahami cara kerja fitur ini. Ada biaya yang terkait dengan sumber daya yang Anda berikan dengan CloudFormation template dan analisis yang Anda lakukan dengan Network Access Analyzer dan Reachability Analyzer. Jika Anda menggunakan template di bagian ini, pastikan Anda menyelesaikan langkah-langkah Pembersihan setelah selesai dengan contoh ini.

Menyebarkan template CloudFormation

Untuk mendemonstrasikan cara kerja fitur ini, Anda memerlukan aVPC, subnet, instance, dan sumber daya lainnya. Untuk membuatnya lebih mudah untuk menyelesaikan demonstrasi ini, kami telah menyediakan AWS CloudFormation template di bawah ini yang dapat Anda gunakan untuk dengan cepat memutar sumber daya yang diperlukan untuk skenario dalam demo ini.

catatan

Ada biaya yang terkait dengan sumber daya yang Anda buat di bagian ini dengan CloudFormation templat, seperti biaya NAT gateway dan IPv4 alamat publik. Untuk menghindari kelebihan biaya, pastikan Anda menyelesaikan langkah-langkah Pembersihan untuk menghapus semua sumber daya yang dibuat untuk tujuan contoh ini.

Templat membuat sumber daya berikut di akun Anda:

  • Gateway internet khusus egress

  • gateway internet

  • NATpintu gerbang

  • Dua subnet publik

  • Satu subnet privat

  • Dua EC2 contoh dengan alamat publik dan pribadi IPv4

  • Satu EC2 contoh dengan IPv6 alamat dan IPv4 alamat pribadi

  • Satu EC2 contoh dengan IPv4 alamat pribadi saja

  • Grup keamanan dengan SSH lalu lintas ICMP masuk diizinkan dan lalu lintas ALL keluar diizinkan

  • VPClog alur

  • Titik akhir One EC2 Instance Connect di Subnet B

Salin templat di bawah ini dan simpan ke 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. Buka AWS CloudFormation konsol dihttps://console.aws.amazon.com/cloudformation/.

  2. Pilih Buat tumpukan dan unggah file template.yaml.

  3. Ikuti langkah-langkah untuk meluncurkan template. Anda harus memasukkan ID gambar dan jenis instance (seperti t2.micro). Anda juga harus mengizinkan CloudFormation untuk membuat IAM peran bagi Anda untuk pembuatan log alur dan izin untuk masuk Amazon CloudWatch.

  4. Setelah Anda meluncurkan tumpukan, lihat tab Peristiwa untuk melihat kemajuan dan memastikan bahwa tumpukan selesai sebelum Anda melanjutkan.

AWS CLI
  1. Jalankan perintah berikut untuk membuat CloudFormation tumpukan:

    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. Lihat kemajuan dan pastikan tumpukan selesai sebelum Anda melanjutkan:

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

Lihat dampak VPC BPA dengan Network Access Analyzer

Di bagian ini, Anda akan menggunakan Network Access Analyzer untuk melihat sumber daya di akun Anda yang menggunakan gateway internet. Gunakan analisis ini untuk memahami dampak VPC BPA mengaktifkan akun Anda dan memblokir lalu lintas.

Untuk informasi tentang ketersediaan regional Network Access Analyzer, lihat Batasan dalam Panduan Penganalisis Akses Jaringan.

AWS Management Console
  1. Buka konsol AWS Network Insights dihttps://console.aws.amazon.com/networkinsights/.

  2. Pilih Network Access Analyzer.

  3. Pilih Buat Lingkup Akses Jaringan.

  4. Pilih Identifikasi akses ke atau dari gateway internet dan pilih Berikutnya.

  5. Template sudah dikonfigurasi untuk menganalisis lalu lintas ke dan dari gateway internet di akun Anda. Anda dapat melihat ini di bawah Sumber dan Tujuan.

  6. Pilih Berikutnya.

  7. Pilih Buat Lingkup Akses Jaringan.

  8. Pilih ruang lingkup yang baru saja Anda buat dan pilih Analisis.

  9. Tunggu hingga analisis selesai.

  10. Lihat temuan analisis. Setiap baris di bawah Temuan menunjukkan jalur jaringan yang dapat diambil paket dalam jaringan ke atau dari gateway internet di akun Anda. Dalam hal ini, jika Anda menghidupkan VPC BPA dan tidak ada subnet VPCs dan atau yang muncul dalam temuan ini dikonfigurasi sebagai BPA pengecualian, lalu lintas ke subnet VPCs dan subnet akan dibatasi.

  11. Analisis setiap temuan untuk memahami dampak sumber daya BPA di AndaVPCs.

Analisis dampak selesai.

AWS CLI
  1. Membuat cakupan akses jaringan:

    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. Mulai analisis ruang lingkup:

    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. Dapatkan hasil analisis:

    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==" }

    Hasilnya menunjukkan lalu lintas ke dan dari gateway internet di semua akun Anda. VPCs Hasilnya diatur sebagai “temuan”. “FindingId“:" AnalysisFinding -1" menunjukkan bahwa ini adalah temuan pertama dalam analisis. Perhatikan bahwa ada beberapa temuan dan masing-masing menunjukkan arus lalu lintas yang akan terpengaruh dengan menyalakan VPCBPA. Temuan pertama akan menunjukkan bahwa lalu lintas dimulai pada gateway internet (” SequenceNumber “: 1), diteruskan ke NACL (” SequenceNumber “: 2) ke grup keamanan (” SequenceNumber “: 3) dan berakhir pada sebuah instance (” SequenceNumber “: 4).

  4. Analisis temuan untuk memahami dampak sumber daya BPA di AndaVPCs.

Analisis dampak selesai.

Skenario 1

Di bagian ini, untuk menetapkan garis dasar dan memastikan bahwa, sebelum Anda mengaktifkanBPA, semua instance dapat dicapai, Anda akan terhubung ke semua instance dan melakukan ping ke alamat IP publik.

Diagram VPC tanpa VPC BPA dihidupkan:

Diagram yang menunjukkan VPC tanpa BPA diaktifkan.

1.1 Connect ke instance

Lengkapi bagian ini untuk terhubung ke instans Anda dengan VPC BPA dimatikan untuk memastikan Anda dapat terhubung tanpa masalah. Semua instance yang dibuat dengan CloudFormation untuk contoh ini memiliki nama seperti, "VPCBPAInstance A”.

AWS Management Console
  1. Buka EC2 konsol Amazon dihttps://console.aws.amazon.com/ec2/.

  2. Buka detail Instance A.

  3. Connect ke instance A menggunakan opsi EC2Instance Connect > Connect menggunakan EC2 Instance Connect.

  4. Pilih Hubungkan. Setelah Anda berhasil terhubung ke instans, ping www.amazon.com untuk memverifikasi Anda dapat mengirim permintaan keluar ke internet.

  5. Gunakan metode yang sama yang Anda gunakan untuk terhubung ke instance A untuk terhubung ke instance B dan uji apakah Anda dapat melakukan ping untuk mengirim permintaan keluar ke internet.

  6. Hubungkan ke instance C menggunakan opsi EC2Instance Connect > Connect menggunakan EC2 Instance Connect Endpoint. Anda harus menggunakan opsi endpoint karena instance C dan D berada di subnet pribadi dan tidak memiliki alamat IP publik:

  7. Gunakan metode yang sama yang Anda gunakan misalnya C untuk terhubung ke instance D dan uji apakah Anda dapat melakukan ping untuk mengirim permintaan keluar ke internet.

AWS CLI
  1. Ping Instance A menggunakan IPv4 alamat publik untuk memeriksa lalu lintas masuk:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

  2. Gunakan IPv4 alamat pribadi untuk menghubungkan dan memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

  3. Ping Instance B menggunakan IPv4 alamat publik untuk memeriksa lalu lintas masuk:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

  4. Gunakan IPv4 alamat pribadi untuk menghubungkan dan memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

  5. Connect to Instance C. Karena tidak ada alamat IP publik untuk melakukan ping, gunakan EC2 Instance Connect untuk menghubungkan dan kemudian ping IP publik dari instance untuk memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

  6. Connect to Instance D. Karena tidak ada alamat IP publik untuk melakukan ping, gunakan EC2 Instance Connect untuk menghubungkan dan kemudian ping IP publik dari instance untuk memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

Skenario 2

Di bagian ini Anda akan mengaktifkan VPC BPA dan memblokir lalu lintas ke dan dari gateway internet di akun Anda.

Diagram mode VPC BPA dua arah dihidupkan:

Diagram yang ditampilkan VPC dengan BPA dua arah diaktifkan.

2.1 Aktifkan VPC BPA mode dua arah blok

Lengkapi bagian ini untuk mengaktifkan VPCBPA.

AWS Management Console
  1. Buka VPC konsol Amazon dihttps://console.aws.amazon.com/vpc/.

  2. Di panel navigasi kiri, pilih Pengaturan.

  3. Pilih Edit setelan akses publik:

  4. Pilih Aktifkan blokir akses publik dan dua arah, lalu pilih Simpan perubahan.

  5. Tunggu Status berubah menjadi On. Mungkin perlu waktu beberapa menit agar BPA pengaturan diterapkan dan status akan diperbarui.

VPCBPAsekarang aktif.

AWS CLI
  1. Gunakan perintah modify-vpc-block-public -access-options untuk mengaktifkan: VPC BPA

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

    Mungkin perlu waktu beberapa menit agar BPA pengaturan diterapkan dan status akan diperbarui.

  2. Lihat status VPCBPA:

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

2.2 Connect ke instance

Lengkapi bagian ini untuk terhubung ke instans Anda.

AWS Management Console
  1. Ping IPv4 alamat publik Instance A dan Instance B seperti yang Anda lakukan di Skenario 1. Perhatikan bahwa lalu lintas diblokir.

  2. Connect ke setiap instance menggunakan EC2 instance connect seperti yang Anda lakukan di Skenario 1 dan ping www.amazon.com darinya. Perhatikan bahwa semua lalu lintas keluar diblokir.

AWS CLI
  1. Ping Instance A menggunakan IPv4 alamat publik untuk memeriksa lalu lintas masuk:

    ping 18.225.8.244

    Output:

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

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  2. Gunakan IPv4 alamat pribadi untuk menghubungkan dan memeriksa lalu lintas keluar:

    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.

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  3. Ping Instance B menggunakan IPv4 alamat publik untuk memeriksa lalu lintas masuk:

    ping 3.18.106.198

    Output:

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

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  4. Gunakan IPv4 alamat pribadi untuk menghubungkan dan memeriksa lalu lintas keluar:

    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.

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  5. Connect to Instance C. Karena tidak ada alamat IP publik untuk melakukan ping, gunakan EC2 Instance Connect untuk menghubungkan dan kemudian ping IP publik dari instance untuk memeriksa lalu lintas keluar:

    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.

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  6. Connect to Instance D. Karena tidak ada alamat IP publik untuk melakukan ping, gunakan EC2 Instance Connect untuk menghubungkan dan kemudian ping IP publik dari instance untuk memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

2.3 Opsional: Verifikasi konektivitas diblokir dengan Reachability Analyzer

VPCReachability Analyzer dapat digunakan untuk memahami apakah jalur jaringan tertentu dapat dicapai mengingat konfigurasi jaringan Anda, termasuk pengaturan. VPC BPA Dalam contoh ini Anda akan menganalisis jalur jaringan yang sama yang telah dicoba sebelumnya untuk mengonfirmasi bahwa VPC BPA itulah alasan mengapa konektivitas gagal.

AWS Management Console
  1. Buka konsol Network Insights dihttps://console.aws.amazon.com/networkinsights/home#ReachabilityAnalyzer.

  2. Klik Buat dan analisis jalur.

  3. Untuk Jenis Sumber, pilih Internet Gateways dan pilih gateway internet yang diberi tag Internet Gateway dari VPC BPA dropdown Sumber.

  4. Untuk Jenis Tujuan, pilih Instans dan pilih instance yang ditandai dengan VPCBPAInstance A dari dropdown Destination.

  5. Klik Buat dan analisis jalur.

  6. Tunggu hingga analisis selesai. Hal ini dapat menghabiskan waktu beberapa menit.

  7. Setelah selesai, Anda akan melihat bahwa Status Reachability tidak dapat dijangkau dan detail Path menunjukkan bahwa itulah VPC_BLOCK_PUBLIC_ACCESS_ENABLED penyebabnya.

AWS CLI
  1. Buat jalur jaringan menggunakan ID gateway internet yang diberi tag VPC BPA Internet Gateway dan ID instance yang diberi tag VPC BPA Instance A:

    aws ec2 --region us-east-2 create-network-insights-path --source igw-id --destination instance-id --protocol TCP
  2. Mulai analisis pada jalur jaringan:

    aws ec2 --region us-east-2 start-network-insights-analysis --network-insights-path-id nip-id
  3. Ambil hasil analisis:

    aws ec2 --region us-east-2 describe-network-insights-analyses --network-insights-analysis-ids nia-id
  4. Verifikasi bahwa VPC_BLOCK_PUBLIC_ACCESS_ENABLED itu ExplanationCode karena kurangnya jangkauan.

Skenario 3

Di bagian ini Anda akan mengubah arah VPC BPA lalu lintas dan hanya mengizinkan lalu lintas yang menggunakan NAT gateway atau gateway internet khusus keluar.

Diagram mode VPC BPA Ingress-only diaktifkan:

Diagram yang ditampilkan VPC dengan BPA ingress-only diaktifkan.

3.1 Ubah mode ke ingress-only

Lengkapi bagian ini untuk mengubah mode.

AWS Management Console
  1. Ubah pengaturan akses publik di VPC konsol dan ubah arah ke Ingress-only.

  2. Simpan perubahan dan tunggu statusnya diperbarui. Mungkin perlu waktu beberapa menit agar BPA pengaturan diterapkan dan status akan diperbarui.

AWS CLI
  1. Ubah VPC BPA mode:

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

    Mungkin perlu waktu beberapa menit agar BPA pengaturan diterapkan dan status akan diperbarui.

  2. Lihat status VPCBPA:

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

3.2 Connect ke instance

Lengkapi bagian ini untuk terhubung ke instance.

AWS Management Console
  1. Ping IPv4 alamat publik Instance A dan Instance B seperti yang Anda lakukan di Skenario 1. Perhatikan bahwa lalu lintas diblokir.

  2. Connect ke Instance A dan B menggunakan EC2 instance connect seperti yang Anda lakukan di Skenario 1 dan ping www.amazon.com dari mereka. Perhatikan bahwa Anda tidak dapat melakukan ping ke situs publik di internet dari Instance A atau B dan lalu lintas diblokir.

  3. Connect ke Instance C dan D menggunakan EC2 instance connect seperti yang Anda lakukan di Skenario 1 dan ping www.amazon.com dari mereka. Perhatikan bahwa Anda dapat melakukan ping ke situs publik di internet dari Instance C atau D dan lalu lintas diperbolehkan.

AWS CLI
  1. Ping Instance A menggunakan IPv4 alamat publik untuk memeriksa lalu lintas masuk:

    ping 18.225.8.244

    Output:

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

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  2. Gunakan IPv4 alamat pribadi untuk menghubungkan dan memeriksa lalu lintas keluar:

    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.

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  3. Ping Instance B menggunakan IPv4 alamat publik untuk memeriksa lalu lintas masuk:

    ping 3.18.106.198

    Output:

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

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  4. Gunakan IPv4 alamat pribadi untuk menghubungkan dan memeriksa lalu lintas keluar:

    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.

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  5. Connect to Instance C. Karena tidak ada alamat IP publik untuk melakukan ping, gunakan EC2 Instance Connect untuk menghubungkan dan kemudian ping IP publik dari instance untuk memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

  6. Connect to Instance D. Karena tidak ada alamat IP publik untuk melakukan ping, gunakan EC2 Instance Connect untuk menghubungkan dan kemudian ping IP publik dari instance untuk memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

Skenario 4

Di bagian ini Anda akan membuat pengecualian dan hanya memblokir lalu lintas ke dan dari subnet yang tidak dikecualikan dari. VPC BPA VPCBPAPengecualian adalah mode yang dapat diterapkan ke satu VPC atau subnet yang mengecualikannya dari BPA mode akun dan akan memungkinkan akses dua arah atau hanya keluar. Anda dapat membuat BPA pengecualian untuk VPCs dan subnet bahkan ketika tidak BPA diaktifkan pada akun untuk memastikan bahwa tidak ada gangguan lalu lintas ke pengecualian saat VPC BPA dihidupkan.

Dalam contoh ini, kita akan membuat pengecualian untuk Subnet A untuk menunjukkan bagaimana lalu lintas ke pengecualian dipengaruhi oleh. VPC BPA

Diagram mode VPC BPA Ingress-only diaktifkan dan Subnet Pengecualian dengan mode Dua Arah diaktifkan:

Diagram ditampilkan VPC dengan BPA dalam mode ingress-only dengan pengecualian.

4.1 Buat pengecualian untuk Subnet A

Lengkapi bagian ini untuk membuat pengecualian. VPCBPAPengecualian adalah mode yang dapat diterapkan ke satu VPC atau subnet yang mengecualikannya dari BPA mode akun dan akan memungkinkan akses dua arah atau hanya keluar. Anda dapat membuat BPA pengecualian untuk VPCs dan subnet bahkan ketika tidak BPA diaktifkan pada akun untuk memastikan bahwa tidak ada gangguan lalu lintas ke pengecualian saat VPC BPA dihidupkan.

AWS Management Console
  1. Di tab Blokir akses publik, di bawah Pengecualian, pilih Buat pengecualian.

  2. Pilih VPCBPAPublic Subnet A, pastikan bahwa allow direction Bidirectional dipilih, dan pilih Buat pengecualian.

  3. Tunggu status Pengecualian berubah menjadi Aktif. Anda mungkin perlu me-refresh tabel pengecualian untuk melihat perubahan.

Pengecualian telah dibuat.

AWS CLI
  1. Ubah arah izin pengecualian:

    aws ec2 --region us-east-2 create-vpc-block-public-access-exclusion --subnet-id subnet-id --internet-gateway-exclusion-mode allow-bidirectional
  2. Diperlukan waktu untuk memperbarui status pengecualian. Untuk melihat status pengecualian:

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

4.2 Connect ke instance

Lengkapi bagian ini untuk terhubung ke instance.

AWS Management Console
  1. Ping IPv4 alamat publik Instance A. Perhatikan bahwa lalu lintas diperbolehkan.

  2. Ping IPv4 alamat publik Instance B. Perhatikan bahwa lalu lintas diblokir.

  3. Connect to Instance A menggunakan EC2 instance connect seperti yang Anda lakukan di Skenario 1 dan ping www.amazon.com. Perhatikan bahwa Anda dapat melakukan ping ke situs publik di internet dari Instance A. Lalu lintas diperbolehkan.

  4. Connect ke Instance B menggunakan EC2 instance connect seperti yang Anda lakukan di Skenario 1 dan ping www.amazon.com darinya. Perhatikan bahwa Anda tidak dapat melakukan ping ke situs publik di internet dari Instance B. Lalu lintas diblokir.

  5. Connect ke Instance C dan D menggunakan EC2 instance connect seperti yang Anda lakukan di Skenario 1 dan ping www.amazon.com dari mereka. Perhatikan bahwa Anda dapat melakukan ping ke situs publik di internet dari Instance C atau D. Lalu lintas diperbolehkan.

AWS CLI
  1. Ping Instance A menggunakan IPv4 alamat publik untuk memeriksa lalu lintas masuk:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

  2. Gunakan IPv4 alamat pribadi untuk menghubungkan dan memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

  3. Ping Instance B menggunakan IPv4 alamat publik untuk memeriksa lalu lintas masuk:

    ping 3.18.106.198

    Output:

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

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  4. Gunakan IPv4 alamat pribadi untuk menghubungkan dan memeriksa lalu lintas keluar:

    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.

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  5. Connect to Instance C. Karena tidak ada alamat IP publik untuk melakukan ping, gunakan EC2 Instance Connect untuk menghubungkan dan kemudian ping IP publik dari instance untuk memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

  6. Connect to Instance D. Karena tidak ada alamat IP publik untuk melakukan ping, gunakan EC2 Instance Connect untuk menghubungkan dan kemudian ping IP publik dari instance untuk memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

4.3 Opsional: Verifikasi konektivitas dengan Reachability Analyzer

Menggunakan jalur jaringan yang sama yang dibuat di Reachability Analyzer di Skenario 2, Anda sekarang dapat menjalankan analisis baru dan mengonfirmasi bahwa jalur tersebut dapat dijangkau sekarang setelah pengecualian telah dibuat untuk Public Subnet A.

Untuk informasi tentang ketersediaan regional Reachability Analyzer, lihat Pertimbangan dalam Panduan Reachability Analyzer.

AWS Management Console
  1. Dari Jalur Jaringan yang Anda buat sebelumnya di konsol Network Insights, klik Re-run analysis.

  2. Tunggu hingga analisis selesai. Mungkin perlu waktu beberapa menit.

  3. Konfirmasikan bahwa jalurnya sekarang Dapat Dijangkau.

AWS CLI
  1. Menggunakan ID jalur jaringan yang dibuat sebelumnya, mulai analisis baru:

    aws ec2 --region us-east-2 start-network-insights-analysis --network-insights-path-id nip-id
  2. Ambil hasil analisis:

    aws ec2 --region us-east-2 describe-network-insights-analyses --network-insights-analysis-ids nia-id
  3. Konfirmasikan bahwa kode VPC_BLOCK_PUBLIC_ACCESS_ENABLED penjelasan tidak lagi ada.

Skenario 5

Di bagian ini Anda akan mengubah arah lalu lintas izinkan pada pengecualian untuk melihat VPC BPA dampaknya. Perhatikan bahwa mode egress-only untuk pengecualian tidak terlalu berarti dengan VPC BPA diaktifkan dalam mode khusus masuk blok. Ini adalah perilaku yang sama dengan Skenario 3.

Diagram mode VPC BPA Ingress-only diaktifkan dan Subnet Pengecualian dengan mode egress-only diaktifkan:

Diagram ditampilkan VPC dengan BPA dalam mode masuk saja, memungkinkan lalu lintas keluar melalui gateway. NAT

5.1 Ubah pengecualian, izinkan arah ke egress-only

Lengkapi bagian ini untuk mengubah arah izin pengecualian.

AWS Management Console
  1. Edit pengecualian yang Anda buat di Skenario 4 dan ubah arah allow menjadi Egress-only.

  2. Pilih Simpan perubahan.

  3. Tunggu status Pengecualian berubah menjadi Aktif. Mungkin perlu waktu beberapa menit agar BPA pengaturan diterapkan dan status akan diperbarui. Anda mungkin perlu me-refresh tabel pengecualian untuk melihat perubahan.

AWS CLI
  1. Ubah arah izin pengecualian:

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

    Mungkin perlu waktu beberapa menit agar BPA pengaturan diterapkan dan status akan diperbarui.

  2. Diperlukan waktu untuk memperbarui status pengecualian. Untuk melihat status pengecualian:

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

5.2 Connect ke instance

Lengkapi bagian ini untuk terhubung ke instance.

AWS Management Console
  1. Ping IPv4 alamat publik Instance A dan B. Perhatikan bahwa lalu lintas diblokir.

  2. Connect ke Instance A dan B menggunakan EC2 instance connect seperti yang Anda lakukan di Skenario 1 dan ping www.amazon.com. Perhatikan bahwa Anda tidak dapat melakukan ping ke situs publik di internet dari Instance A atau B. Lalu lintas diblokir.

  3. Connect ke Instance C dan D menggunakan EC2 instance connect seperti yang Anda lakukan di Skenario 1 dan ping www.amazon.com dari mereka. Perhatikan bahwa Anda dapat melakukan ping ke situs publik di internet dari Instance C atau D. Lalu lintas diperbolehkan.

AWS CLI
  1. Ping Instance A menggunakan IPv4 alamat publik untuk memeriksa lalu lintas masuk:

    ping 18.225.8.244

    Output:

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

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  2. Gunakan IPv4 alamat pribadi untuk menghubungkan dan memeriksa lalu lintas keluar:

    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.

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  3. Ping Instance B menggunakan IPv4 alamat publik untuk memeriksa lalu lintas masuk:

    ping 3.18.106.198

    Output:

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

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  4. Gunakan IPv4 alamat pribadi untuk menghubungkan dan memeriksa lalu lintas keluar:

    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.

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  5. Connect to Instance C. Karena tidak ada alamat IP publik untuk melakukan ping, gunakan EC2 Instance Connect untuk menghubungkan dan kemudian ping IP publik dari instance untuk memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

  6. Connect to Instance D. Karena tidak ada alamat IP publik untuk melakukan ping, gunakan EC2 Instance Connect untuk menghubungkan dan kemudian ping IP publik dari instance untuk memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping berhasil dan lalu lintas tidak diblokir.

Skenario 6

Di bagian ini Anda akan mengubah arah VPC BPA blok untuk melihat bagaimana pengaruhnya terhadap lalu lintas. Dalam skenario ini, VPC BPA diaktifkan dalam mode dua arah memblokir semua lalu lintas seperti di Skenario 1. Kecuali pengecualian memiliki akses ke NAT gateway atau gateway internet khusus egres, lalu lintas diblokir.

Diagram mode VPC BPA dua arah dihidupkan dan Subnet Pengecualian dengan mode egress-only diaktifkan:

Diagram ditampilkan VPC dengan BPA dalam mode masuk saja, memungkinkan lalu lintas keluar melalui gateway NAT

6.1 Ubah VPC BPA ke mode dua arah

Lengkapi bagian ini untuk mengubah BPA mode.

AWS Management Console
  1. Pilih Edit setelan akses publik:

  2. Ubah arah blok menjadi Bidirectional lalu pilih Simpan perubahan.

  3. Tunggu Status berubah menjadi On. Mungkin perlu waktu beberapa menit agar BPA pengaturan diterapkan dan status akan diperbarui.

AWS CLI
  1. Ubah arah VPC BPA blok:

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

    Mungkin perlu waktu beberapa menit agar BPA pengaturan diterapkan dan status akan diperbarui.

  2. Lihat status VPCBPA:

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

6.2 Sambungkan ke instans

Lengkapi bagian ini untuk terhubung ke instance.

AWS Management Console
  1. Ping IPv4 alamat publik Instance A dan B. Perhatikan bahwa lalu lintas diblokir.

  2. Connect ke Instance A dan B menggunakan EC2 instance connect seperti yang Anda lakukan di Skenario 1 dan ping www.amazon.com. Perhatikan bahwa Anda tidak dapat melakukan ping ke situs publik di internet dari Instance A atau B. Lalu lintas diblokir.

  3. Connect ke Instance C dan D menggunakan EC2 instance connect seperti yang Anda lakukan di Skenario 1 dan ping www.amazon.com dari mereka. Perhatikan bahwa Anda tidak dapat melakukan ping ke situs publik di internet dari Instance C atau D. Lalu lintas diblokir.

AWS CLI
  1. Ping Instance A menggunakan IPv4 alamat publik untuk memeriksa lalu lintas masuk:

    ping 18.225.8.244

    Output:

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

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  2. Gunakan IPv4 alamat pribadi untuk menghubungkan dan memeriksa lalu lintas keluar:

    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.

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  3. Ping Instance A menggunakan IPv4 alamat publik untuk memeriksa lalu lintas masuk:

    ping 3.18.106.198

    Output:

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

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  4. Gunakan IPv4 alamat pribadi untuk menghubungkan dan memeriksa lalu lintas keluar:

    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.

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  5. Connect to Instance C. Karena tidak ada alamat IP publik untuk melakukan ping, gunakan EC2 Instance Connect untuk menghubungkan dan kemudian ping IP publik dari instance untuk memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

  6. Connect to Instance D. Karena tidak ada alamat IP publik untuk melakukan ping, gunakan EC2 Instance Connect untuk menghubungkan dan kemudian ping IP publik dari instance untuk memeriksa lalu lintas keluar:

    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

    Perhatikan bahwa ping gagal dan lalu lintas diblokir.

Pembersihan

Di bagian ini Anda akan menghapus semua sumber daya yang telah Anda buat untuk contoh lanjutan ini. Penting untuk membersihkan sumber daya untuk menghindari biaya tambahan berlebih untuk sumber daya yang dibuat di akun Anda.

Hapus CloudFormation sumber daya

Lengkapi bagian ini untuk menghapus sumber daya yang Anda buat dengan AWS CloudFormation templat.

AWS Management Console
  1. Buka AWS CloudFormation konsol dihttps://console.aws.amazon.com/cloudformation/.

  2. Pilih VPC BPA tumpukan.

  3. Pilih Hapus.

  4. Setelah Anda mulai menghapus tumpukan, lihat tab Acara untuk melihat kemajuan dan memastikan bahwa tumpukan dihapus. Anda mungkin harus memaksa menghapus tumpukan agar dapat dihapus sepenuhnya.

AWS CLI
  1. Hapus CloudFormation tumpukan. Anda mungkin harus memaksa menghapus tumpukan agar dapat dihapus sepenuhnya.

    aws cloudformation delete-stack --stack-name VPC-BPA-stack --region us-east-2
  2. Lihat kemajuan dan pastikan tumpukan dihapus.

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

Lacak penghapusan pengecualian dengan AWS CloudTrail

Lengkapi bagian ini untuk melacak penghapusan pengecualian dengan. AWS CloudTrail CloudTrail entri muncul saat Anda menghapus pengecualian.

AWS Management Console

Anda dapat melihat pengecualian yang dihapus di Riwayat CloudTrail peristiwa dengan mencari Jenis sumber daya > AWS::EC2:: VPCBlockPublicAccessExclusion di AWS CloudTrail konsol dihttps://console.aws.amazon.com/cloudtrailv2/.

AWS CLI

Anda dapat menggunakan perintah lookup-events untuk melihat peristiwa yang terkait dengan penghapusan pengecualian:

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

Contoh lanjutan selesai.