Security group adalah firewall virtual yang mengontrol lalu lintas inbound dan outbound untuk Instance ECS serta mengisolasi sumber daya ke dalam domain keamanan berdasarkan tingkat kepercayaan.
Cara kerja
Setiap Instance ECS harus termasuk dalam setidaknya satu security group. Aturan dari semua grup yang terkait dievaluasi berdasarkan prioritas untuk mengizinkan atau menolak lalu lintas.
Aturan berlaku secara langsung. Setiap aturan menentukan sumber (inbound) atau tujuan (outbound), range port, protokol, kebijakan (Allow/Deny), dan prioritas. Lihat Security group rules.
Aturan diterapkan pada elastic network interface (ENI) primer secara default. Untuk ENI sekunder yang terhubung ke sebuah instans dalam VPC, Anda dapat menetapkan security group berbeda guna menerapkan kontrol lalu lintas detail halus.
Batasan:
Security group bersifat regional dan spesifik untuk VPC. vSwitch dan security group harus berada dalam VPC yang sama.
Sebuah instans atau ENI harus termasuk dalam setidaknya satu security group. Lihat Batasan untuk kuota grup.
Jika tidak ada security group yang ditentukan saat peluncuran, instans akan menggunakan default security group milik VPC tersebut. Lihat Default security groups.
Pada gambar berikut, sebuah VPC berisi ECS 1 dan ECS 2. Keduanya menggunakan ENI primer dan termasuk dalam Security Group 1. Security Group 1 merupakan security group dasar dengan konektivitas intra-grup default. ECS 1 dan ECS 2 dapat berkomunikasi melalui jaringan internal secara default. Aturan kustom mengatur akses inbound dan outbound. Sebagai contoh, jika aturan inbound mengizinkan ICMP, IP mana pun dapat melakukan ping ke instans-instans tersebut. Jika tidak ada aturan outbound, seluruh lalu lintas keluar diizinkan.
Jenis security group
Basic dan advanced security group
Security group diklasifikasikan sebagai dasar atau tingkat lanjut. Keduanya gratis. Di API, parameter SecurityGroupType bernilai Basic (normal) dan Advanced (enterprise).
Basic security group: Instans berkomunikasi secara default (konektivitas intra-grup). Aturan dapat mereferensikan ID security group lain (misalnya, sg-123) sebagai sumber/tujuan. Mendukung jumlah alamat IP pribadi yang lebih sedikit.
Advanced security group: Tidak ada konektivitas intra-grup implisit. Aturan harus menggunakan alamat IP atau Blok CIDR (misalnya, 10.0.0.0/24). Mendukung jumlah alamat IP pribadi yang lebih banyak.
Security group yang terkait dengan suatu ENI harus semuanya bertipe sama. Lihat Basic and advanced security groups.
Custom dan managed security group
Security group juga diklasifikasikan sebagai custom atau managed. Keduanya dapat berupa dasar atau tingkat lanjut.
Custom security group: Dibuat dan dikelola oleh Anda melalui Konsol ECS atau API. Anda mengontrol aturan dan siklus hidupnya. Default security group merupakan custom security group. Lihat Create a security group.
Managed security group: Dibuat oleh layanan cloud dan bersifat read-only. Lihat Managed security groups.
Untuk mengidentifikasi managed security group, periksa apakah ServiceManaged mengembalikan nilai True pada API DescribeSecurityGroups, atau Konsol menampilkan banner Managed by Cloud Service.
Praktik terbaik
Ikuti panduan berikut untuk mengamankan Instance ECS Anda:
Tetapkan konvensi penamaan
Gunakan nama dan tag yang jelas untuk security group. Penandaan yang konsisten mempermudah penyaringan dan manajemen dalam skala besar.
Perlakukan security group sebagai daftar putih
Tolak semua akses secara default. Hanya tambahkan aturan yang secara eksplisit mengizinkan lalu lintas untuk port dan IP sumber tertentu.
Hak Istimewa Minimum (PoLP)
Berikan hanya akses minimum yang diperlukan. Misalnya, batasi port 22 (SSH) hanya untuk CIDR kantor Anda atau IP bastion host, bukan
0.0.0.0/0.Terapkan prinsip hak istimewa minimal
Jika instans dalam basic security group tidak memerlukan komunikasi internal, atur kebijakan intra-grup ke isolasi internal.
Jaga kesederhanaan aturan
Kelompokkan aturan berdasarkan tujuan ke dalam security group terpisah. Terlalu banyak aturan dalam satu grup meningkatkan kompleksitas manajemen. Gunakan fitur Pemeriksaan kesehatan untuk menghapus aturan yang tidak digunakan.
Isolasikan Instans berdasarkan peran aplikasi
Tempatkan instans yang menghadap publik dalam security group yang hanya membuka port 80/443. Tempatkan instans basis data (MySQL, Redis) dalam grup terpisah yang memblokir akses internet publik dan hanya menerima lalu lintas dari tier aplikasi.
Jangan pernah mengubah security group produksi secara langsung
Klon grup tersebut ke lingkungan staging, terapkan dan validasi perubahan, lalu terapkan ke produksi.