Mengatasi batas aturan ACL jaringan AWS

12

Maksimal, ACL jaringan VPC dapat menerapkan 40 aturan.

Saya memiliki daftar lebih dari 50 alamat IP yang saya perlukan untuk secara eksplisit memblokir akses ke dalam sistem kami, melalui port apa pun dan protokol apa pun. Ini adalah tujuan ideal untuk ACL, tetapi batasnya menghalangi saya menyelesaikan tugas ini.

Tentu saja, saya bisa melakukan ini di IPTables pada setiap host, tetapi saya ingin memblokir semua lalu lintas ke semua komponen di VPC (ke ELB misalnya). Selain itu, jauh lebih ideal untuk mengelola aturan-aturan ini di satu tempat daripada di masing-masing dan setiap host.

Saya berharap ada beberapa cara saya tidak mengerti melakukan ini di tingkat sistem / platform. Grup keamanan diizinkan secara eksplisit, tanpa tindakan penolakan, sehingga mereka tidak akan melakukan trik.

emmdee
sumber
Gunakan perangkat lunak bawaan seperti Ansible untuk manajemen iptables dan Anda selesai. Jelas itu hanya akan berfungsi dalam kasus EC2; bukan LBs dll.
Kyslik
Ya, saya setuju melakukan iptables baik-baik saja untuk EC2 tetapi 99% lalu lintas masuk saya mengenai struktur ELB kami. Kami akan membayar banyak hit dari scammers terkenal yang harus kami tangani. Terima kasih atas masukannya
emmdee
1
Memblokir 50 IP individual sepertinya merupakan persyaratan aneh.
user253751
@ Imbib Aneh untuk Anda mungkin. Kami mendapatkan banyak scammer yang mencoba mengacaukan pelanggan kami yang sah. Kami memblokir akun mereka tetapi juga d larangan IP penuh untuk scammers Rusia / Nigeria / Cina yang jelas. Produk kami memiliki banyak interaksi pengguna, obrolan / dll - sama sekali tidak aneh untuk platform seperti itu.
emmdee
1
... dan tidak ada penipu Anda yang memiliki IP dinamis?
user253751

Jawaban:

8

Ini ide lapangan kiri .. Anda bisa "membatalkan rute" 50 IP yang diblokir, dengan menambahkan rute "rusak" ke tabel rute VPC untuk setiap IP.

Ini tidak akan mencegah lalu lintas dari IP yang mengenai infrastruktur Anda (hanya NACL dan SG yang akan mencegahnya), tetapi itu akan mencegah lalu lintas balik dari setiap membuatnya "kembali ke rumah" ..

Penguin yang funky
sumber
Saya tidak sengaja membatalkan lalu lintas yang dialihkan dengan membuat gateway transit, mengatur routing, lalu menghapus gateway transit. Mungkin ada cara yang lebih mudah.
Tim
Bukan ide yang buruk. Sangat di luar kotak berpikir terima kasih. Saya akan melakukan beberapa eksperimen. Mungkin cara yang tepat untuk pergi tanpa membayar WAF
emmdee
0

Tidak ada cara untuk meningkatkan batas pada NACL, dan sejumlah besar aturan NACL memengaruhi kinerja jaringan.

Anda mungkin memiliki masalah arsitektur di atas segalanya.

  1. Apakah instance Anda harus di subnet publik?
  2. Sudahkah Anda mengatur gateway NAT untuk membatasi lalu lintas masuk?
  3. Untuk hal-hal yang harus di subnet publik apakah Anda memiliki aturan grup keamanan masuk minimal?
  4. Apakah Anda menggunakan AWS WAF IP match untuk memblokir lalu lintas yang tidak diinginkan ke CloudFront dan memuat Balancers Anda?

Jika Anda mencapai batas aturan NACL, kemungkinan besar karena Anda tidak mengambil pendekatan yang disarankan AWS untuk arsitektur VPC dan menggunakan layanan seperti WAF (dan Shield for DDoS) untuk memblokir lalu lintas yang tidak diinginkan dan serangan terbuka.

Jika kekhawatiran Anda adalah serangan DDoS: Cara Membantu Melindungi Aplikasi Web Dinamis Terhadap Serangan DDoS dengan Menggunakan Amazon CloudFront dan Amazon Route 53

Fo.
sumber
Gateway NAT adalah untuk lalu lintas keluar dan bukan masuk.
Tim
Benar @Tim, jadi menempatkan instance Anda di subnet pribadi di belakang gateway NAT memberi mereka konektivitas keluar tanpa membukanya untuk serangan masuk, dan tidak perlu memblokir IP di NACLs
Fo.
WAF cukup mahal untuk situs web dengan lalu lintas sangat tinggi. Mencoba menghindarinya karena alasan itu. Fakta bahwa kelompok keamanan tidak dapat secara eksplisit memblokir dan ACL web memiliki batas ini sepertinya merupakan perampasan uang tunai yang besar.
emmdee
Saya kira itu tergantung pada use case, yang belum dijelaskan. Jika alasan untuk memblokir IP ini adalah mereka telah menyerang server web, masih perlu ada akses publik ke server, yang berarti penyeimbang beban atau proksi. Subnet pribadi tidak akan membantu dalam kasus itu.
Tim
Kasing penggunaan saya adalah 99% ELB yang mengambil lalu lintas masuk. Mesin virtual EC2 bersifat pribadi di belakang ELB.
emmdee
0

Ini bukan apa yang Anda minta, tetapi mungkin melakukan pekerjaan dengan cukup baik.

Siapkan CloudFront di depan infrastruktur Anda. Gunakan Ketentuan Pencocokan IP untuk secara efektif memblokir lalu lintas. CloudFront bekerja dengan konten statis dan dinamis, dan dapat mempercepat konten dinamis karena menggunakan backbone AWS daripada internet publik. Inilah yang dikatakan para dokter

Jika Anda ingin mengizinkan beberapa permintaan web dan memblokir yang lain berdasarkan alamat IP asal permintaan tersebut, buat kondisi kecocokan IP untuk alamat IP yang ingin Anda izinkan dan kondisi kecocokan IP lainnya untuk alamat IP yang ingin Anda blokir .

Saat menggunakan CloudFront, Anda harus memblokir akses langsung ke sumber daya publik apa pun menggunakan grup keamanan. The AWS Security Update Grup lambda akan menjaga kelompok keamanan Anda up to date untuk mengizinkan lalu lintas CloudFront di tetapi menolak lalu lintas lainnya. Jika Anda mengarahkan http ke https menggunakan CloudFront, Anda dapat sedikit mengubah skrip untuk mencegah http mengenai infrastruktur Anda. Anda juga dapat memasukkan daftar putih IP mana saja yang memerlukan akses admin langsung.

Sebagai alternatif, Anda dapat menggunakan CDN pihak ketiga seperti CloudFlare. CloudFlare memiliki firewall yang efektif, tetapi untuk jumlah aturan yang Anda inginkan adalah $ 200 per bulan. Itu mungkin lebih murah daripada CloudFront, bandwidth AWS cukup mahal. Paket gratis hanya memberi Anda 5 aturan firewall.

Tim
sumber
Kami sudah menggunakan cloud front untuk konten statis tetapi banyak situs adalah konten web dinamis.
emmdee
CloudFront juga dapat digunakan untuk konten dinamis aws.amazon.com/blogs/networking-and-content-delivery/…
Fo.
CloudFront dapat mempercepat konten dinamis, saya percaya itu menggunakan tulang punggung AWS daripada internet publik. CloudFront memiliki bandwidth sedikit lebih murah daripada EC2, dan saya pikir saya melihat pengumuman beberapa waktu lalu bahwa bandwidth CloudFront kembali ke EC2 gratis.
Tim