Anda menambahkan satu aturan masuk untuk kolam klien VPN, tidak menghapus apa pun, dan layanan tetap dapat dijangkau dari internet. Tidak ada yang rusak. Grup keamanan tidak memiliki penggantian, prioritas, atau penolakan akhir yang bisa dikalahkan oleh aturan sempit itu. Setiap grup yang terpasang pada instans menyumbangkan izinnya sendiri ke satu himpunan gabungan, dan aturan luas yang Anda lupakan masih ada di himpunan itu. Menjadikan instans hanya-VPN berarti mengaudit semuanya, bukan menambahkan aturan yang terdengar lebih baik ke salah satunya.

Tuliskan layanannya sebelum menulis aturannya

Mulailah dari tujuan, protokol, dan port yang tepat, serta antarmuka jaringan tempat layanan benar-benar mendengarkan. Instans dengan beberapa antarmuka atau beberapa layanan pada satu port memerlukan audit per antarmuka, karena grup yang terpasang bisa berbeda. Lalu tentukan alamat sumber mana yang benar-benar diterima antarmuka itu untuk pengguna VPN, bukan alamat yang ditampilkan klien di jendela koneksinya sendiri.

Kedua alamat itu menyimpang lebih sering daripada yang orang duga begitu penerjemahan dan perutean terlibat.

Tiga model sumber, tiga aturan berbeda

Dengan akses privat yang dirutekan, instans menerima kolam klien atau rentang korporat, tergantung bagaimana jalur dirutekan dan diterjemahkan. Dengan endpoint publik yang dicapai melalui egress korporat, instans melihat alamat NAT korporat sebagai gantinya, dan hanya jika tujuan itu benar-benar memakai jalur VPN, karena tunnelling terpisah dapat meninggalkannya di koneksi rumah. Dengan endpoint Client VPN terkelola, model asosiasi dan jaringan tujuan yang terdokumentasi berlaku, dan alamat klien berasal dari CIDR klien yang dikonfigurasi.

Yang tidak berhasil adalah merujuk gateway VPN sebagai sumber grup keamanan. Referensi grup cocok dengan antarmuka jaringan elastis di dalam VPC atau jaringan yang di-peer, dan gateway yang meneruskan paket bukan salah satunya.

Baca gabungan di semua grup yang terpasang

Buka instans, temukan antarmuka jaringannya, dan daftar setiap grup keamanan yang terpasang padanya. Untuk masing-masing, periksa setiap aturan yang mencakup protokol dan port Anda, termasuk rentang port lebar dan kedua keluarga alamat. Aturan IPv4 dari 0.0.0.0/0 tidak membebaskan Anda dari memeriksa ::/0, dan aturan yang mengizinkan semua lalu lintas menyembunyikan pertanyaan port sepenuhnya. Hanya setelah inventaris itu Anda dapat mengatakan apa izin efektif untuk layanan tersebut.

Referensi aturan AWS menjelaskan grup keamanan sebagai hanya-mengizinkan dan menyatakan bahwa aturan dari semua grup yang terpasang digabungkan, dan itulah seluruh mekanisme di balik kegagalan ini.

ACL jaringan adalah kebijakan terpisah dan tanpa status dengan entri izin dan tolak yang berurutan, dan dievaluasi pada subnet, bukan pada instans.

Jangan menjawab dengan tembok penolakan

Menambahkan penolakan NACL selebar subnet untuk meniru firewall yang biasa Anda pakai adalah alat yang salah dan berisiko. Entri NACL berurutan dan tanpa status, sehingga penolakan yang diletakkan di atas izin yang ada diam-diam memutus lalu lintas tak terkait, termasuk jalur balik bagi sesi yang ingin Anda pertahankan. Perbaiki izin grup keamanan yang luas di grup yang memilikinya, lalu biarkan ACL kecuali ACL itu benar-benar bagian dari desain.

Menghapus alamat publik dari instans adalah jaminan yang lebih kuat, dan itu juga perubahan arsitektur dengan konsekuensi administratif dan aplikasi, bukan kotak centang pada daftar izin.

Uji dengan sesi baru dan pertahankan cara untuk masuk

Sebelum menghentikan izin yang ada, pastikan jalur administrasi independen yang disetujui, karena aturan yang akan Anda hapus mungkin yang menjadi tumpuan pemulihan sesi Anda. Lalu uji koneksi diizinkan yang baru dari VPN dan koneksi ditolak yang baru dari jalur uji non-VPN yang sah. Sesi terlacak yang ada bertahan terhadap perubahan aturan dengan cara yang membuat shell terbuka lama tak berguna sebagai bukti penerimaan.

Terakhir, pertahankan otorisasi aplikasi itu sendiri. Egress korporat yang diterjemahkan dapat mewakili ratusan orang, dan penerimaan jaringan tidak pernah mengidentifikasi pengguna individu atau perangkatnya.

Artikel terkait