Buat laporan temuan Network Access Analyzer untuk akses internet masuk dalam beberapa Akun AWS - AWS Prescriptive Guidance

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

Buat laporan temuan Network Access Analyzer untuk akses internet masuk dalam beberapa Akun AWS

Mike Virgilio, Amazon Web Services

Ringkasan

Akses internet masuk yang tidak disengaja ke AWS sumber daya dapat menimbulkan risiko bagi perimeter data organisasi. Network Access Analyzer adalah fitur Amazon Virtual Private Cloud (Amazon VPC) yang membantu Anda mengidentifikasi akses jaringan yang tidak diinginkan ke sumber daya Anda di Amazon Web Services ().AWS Anda dapat menggunakan Network Access Analyzer untuk menentukan persyaratan akses jaringan Anda dan untuk mengidentifikasi jalur jaringan potensial yang tidak memenuhi persyaratan yang Anda tentukan. Anda dapat menggunakan Network Access Analyzer untuk melakukan hal berikut:

  1. Identifikasi AWS sumber daya yang dapat diakses oleh internet melalui gateway internet.

  2. Validasi bahwa virtual private cloud (VPCs) Anda tersegmentasi dengan tepat, seperti mengisolasi lingkungan produksi dan pengembangan dan memisahkan beban kerja transaksional.

Network Access Analyzer menganalisis kondisi jangkauan end-to-end jaringan dan bukan hanya satu komponen. Untuk menentukan apakah sumber daya dapat diakses internet, Network Access Analyzer mengevaluasi gateway internet, tabel rute VPC, daftar kontrol akses jaringan (ACLs), alamat IP publik pada antarmuka jaringan elastis, dan grup keamanan. Jika salah satu komponen ini mencegah akses internet, Network Access Analyzer tidak menghasilkan temuan. Misalnya, jika instans Amazon Elastic Compute Cloud (Amazon EC2) memiliki grup keamanan terbuka yang memungkinkan lalu lintas dari 0/0 tetapi instance berada dalam subnet pribadi yang tidak dapat dirutekan dari gateway internet mana pun, maka Network Access Analyzer tidak akan menghasilkan temuan. Ini memberikan hasil kesetiaan tinggi sehingga Anda dapat mengidentifikasi sumber daya yang benar-benar dapat diakses dari internet.

Ketika Anda menjalankan Network Access Analyzer, Anda menggunakan Network Access Scopes untuk menentukan persyaratan akses jaringan Anda. Solusi ini mengidentifikasi jalur jaringan antara gateway internet dan elastic network interface. Dalam pola ini, Anda menyebarkan solusi secara terpusat Akun AWS di organisasi Anda, dikelola oleh AWS Organizations, dan menganalisis semua akun, di mana pun Wilayah AWS, di organisasi.

Solusi ini dirancang dengan mempertimbangkan hal-hal berikut:

  • AWS CloudFormation Template mengurangi upaya yang diperlukan untuk menyebarkan AWS sumber daya dalam pola ini.

  • Anda dapat menyesuaikan parameter dalam CloudFormation template dan skrip naa-script.sh pada saat penerapan untuk menyesuaikannya untuk lingkungan Anda.

  • Bash scripting secara otomatis menyediakan dan menganalisis Network Access Scopes untuk beberapa akun, secara paralel.

  • Skrip Python memproses temuan, mengekstrak data, dan kemudian mengkonsolidasikan hasilnya. Anda dapat memilih untuk meninjau laporan konsolidasi temuan Network Access Analyzer dalam format CSV atau dalam format. AWS Security Hub Contoh laporan CSV tersedia di bagian Informasi tambahan dari pola ini.

  • Anda dapat memulihkan temuan, atau Anda dapat mengecualikannya dari analisis future dengan menambahkannya ke file naa-exclusions.csv.

Prasyarat dan batasan

Prasyarat

  • Sebuah Akun AWS untuk layanan dan alat keamanan hosting, dikelola sebagai akun anggota organisasi di AWS Organizations. Dalam pola ini, akun ini disebut sebagai akun keamanan.

  • Di akun keamanan, Anda harus memiliki subnet pribadi dengan akses internet keluar. Untuk petunjuknya, lihat Membuat subnet dalam dokumentasi Amazon VPC. Anda dapat membuat akses internet dengan menggunakan gateway NAT atau titik akhir VPC antarmuka.

  • Akses ke akun AWS Organizations manajemen atau akun yang telah mendelegasikan izin administrator untuk. CloudFormation Untuk petunjuk, lihat Mendaftarkan administrator yang didelegasikan dalam CloudFormation dokumentasi.

  • Aktifkan akses tepercaya antara AWS Organizations dan CloudFormation. Untuk petunjuk, lihat Mengaktifkan akses tepercaya dengan AWS Organizations dalam CloudFormation dokumentasi.

  • Jika Anda mengunggah temuan ke Security Hub, Security Hub harus diaktifkan di akun dan Wilayah AWS tempat EC2 instans Amazon disediakan. Untuk informasi selengkapnya, lihat Menyiapkan AWS Security Hub.

Batasan

  • Jalur jaringan lintas akun saat ini tidak dianalisis karena keterbatasan fitur Network Access Analyzer.

  • Target Akun AWS harus dikelola sebagai organisasi di AWS Organizations. Jika Anda tidak menggunakan AWS Organizations, Anda dapat memperbarui CloudFormation template naa-execrole.yaml dan skrip naa-script.sh untuk lingkungan Anda. Sebagai gantinya, Anda memberikan daftar Akun AWS IDs dan Wilayah tempat Anda ingin menjalankan skrip.

  • CloudFormation Template ini dirancang untuk menyebarkan EC2 instance Amazon di subnet pribadi yang memiliki akses internet keluar. AWS Systems Manager Agen (Agen SSM) memerlukan akses keluar untuk mencapai titik akhir layanan Systems Manager, dan Anda memerlukan akses keluar untuk mengkloning repositori kode dan menginstal dependensi. Jika Anda ingin menggunakan subnet publik, Anda harus memodifikasi template naa-resources.yaml untuk mengaitkan alamat IP Elastis dengan instans Amazon. EC2

Arsitektur

Arsitektur target

Opsi 1: Akses temuan di ember Amazon S3

Diagram arsitektur untuk mengakses laporan temuan Network Access Analyzer di bucket Amazon S3

Diagram menunjukkan proses berikut:

  1. Jika Anda menjalankan solusi secara manual, pengguna mengautentikasi ke EC2 instance Amazon dengan menggunakan Session Manager dan kemudian menjalankan skrip naa-script.sh. Skrip shell ini melakukan langkah 2—7.

    Jika Anda menjalankan solusi secara otomatis, skrip naa-script.sh dimulai secara otomatis pada jadwal yang Anda tentukan dalam ekspresi cron. Skrip shell ini melakukan langkah 2—7. Untuk informasi selengkapnya, lihat Otomatisasi dan skala di akhir bagian ini.

  2. EC2 Instans Amazon mengunduh file naa-exception.csv terbaru dari bucket Amazon S3. File ini digunakan nanti dalam proses ketika skrip Python memproses pengecualian.

  3. EC2 Instans Amazon mengasumsikan peran NAAEC2Role AWS Identity and Access Management (IAM), yang memberikan izin untuk mengakses bucket Amazon S3 dan untuk mengambil peran NAAExecRole IAM di akun lain di organisasi.

  4. EC2 Instans Amazon mengasumsikan peran NAAExecRole IAM dalam akun manajemen organisasi dan menghasilkan daftar akun dalam organisasi.

  5. EC2 Instans Amazon mengasumsikan peran NAAExecRole IAM dalam akun anggota organisasi (disebut akun beban kerja dalam diagram arsitektur) dan melakukan penilaian keamanan di setiap akun. Temuan disimpan sebagai file JSON di EC2 instance Amazon.

  6. EC2 Instans Amazon menggunakan skrip Python untuk memproses file JSON, mengekstrak bidang data, dan membuat laporan CSV.

  7. EC2 Instans Amazon mengunggah file CSV ke bucket Amazon S3.

  8. EventBridge Aturan Amazon mendeteksi unggahan file dan menggunakan topik Amazon SNS untuk mengirim email yang memberi tahu pengguna bahwa laporan sudah lengkap.

  9. Pengguna mengunduh file CSV dari bucket Amazon S3. Pengguna mengimpor hasil ke template Excel dan meninjau hasilnya.

Opsi 2: Akses temuan di AWS Security Hub

Diagram arsitektur untuk mengakses temuan Network Access Analyzer melalui AWS Security Hub

Diagram menunjukkan proses berikut:

  1. Jika Anda menjalankan solusi secara manual, pengguna mengautentikasi ke EC2 instance Amazon dengan menggunakan Session Manager dan kemudian menjalankan skrip naa-script.sh. Skrip shell ini melakukan langkah 2—7.

    Jika Anda menjalankan solusi secara otomatis, skrip naa-script.sh dimulai secara otomatis pada jadwal yang Anda tentukan dalam ekspresi cron. Skrip shell ini melakukan langkah 2—7. Untuk informasi selengkapnya, lihat Otomatisasi dan skala di akhir bagian ini.

  2. EC2 Instans Amazon mengunduh file naa-exception.csv terbaru dari bucket Amazon S3. File ini digunakan nanti dalam proses ketika skrip Python memproses pengecualian.

  3. EC2 Instans Amazon mengasumsikan peran NAAEC2Role IAM, yang memberikan izin untuk mengakses bucket Amazon S3 dan untuk mengambil peran NAAExecRole IAM di akun lain di organisasi.

  4. EC2 Instans Amazon mengasumsikan peran NAAExecRole IAM dalam akun manajemen organisasi dan menghasilkan daftar akun dalam organisasi.

  5. EC2 Instans Amazon mengasumsikan peran NAAExecRole IAM dalam akun anggota organisasi (disebut akun beban kerja dalam diagram arsitektur) dan melakukan penilaian keamanan di setiap akun. Temuan disimpan sebagai file JSON di EC2 instance Amazon.

  6. EC2 Instans Amazon menggunakan skrip Python untuk memproses file JSON dan mengekstrak bidang data untuk diimpor ke Security Hub.

  7. EC2 Instans Amazon mengimpor temuan Network Access Analyzer ke Security Hub.

  8. EventBridge Aturan Amazon mendeteksi impor dan menggunakan topik Amazon SNS untuk mengirim email yang memberi tahu pengguna bahwa prosesnya selesai.

  9. Pengguna melihat temuan di Security Hub.

Otomatisasi dan skala

Anda dapat menjadwalkan solusi ini untuk menjalankan skrip naa-script.sh secara otomatis pada jadwal khusus. Untuk mengatur jadwal kustom, dalam template CloudFormation naa-resources.yaml, ubah parameter. CronScheduleExpression Misalnya, nilai default 0 0 * * 0 menjalankan solusi pada tengah malam setiap hari Minggu. Nilai 0 0 * 1-12 0 akan menjalankan solusi pada tengah malam pada hari Minggu pertama setiap bulan. Untuk informasi selengkapnya tentang penggunaan ekspresi cron, lihat Cron dan ekspresi tingkat dalam dokumentasi Systems Manager.

Jika Anda ingin sesuaikan jadwal setelah NAA-Resources tumpukan digunakan, Anda dapat mengedit jadwal cron secara manual. /etc/cron.d/naa-schedule

Alat

Layanan AWS

  • Amazon Elastic Compute Cloud (Amazon EC2) menyediakan kapasitas komputasi yang dapat diskalakan di. AWS Cloud Anda dapat meluncurkan server virtual sebanyak yang Anda butuhkan dan dengan cepat meningkatkannya ke atas atau ke bawah.

  • Amazon EventBridge adalah layanan bus acara tanpa server yang membantu Anda menghubungkan aplikasi Anda dengan data waktu nyata dari berbagai sumber. Misalnya, AWS Lambda fungsi, titik akhir pemanggilan HTTP menggunakan tujuan API, atau bus acara di tempat lain. Akun AWS

  • AWS Identity and Access Management (IAM) membantu Anda mengelola akses ke AWS sumber daya dengan aman dengan mengontrol siapa yang diautentikasi dan diberi wewenang untuk menggunakannya.

  • AWS Organizationsadalah layanan manajemen akun yang membantu Anda mengkonsolidasikan beberapa Akun AWS ke dalam organisasi yang Anda buat dan kelola secara terpusat.

  • AWS Security Hubmemberikan pandangan komprehensif tentang keadaan keamanan Anda di AWS. Ini juga membantu Anda memeriksa AWS lingkungan Anda terhadap standar industri keamanan dan praktik terbaik.

  • Amazon Simple Notification Service (Amazon SNS) membantu Anda mengoordinasikan dan mengelola pertukaran pesan antara penayang dan klien, termasuk server web dan alamat email.

  • Amazon Simple Storage Service (Amazon S3) adalah layanan penyimpanan objek berbasis cloud yang membantu Anda menyimpan, melindungi, dan mengambil sejumlah data.

  • AWS Systems Managermembantu Anda mengelola aplikasi dan infrastruktur yang berjalan di AWS Cloud. Ini menyederhanakan aplikasi dan manajemen sumber daya, mempersingkat waktu untuk mendeteksi dan menyelesaikan masalah operasional, dan membantu Anda mengelola AWS sumber daya Anda dengan aman dalam skala besar. Pola ini menggunakan Session Manager, kemampuan Systems Manager.

Repositori kode

Kode untuk pola ini tersedia di repositori Analisis Multi-Akun GitHub Network Access Analyzer. Repositori kode berisi file-file berikut:

  • naa-script.sh - Skrip bash ini digunakan untuk memulai analisis Network Access Analyzer dari beberapa Akun AWS, secara paralel. Seperti yang didefinisikan dalam CloudFormation template naa-resources.yaml, skrip ini secara otomatis diterapkan ke folder pada instance Amazon. /usr/local/naa EC2

  • naa-resources.yaml - Anda menggunakan CloudFormation template ini untuk membuat tumpukan di akun keamanan dalam organisasi. Template ini menyebarkan semua sumber daya yang diperlukan untuk akun ini untuk mendukung solusinya. Tumpukan ini harus digunakan sebelum template naa-execrole.yaml.

    catatan

    Jika tumpukan ini dihapus dan digunakan kembali, Anda harus membangun kembali kumpulan NAAExecRole tumpukan untuk membangun kembali dependensi lintas akun di antara peran IAM.

  • naa-execrole.yaml - Anda menggunakan CloudFormation templat ini untuk membuat kumpulan tumpukan yang menerapkan peran NAAExecRole IAM di semua akun di organisasi, termasuk akun manajemen.

  • naa-processfindings.py - Skrip naa-script.sh secara otomatis memanggil skrip Python ini untuk memproses output JSON Network Access Analyzer, mengecualikan sumber daya yang diketahui baik dalam file naa-exclusions.csv, dan kemudian menghasilkan file CSV dari hasil konsolidasi atau mengimpor hasilnya ke Security Hub.

Epik

TugasDeskripsiKeterampilan yang dibutuhkan

Kloning repositori kode.

  1. Di antarmuka baris perintah, ubah direktori kerja Anda ke lokasi tempat Anda ingin menyimpan file sampel.

  2. Masukkan perintah berikut:

    git clone https://github.com/aws-samples/network-access-analyzer-multi-account-analysis.git

AWS DevOps

Tinjau template.

  1. Di repositori kloning, buka file naa-resources.yaml dan naa-execrole.yaml.

  2. Tinjau sumber daya yang dibuat oleh templat ini dan sesuaikan templat sesuai kebutuhan untuk lingkungan Anda. Untuk informasi selengkapnya, lihat Bekerja dengan templat dalam CloudFormation dokumentasi.

  3. Simpan dan tutup file naa-resources.yaml dan naa-execrole.yaml.

AWS DevOps
TugasDeskripsiKeterampilan yang dibutuhkan

Menyediakan sumber daya di akun keamanan.

Menggunakan template naa-resources.yaml, Anda membuat CloudFormation tumpukan yang menyebarkan semua sumber daya yang diperlukan di akun keamanan. Untuk petunjuk, lihat Membuat tumpukan dalam CloudFormation dokumentasi. Perhatikan hal berikut saat menerapkan template ini:

  1. Pada halaman Tentukan template, pilih Template siap, lalu unggah file naa-resources.yaml.

  2. Pada halaman Tentukan detail tumpukan, di kotak Nama tumpukan, masukkanNAA-Resources.

  3. Di bagian Parameter, masukkan yang berikut ini:

    • VPCId— Pilih VPC di akun.

    • SubnetId— Pilih subnet pribadi yang memiliki akses internet.

      catatan

      Jika Anda memilih subnet publik, EC2 instans Amazon mungkin tidak diberi alamat IP publik karena CloudFormation templat, secara default, tidak menyediakan dan melampirkan alamat IP Elastis.

    • InstanceType— Tinggalkan tipe instance default.

    • InstanceImageId— Tinggalkan default.

    • KeyPairName— Jika Anda menggunakan SSH untuk akses, tentukan nama key pair yang ada.

    • PermittedSSHInbound— Jika Anda menggunakan SSH untuk akses, tentukan blok CIDR yang diizinkan. Jika Anda tidak menggunakan SSH, pertahankan nilai default. 127.0.0.1

    • BucketName— Nilai defaultnya adalahnaa-<accountID>-<region>. Anda dapat memodifikasi ini sesuai kebutuhan. Jika Anda menentukan nilai kustom, ID akun dan Wilayah secara otomatis ditambahkan ke nilai yang ditentukan.

    • EmailAddress— Tentukan alamat email untuk pemberitahuan Amazon SNS saat analisis selesai.

      catatan

      Konfigurasi langganan Amazon SNS harus dikonfirmasi sebelum menyelesaikan analisis, atau pemberitahuan tidak akan dikirim.

    • NAAEC2Role— Pertahankan default kecuali konvensi penamaan Anda memerlukan nama yang berbeda untuk peran IAM ini.

    • NAAExecRole— Pertahankan default kecuali nama lain akan digunakan saat menerapkan naa-execrole.yaml

    • Parallelism— Tentukan jumlah penilaian paralel yang akan dilakukan.

    • Regions— Tentukan yang ingin Wilayah AWS Anda analisis.

    • ScopeNameValue— Tentukan tag yang akan ditetapkan ke ruang lingkup. Tag ini digunakan untuk menentukan Network Access Scope.

    • ExclusionFile— Tentukan nama file pengecualian. Entri dalam file ini akan dikecualikan dari temuan.

    • FindingsToCSV— Tentukan apakah temuan harus output ke CSV. Nilai yang diterima adalah true danfalse.

    • FindingsToSecurityHub— Tentukan apakah temuan harus diimpor ke Security Hub. Nilai yang diterima adalah true danfalse.

    • EmailNotificationsForSecurityHub— Tentukan apakah mengimpor temuan ke Security Hub harus menghasilkan pemberitahuan email. Nilai yang diterima adalah true danfalse.

    • ScheduledAnalysis— Jika Anda ingin solusi berjalan secara otomatis sesuai jadwal, masukkantrue, lalu sesuaikan jadwal dalam CronScheduleExpression parameter. Jika Anda tidak ingin menjalankan solusi secara otomatis, masukkanfalse.

    • CronScheduleExpression— Jika Anda menjalankan solusi secara otomatis, masukkan ekspresi cron untuk menentukan jadwal. Untuk informasi selengkapnya, lihat Otomatisasi dan skala di bagian Arsitektur dari pola ini.

  1. Pada halaman Tinjauan, pilih Sumber daya berikut memerlukan kemampuan: [AWS::IAM::Role], lalu pilih Buat Tumpukan.

  2. Setelah tumpukan berhasil dibuat, di CloudFormation konsol, pada tab Output, salin Nama Sumber Daya NAAEC2Role Amazon (ARN). Anda menggunakan ARN ini nanti saat menerapkan file naa-execrole.yaml.

AWS DevOps

Menyediakan peran IAM di akun anggota.

Di akun AWS Organizations manajemen atau akun dengan izin administrator yang didelegasikan CloudFormation, gunakan templat naa-execrole.yaml untuk membuat kumpulan tumpukan. CloudFormation Kumpulan tumpukan menyebarkan peran NAAExecRole IAM di semua akun anggota di organisasi. Untuk petunjuknya, lihat Membuat kumpulan tumpukan dengan izin yang dikelola layanan dalam dokumentasi. CloudFormation Perhatikan hal berikut saat menerapkan template ini:

  1. Di bawah Siapkan template, pilih Template siap, lalu unggah file naa-execrole.yaml.

  2. Pada halaman Tentukan StackSet detail, beri nama kumpulan tumpukanNAA-ExecRole.

  3. Di bagian Parameter, masukkan yang berikut ini:

    • AuthorizedARN— Masukkan NAAEC2Role ARN, yang Anda salin saat Anda membuat tumpukan. NAA-Resources

    • NAARoleName— Pertahankan nilai default NAAExecRole kecuali nama lain digunakan saat menerapkan file naa-resources.yaml.

  4. Dalam Izin, pilih Izin yang dikelola layanan.

  5. Pada halaman Setel opsi penerapan, di bawah target Deployment, pilih Deploy to organization dan terima semua default.

    catatan

    Jika Anda ingin tumpukan disebarkan ke semua akun anggota secara bersamaan, setel akun bersamaan maksimum dan toleransi kegagalan ke nilai tinggi, seperti. 100

  6. Di bawah Wilayah Deployment, pilih Wilayah tempat EC2 instans Amazon untuk Network Access Analyzer digunakan. Karena sumber daya IAM bersifat global dan bukan Regional, ini menyebarkan peran IAM di semua Wilayah aktif.

  7. Pada halaman Tinjauan, pilih Saya mengakui yang AWS CloudFormation mungkin membuat sumber daya IAM dengan nama khusus, lalu pilih Buat. StackSet

  8. Pantau tab Stack instance (untuk status akun individual) dan tab Operasi (untuk status keseluruhan) untuk menentukan kapan penerapan selesai.

AWS DevOps

Menyediakan peran IAM dalam akun manajemen.

Menggunakan template naa-execrole.yaml, Anda membuat CloudFormation tumpukan yang menerapkan peran NAAExecRole IAM di akun manajemen organisasi. Kumpulan tumpukan yang Anda buat sebelumnya tidak menerapkan peran IAM di akun manajemen. Untuk petunjuk, lihat Membuat tumpukan dalam CloudFormation dokumentasi. Perhatikan hal berikut saat menerapkan template ini:

  1. Pada halaman Tentukan template, pilih Template siap, lalu unggah file naa-execrole.yaml.

  2. Pada halaman Tentukan detail tumpukan, di kotak Nama tumpukan, masukkanNAA-ExecRole.

  3. Di bagian Parameter, masukkan yang berikut ini:

    • AuthorizedARN— Masukkan NAAEC2Role ARN, yang Anda salin saat Anda membuat tumpukan. NAA-Resources

    • NAARoleName— Pertahankan nilai default NAAExecRole kecuali nama lain digunakan saat menerapkan file naa-resources.yaml.

  4. Pada halaman Tinjauan, pilih Sumber daya berikut memerlukan kemampuan: [AWS::IAM::Role], lalu pilih Buat Tumpukan.

AWS DevOps
TugasDeskripsiKeterampilan yang dibutuhkan

Sesuaikan skrip shell.

  1. Masuk ke akun keamanan di organisasi.

  2. Menggunakan Session Manager, sambungkan ke EC2 instans Amazon untuk Network Access Analyzer yang sebelumnya Anda sediakan. Untuk petunjuknya, lihat Connect ke instans Linux menggunakan Session Manager. Jika Anda tidak dapat terhubung, lihat bagian Pemecahan Masalah dari pola ini.

  3. Masukkan perintah berikut untuk membuka file naa-script.sh untuk diedit:

    sudo -i cd /usr/local/naa vi naa-script.sh
  4. Tinjau dan modifikasi parameter dan variabel yang dapat disesuaikan dalam skrip ini sesuai kebutuhan untuk lingkungan Anda. Untuk informasi selengkapnya tentang opsi penyesuaian, lihat komentar di awal skrip.

    Misalnya, alih-alih mendapatkan daftar semua akun anggota di organisasi dari akun manajemen, Anda dapat memodifikasi skrip untuk menentukan Akun AWS IDs atau Wilayah AWS yang ingin Anda pindai, atau Anda dapat mereferensikan file eksternal yang berisi parameter ini.

  5. Simpan dan tutup file naa-script.sh.

AWS DevOps

Analisis akun target.

  1. Masukkan perintah berikut. Ini menjalankan skrip naa-script.sh:

    sudo -i cd /usr/local/naa screen ./naa-script.sh

    Perhatikan hal berikut:

    • screenPerintah memungkinkan skrip untuk terus berjalan jika waktu koneksi habis atau Anda kehilangan akses konsol.

    • Setelah pemindaian dimulai, Anda dapat memaksa layar terlepas dengan menekan Ctrl+A D. Layar terlepas, dan Anda dapat menutup koneksi instance saat analisis berlangsung.

    • Untuk melanjutkan sesi terpisah, sambungkan ke instance, masukkan sudo -i lalu masukkanscreen -r.

  2. Pantau output untuk kesalahan apa pun untuk memastikan bahwa skrip berfungsi dengan baik. Untuk keluaran sampel, lihat bagian Informasi tambahan dari pola ini.

  3. Tunggu analisis selesai. Jika Anda mengonfigurasi notifikasi email, Anda akan menerima email saat hasilnya telah diunggah ke bucket Amazon S3 atau diimpor ke Security Hub.

AWS DevOps

Opsi 1 - Ambil hasil dari bucket Amazon S3.

  1. Unduh file CSV dari naa-<accountID>-<region> ember. Untuk petunjuk, lihat Mengunduh objek di dokumentasi Amazon S3.

  2. Hapus file CSV dari bucket Amazon S3. Ini adalah praktik terbaik untuk optimasi biaya. Untuk petunjuknya, lihat Menghapus objek dalam dokumentasi Amazon S3.

AWS DevOps

Opsi 2 — Tinjau hasilnya di Security Hub.

  1. Buka konsol Security Hub.

  2. Pilih Temuan dari panel navigasi.

  3. Tinjau temuan Network Access Analyzer. Untuk petunjuknya, lihat Melihat daftar dan detail pencarian di dokumentasi Security Hub.

    catatan

    Anda dapat mencari temuan dengan menambahkan Judul dimulai dengan filter dan masukNetwork Access Analyzer.

AWS DevOps
TugasDeskripsiKeterampilan yang dibutuhkan

Memperbaiki temuan.

Perbaiki temuan apa pun yang ingin Anda atasi. Untuk informasi selengkapnya dan praktik terbaik tentang cara membuat perimeter di sekitar AWS identitas, sumber daya, dan jaringan Anda, lihat Membangun perimeter data di AWS (AWS Whitepaper).

AWS DevOps

Kecualikan sumber daya dengan jalur jaringan yang diketahui baik.

Jika Network Access Analyzer menghasilkan temuan untuk sumber daya yang seharusnya dapat diakses dari internet, maka Anda dapat menambahkan sumber daya ini ke daftar pengecualian. Lain kali Network Access Analyzer berjalan, itu tidak akan menghasilkan temuan untuk sumber daya itu.

  1. Arahkan ke/usr/local/naa, lalu buka skrip naa-script.sh. Catat nilai S3_EXCLUSION_FILE variabel.

  2. Jika nilai S3_EXCLUSION_FILE variabelnyatrue, unduh file naa-exclusions.csv dari naa-<accountID>-<region> bucket. Untuk petunjuk, lihat Mengunduh objek di dokumentasi Amazon S3.

    Jika nilai S3_EXCLUSION_FILE variabelnyafalse, navigasikan ke /usr/local/naa dan kemudian buka file naa-exclusions.csv.

    catatan

    Jika nilai S3_EXCLUSION_FILE variabelnyafalse, skrip menggunakan versi lokal dari file pengecualian. Jika nanti Anda mengubah nilainyatrue, skrip akan menimpa versi lokal dengan file di bucket Amazon S3.

  3. Dalam file naa-exclusions.csv, masukkan sumber daya yang ingin Anda kecualikan. Masukkan satu sumber daya di setiap baris, dan gunakan format berikut.

    <resource_id>,<secgroup_id>,<sgrule_cidr>,<sgrule_portrange>,<sgrule_protocol>

    Berikut ini adalah sumber daya contoh.

    eni-1111aaaaa2222bbbb,sg-3333ccccc4444dddd,0.0.0.0/0,80 to 80,tcp

  4. Simpan dan tutup file naa-exclusions.csv.

  5. Jika Anda mengunduh file naa-exclusions.csv dari bucket Amazon S3, unggah versi baru. Untuk petunjuk, lihat Mengunggah objek dalam dokumentasi Amazon S3.

AWS DevOps
TugasDeskripsiKeterampilan yang dibutuhkan

Perbarui skrip naa-script.sh.

Jika Anda ingin memperbarui skrip naa-script.sh ke versi terbaru di repo, lakukan hal berikut:

  1. Connect ke EC2 instans Amazon dengan menggunakan Session Manager. Untuk petunjuknya, lihat Connect ke instans Linux menggunakan Session Manager.

  2. Masukkan perintah berikut:

    sudo -i
  3. Arahkan ke direktori skrip naa-script.sh:

    cd /usr/local/naa
  4. Masukkan perintah berikut untuk menyimpan skrip lokal sehingga Anda dapat menggabungkan perubahan kustom ke versi terbaru:

    git stash
  5. Masukkan perintah berikut untuk mendapatkan skrip versi terbaru:

    git pull
  6. Masukkan perintah berikut untuk menggabungkan skrip kustom dengan skrip versi terbaru:

    git stash pop
AWS DevOps
TugasDeskripsiKeterampilan yang dibutuhkan

Hapus semua sumber daya yang digunakan.

Anda dapat meninggalkan sumber daya yang digunakan di akun.

Jika Anda ingin menghentikan semua sumber daya, lakukan hal berikut:

  1. Hapus NAA-ExecRole tumpukan yang disediakan di akun manajemen. Untuk petunjuk, lihat Menghapus tumpukan dalam CloudFormation dokumentasi.

  2. Hapus kumpulan NAA-ExecRole tumpukan yang disediakan di akun manajemen organisasi atau di akun administrator yang didelegasikan. Untuk petunjuk, lihat Menghapus kumpulan tumpukan dalam CloudFormation dokumentasi.

  3. Hapus semua objek di bucket naa-<accountID>-<region> Amazon S3. Untuk petunjuknya, lihat Menghapus objek dalam dokumentasi Amazon S3.

  4. Hapus NAA-Resources tumpukan yang disediakan di akun keamanan. Untuk petunjuk, lihat Menghapus tumpukan dalam CloudFormation dokumentasi.

AWS DevOps

Pemecahan Masalah

IsuSolusi

Tidak dapat terhubung ke EC2 instans Amazon dengan menggunakan Pengelola Sesi.

Agen SSM harus dapat berkomunikasi dengan endpoint Systems Manager. Lakukan hal-hal berikut:

  1. Validasi subnet tempat EC2 instans Amazon digunakan memiliki akses internet.

  2. Nyalakan ulang EC2 instance Amazon.

Saat menerapkan set tumpukan, CloudFormation konsol meminta Anda untuk melakukannya. Enable trusted access with AWS Organizations to use service-managed permissions

Ini menunjukkan bahwa akses tepercaya belum diaktifkan antara AWS Organizations dan CloudFormation. Akses tepercaya diperlukan untuk menerapkan set tumpukan yang dikelola layanan. Pilih tombol untuk mengaktifkan akses tepercaya. Untuk informasi selengkapnya, lihat Mengaktifkan akses tepercaya dalam CloudFormation dokumentasi.

Sumber daya terkait

Informasi tambahan

Contoh keluaran konsol

Contoh berikut menunjukkan output dari menghasilkan daftar akun target dan menganalisis akun target.

[root@ip-10-10-43-82 naa]# ./naa-script.sh download: s3://naa-<account ID>-us-east-1/naa-exclusions.csv to ./naa-exclusions.csv AWS Management Account: <Management account ID> AWS Accounts being processed... <Account ID 1> <Account ID 2> <Account ID 3> Assessing AWS Account: <Account ID 1>, using Role: NAAExecRole Assessing AWS Account: <Account ID 2>, using Role: NAAExecRole Assessing AWS Account: <Account ID 3>, using Role: NAAExecRole Processing account: <Account ID 1> / Region: us-east-1 Account: <Account ID 1> / Region: us-east-1 – Detecting Network Analyzer scope... Processing account: <Account ID 2> / Region: us-east-1 Account: <Account ID 2> / Region: us-east-1 – Detecting Network Analyzer scope... Processing account: <Account ID 3> / Region: us-east-1 Account: <Account ID 3> / Region: us-east-1 – Detecting Network Analyzer scope... Account: <Account ID 1> / Region: us-east-1 – Network Access Analyzer scope detected. Account: <Account ID 1> / Region: us-east-1 – Continuing analyses with Scope ID. Accounts with many resources may take up to one hour Account: <Account ID 2> / Region: us-east-1 – Network Access Analyzer scope detected. Account: <Account ID 2> / Region: us-east-1 – Continuing analyses with Scope ID. Accounts with many resources may take up to one hour Account: <Account ID 3> / Region: us-east-1 – Network Access Analyzer scope detected. Account: <Account ID 3> / Region: us-east-1 – Continuing analyses with Scope ID. Accounts with many resources may take up to one hour

Contoh laporan CSV

Gambar-gambar berikut adalah contoh dari output CSV.

Contoh 1 dari laporan CSV yang dihasilkan oleh solusi ini.
Contoh 2 dari laporan CSV yang dihasilkan oleh solusi ini.