Security group berfungsi sebagai firewall virtual yang mengontrol lalu lintas inbound dan outbound instans Application Load Balancer (ALB) berdasarkan aturannya. Jika Anda perlu menolak atau mengizinkan lalu lintas dari alamat IP tertentu ke instans ALB, gunakan security group untuk membuat kebijakan akses blacklist dan whitelist guna mengontrol lalu lintas secara detail.
Skenario
Topik ini menjelaskan cara menggunakan security group untuk menerapkan blacklist atau whitelist dalam dua skenario. Untuk informasi lebih lanjut tentang prioritas aturan security group, lihat Aturan security group.
Blacklist: Tolak akses dari alamat IP tertentu
Sebuah perusahaan menyebarkan layanan di ALB dalam wilayah Alibaba Cloud. Selama pemeriksaan keamanan, tim keamanan menemukan bahwa suatu alamat IP, misalnya 121.XX.XX.12, sering mengirim permintaan serangan dan mencoba menyerang layanan tersebut. Hal ini menimbulkan risiko bisnis potensial serta dapat menyebabkan insiden keamanan seperti kebocoran data.
Untuk mengatasi masalah ini, konfigurasikan aturan security group untuk instans ALB guna memblokir alamat IP tertentu (121.XX.XX.12). Tindakan ini akan memblokir permintaan serangan dan melindungi keamanan serta stabilitas layanan Anda.
Whitelist: Izinkan akses hanya dari alamat IP tertentu
Sebuah perusahaan menyebarkan layanan yang berisi informasi sensitif di ALB dalam wilayah Alibaba Cloud. Untuk membatasi akses ke instans ALB secara ketat, Anda dapat mengonfigurasi aturan security group agar hanya mengizinkan akses dari alamat IP tertentu, misalnya 121.XX.XX.12, serta menolak semua permintaan dari alamat IP lainnya.
Prasyarat
Buat Virtual Private Cloud (VPC) bernama VPC1 di wilayah China (Hangzhou). Buat vSwitch bernama VSW1 di zona ketersediaan H dan vSwitch lain bernama VSW2 di zona ketersediaan I. Untuk informasi lebih lanjut, lihat Buat VPC dan vSwitch.
Buat dua instans ECS di VSW1 dan sebarkan aplikasi di atasnya.
Untuk informasi lebih lanjut tentang cara membuat instans ECS, lihat Buat instans menggunakan wizard.
Perintah contoh berikut menunjukkan cara menyebarkan aplikasi uji di ECS01 dan ECS02:
Daftarkan nama domain dan lakukan Pendaftaran ICP (Internet Content Provider) untuk domain tersebut. Untuk informasi lebih lanjut, lihat Daftarkan nama domain di Alibaba Cloud dan Pendaftaran ICP.
Tabel berikut menjelaskan konfigurasi IP untuk client dan server dalam topik ini. Konfigurasi ini hanya bersifat referensi.
Kategori | Alamat IP | Deskripsi |
ECS01 (server) |
| Berperan sebagai server backend untuk instans ALB. |
ECS02 (server) |
| |
Client03 | Publik: 121.XX.XX.12 | Berperan sebagai client untuk mengakses instans ALB. |
Client04 | Publik: 121.XX.XX.45 |
Prosedur
Langkah 1: Buat grup server
Masuk ke Konsol ALB.
Pada bilah navigasi atas, pilih wilayah tempat grup server berada. Topik ini menggunakan China (Hangzhou) sebagai contoh.
Pada panel navigasi kiri, pilih .
Pada halaman Server Groups, klik Create Server Group.
Pada dialog Create Server Group, konfigurasikan parameter berikut dan klik Create.
Topik ini hanya menjelaskan parameter yang relevan dengan contoh ini. Anda dapat mempertahankan nilai default untuk parameter lainnya. Untuk informasi lebih lanjut, lihat Buat dan kelola grup server.
Parameter
Deskripsi
Server Group Type
Pilih tipe grup server. Topik ini menggunakan Server sebagai contoh.
Server Group Name
Masukkan nama untuk grup server.
VPC
Pilih VPC dari daftar drop-down. Topik ini menggunakan VPC1 yang telah dibuat sebagai contoh.
Backend Server Protocol
Pilih protokol backend. Topik ini menggunakan HTTP sebagai contoh.
Scheduling Algorithm
Pilih algoritma penjadwalan. Topik ini menggunakan Weighted Round-robin sebagai contoh.
Pada dialog The server group is created, klik Add Backend Server.
Pada tab Backend Servers, klik Add Backend Server.
Pada panel Add Backend Server, pilih instans ECS01 dan ECS02 yang telah dibuat, lalu klik Next.
Atur port dan bobot untuk server yang ditambahkan, lalu klik OK.
Langkah 2: Buat instans ALB dan pendengar
Masuk ke Konsol ALB.
Pada halaman Instances, klik Create ALB.
Pada halaman pembelian, lengkapi konfigurasi berikut.
Topik ini hanya menjelaskan parameter yang relevan dengan contoh ini. Pertahankan nilai default untuk parameter lainnya. Untuk informasi lebih lanjut tentang parameter tersebut, lihat Buat instans ALB.
Region: Topik ini menggunakan China (Hangzhou) sebagai contoh.
Network type: Topik ini menggunakan Public sebagai contoh.
VPC: Topik ini menggunakan VPC1 yang telah dibuat sebagai contoh.
Klik Buy Now dan ikuti petunjuk di layar untuk mengaktifkan instans.
Kembali ke halaman Instances, temukan instans ALB yang telah dibuat, lalu klik ID-nya.
Klik tab Listener, lalu klik Quick Create Listener.
Pada dialog Quick Create Listener, konfigurasikan parameter berikut untuk membuat pendengar HTTP pada port 80, lalu klik OK.
Parameter
Deskripsi
Listener Protocol
Pilih protokol untuk pendengar. Topik ini menggunakan HTTP sebagai contoh.
Listener Port
Masukkan port pendengar. Topik ini menggunakan 80 sebagai contoh.
Server Group
Di bawah Server, pilih grup server tujuan. Topik ini menggunakan grup server yang telah dibuat sebagai contoh.
Langkah 3: Konfigurasikan resolusi nama domain
Pada panel navigasi kiri, pilih .
Pada halaman Instances, salin nama DNS instans ALB yang telah dibuat.
Lakukan langkah-langkah berikut untuk menambahkan rekaman CNAME.
CatatanJika nama domain Anda tidak didaftarkan di Alibaba Cloud, Anda harus terlebih dahulu menambahkannya ke konsol DNS Alibaba Cloud sebelum dapat mengonfigurasi pengaturan DNS. Untuk informasi lebih lanjut, lihat Manajemen Domain. Jika nama domain Anda didaftarkan di Alibaba Cloud, lanjutkan ke langkah berikut.
Masuk ke Konsol DNS Alibaba Cloud.
Pada halaman Authoritative DNS Resolution, temukan nama domain target dan klik Settings di kolom Operations.
Pada halaman Settings, klik Add Record.
Pada panel Add Record, konfigurasikan informasi berikut untuk rekaman CNAME, lalu klik OK.
Parameter
Deskripsi
Record Type
Pilih CNAME dari daftar drop-down.
Hostname
Awalan untuk nama domain Anda. Topik ini menggunakan @ sebagai contoh.
CatatanSaat membuat domain root, catatan host adalah
@.Query Source
Pilih Default.
Record Value
Masukkan alamat CNAME untuk domain, yaitu nama DNS instans ALB yang telah Anda salin.
TTL
Time To Live (TTL) adalah durasi waktu rekaman DNS disimpan cache di server DNS. Topik ini menggunakan nilai default.
Langkah 4: Buat security group
Buka Konsol ECS dan buat dua security group: satu untuk kebijakan blacklist dan satu lagi untuk kebijakan whitelist, menggunakan aturan yang dijelaskan di bawah ini.
Security group 1 untuk kebijakan blacklist
Tambahkan aturan deny. Topik ini menggunakan contoh menolak akses dari alamat IP publik 121.XX.XX.12. Anda dapat mempertahankan aturan security group default.
Action
Priority
Protocol type
Port range
Authorization object
Deny
1
All
Destination: -1/-1
Source: 121.XX.XX.12
Security group 2 untuk kebijakan whitelist
Tambahkan aturan allow dan aturan deny. Topik ini menggunakan contoh mengizinkan akses dari alamat IP publik 121.XX.XX.12. Anda harus menambahkan kedua aturan tersebut.
Action
Priority
Protocol type
Port range
Authorization object
Allow
1
All
Destination: -1/-1
Source: 121.XX.XX.12
Deny
100
All
Destination: -1/-1
Source: 0.0.0.0/0
Masuk ke Konsol ECS.
Pada panel navigasi kiri, pilih .
Pada bilah navigasi atas, pilih wilayah tempat security group berada. Topik ini menggunakan China (Hangzhou) sebagai contoh.
Pada halaman Security Groups, klik Create Security Group.
Pada halaman Create Security Group, konfigurasikan parameter Basic information.
Topik ini hanya menjelaskan beberapa parameter. Untuk informasi lebih lanjut tentang parameter lainnya, lihat Buat security group.
Network: Topik ini menggunakan VPC yang telah dibuat sebagai contoh.
Security group type: Topik ini menggunakan Basic Security Group sebagai contoh.
Pada halaman Create Security Group, konfigurasikan parameter Rules.
Klik Add Rule dan buat aturan berdasarkan konfigurasi untuk Security group 1 untuk kebijakan blacklist dan Security group 2 untuk kebijakan whitelist.
Klik OK.
Langkah 5: Uji konektivitas baseline
Gunakan Client03 dan Client04 untuk menguji konektivitas ke instans ALB.
Masuk ke Client03 dan jalankan perintah
curl http://<your-domain-name>. ResponsHello World ! This is ECS01.menunjukkan bahwa client dapat mengakses instans ALB.
Masuk ke Client04 dan jalankan perintah
curl http://<your-domain-name>. ResponsHello World ! This is ECS02.menunjukkan bahwa client dapat mengakses instans ALB.
Langkah 6: Asosiasikan security group dan verifikasi
Blacklist
Asosiasikan instans ALB dengan security group 1 yang telah Anda buat di Langkah 4: Buat security group, lalu verifikasi apakah aturan dalam security group 1 berlaku.
Masuk ke Konsol ALB.
Pada bilah navigasi atas, pilih wilayah tempat instans ALB berada. Topik ini menggunakan China (Hangzhou) sebagai contoh.
Pada halaman Instances, temukan instans ALB yang telah dibuat dan klik ID-nya. Pada halaman detail instans, klik tab Security Groups.
Pada tab Security Groups, klik Create Security Group. Pada dialog Add ALB to Security Group, pilih security group 1 yang telah Anda buat di Langkah 4: Buat security group, lalu klik OK.
Pada daftar sisi kiri, klik ID security group target. Anda kemudian dapat mengklik tab Inbound atau Outbound untuk melihat aturan security group.
Tabel berikut menjelaskan aturan security group inbound yang relevan dengan topik ini.
Action
Priority
Protocol type
Port range
Authorization object
Deny
1
All
Destination: -1/-1
Source: 121.XX.XX.12
Setelah mengasosiasikan instans ALB dengan security group, uji hasil aksesnya.
Masuk ke Client03 dan jalankan perintah
curl http://<your-domain-name>. Respons timeout mengonfirmasi bahwa security group telah menolak akses dari client ini.
Masuk ke Client04 dan jalankan perintah
curl http://<your-domain-name>. ResponsHello World ! This is ECS01.menunjukkan bahwa client ini dapat mengakses instans ALB.
Hasil ini mengonfirmasi bahwa kebijakan blacklist efektif: alamat IP tertentu diblokir, sedangkan alamat IP lainnya tetap diizinkan.
Whitelist
Asosiasikan instans ALB dengan security group 2 yang telah Anda buat di Langkah 4: Buat security group, lalu verifikasi apakah aturan dalam security group 2 berlaku.
Masuk ke Konsol ALB.
Pada bilah navigasi atas, pilih wilayah tempat instans ALB berada. Topik ini menggunakan China (Hangzhou) sebagai contoh.
Pada halaman Instances, temukan instans ALB yang telah dibuat dan klik ID-nya. Pada halaman Instance Details, klik tab Security Groups.
Pada tab Security Groups, klik Create Security Group. Pada dialog Add ALB to Security Group, pilih security group 2 yang telah Anda buat di Langkah 4: Buat security group, lalu klik OK.
Pada daftar sisi kiri, klik ID security group target. Anda kemudian dapat mengklik tab Inbound atau Outbound untuk melihat aturan security group.
Tabel berikut menjelaskan aturan security group yang relevan dengan topik ini.
Action
Priority
Protocol type
Port range
Authorization object
Allow
1
All
Destination: -1/-1
Source: 121.XX.XX.12
Deny
100
All
Destination: -1/-1
Source: All IPv4 Addresses (0.0.0.0/0)
Setelah mengasosiasikan instans ALB dengan security group, uji hasil aksesnya.
Masuk ke Client03 dan jalankan perintah
curl http://<your-domain-name>. ResponsHello World ! This is ECS01.menunjukkan bahwa client ini dapat mengakses instans ALB.
Masuk ke Client04 dan jalankan perintah
curl http://<your-domain-name>. Respons timeout menunjukkan bahwa akses dari client ini ke instans ALB ditolak.
Hasil ini mengonfirmasi bahwa kebijakan whitelist efektif: hanya alamat IP yang ditentukan dalam aturan allow yang dapat mengakses instans ALB.
Referensi
Konsol
Untuk informasi lebih lanjut tentang operasi seperti mengasosiasikan atau memutuskan asosiasi instans ALB dengan security group, lihat Asosiasikan instans ALB dengan security group.
Untuk mempelajari cara mengonfigurasi security group guna mengontrol akses ke instans ALB berdasarkan pendengar atau port, lihat Gunakan security group untuk mengontrol akses ke instans ALB berdasarkan pendengar atau port.
Untuk informasi lebih lanjut tentang security group dasar dan advanced, lihat Security group dasar dan advanced.
API
LoadBalancerJoinSecurityGroup: menambahkan instans ALB ke security group.
LoadBalancerLeaveSecurityGroup: menghapus instans ALB dari security group.