Jika Anda ingin menolak atau mengizinkan permintaan dari alamat IP tertentu ke instance Network Load Balancer (NLB), Anda dapat mengonfigurasi security group untuk instance NLB guna menerapkan kontrol akses. Security group NLB dapat berfungsi sebagai daftar putih atau blacklist untuk menerapkan kontrol akses detail halus.
Contoh skenario
Secara default—baik instance NLB dikaitkan dengan security group maupun tidak—port listener-nya menerima semua permintaan inbound. Menambahkan security group yang hanya berisi aturan Allow tidak mengubah perilaku ini. Untuk membatasi akses hanya ke alamat IP tertentu, tambahkan setidaknya satu aturan Deny ke dalam security group.
Security group NLB hanya berlaku untuk lalu lintas inbound. Lalu lintas outbound (tanggapan terhadap permintaan klien) tidak pernah dibatasi, sehingga tidak diperlukan aturan outbound.
Managed security group
Saat Anda membuat instance NLB, sistem secara otomatis membuat managed security group di virtual private cloud (VPC) yang sama. Security group ini bersifat read-only—Anda dapat melihat aturannya tetapi tidak dapat mengubahnya.
Managed security group berisi aturan-aturan berikut:
Priority | Action | Protocol | Source | Port range | Description |
1 | Allow | All | NLB local IP addresses | All | Mengaktifkan komunikasi antara instance NLB dan server backend-nya, serta mengizinkan traffic health check |
100 | Allow | All | 0.0.0.0/0 | All | Mengizinkan semua lalu lintas inbound secara default |
(invisible) | Deny | All | 0.0.0.0/0 | All | Aturan deny-all default yang tertanam di security group dasar dan advanced; aturan Allow dengan prioritas 100 memiliki prioritas lebih tinggi |
Jangan menambahkan aturan Deny dengan prioritas 1 yang menargetkan alamat IP lokal NLB. Aturan semacam itu bertentangan dengan managed security group dan dapat mengganggu komunikasi antara instance NLB dan server backend-nya. Untuk memeriksa alamat IP lokal instance NLB Anda, login ke NLB console.
Skenario berikut digunakan untuk menunjukkan cara kerja daftar putih dan blacklist. Untuk informasi selengkapnya, lihat Security group rules.
Blacklist menolak akses dari alamat IP tertentu.

Daftar putih hanya mengizinkan akses dari alamat IP tertentu.

Batasan
Item | Detail |
Supported security group types | Basic security group, advanced security group |
Unsupported security group type | Managed security group |
Same VPC required | Security group dan instance NLB harus berada dalam VPC yang sama |
Maximum number of security groups | Hingga 4 security group per instance NLB |
Mixed types not allowed | Semua security group yang dikaitkan dengan instance NLB harus memiliki tipe yang sama. Untuk beralih dari basic ke advanced, hapus terlebih dahulu instance NLB dari security group basic. Untuk beralih dari advanced ke basic, hapus terlebih dahulu instance NLB dari security group advanced |
Quota calculation | Slot security group yang tersedia = Kuota security group ENI untuk ECS − 1 (dicadangkan untuk managed security group) |
Security group rule quota | Slot aturan yang tersedia = Kuota aturan security group ENI untuk ECS − jumlah aturan dalam managed security group |
Legacy instances | Instance NLB yang dibuat sebelum 30 September 2022 (selama public preview) tidak dapat ditambahkan ke security group. Ganti instance tersebut atau beli instance baru untuk menggunakan fitur ini |
Untuk detail perbedaan antara security group dasar dan advanced, lihat Basic and advanced security groups.
Prasyarat
Empat instance Elastic Compute Service (ECS) telah dibuat. Untuk informasi lebih lanjut tentang cara membuat instance ECS, lihat Purchase an ECS instance.
ECS01 dan ECS02 berfungsi sebagai server backend instance NLB. Aplikasi dideploy pada ECS01 dan ECS02.
Perintah contoh berikut digunakan untuk mendeploy aplikasi uji coba pada ECS01 dan ECS02:
ECS03 dan ECS04 adalah instance yang menghadap Internet dan digunakan untuk mengakses instance NLB. Anda juga dapat menggunakan server Linux yang sudah ada untuk mengakses instance NLB. Dalam kasus ini, Anda tidak perlu membuat ECS03 dan ECS04.
Nama domain telah didaftarkan, nomor Internet content provider (ICP) telah diperoleh untuk nama domain tersebut, dan rekaman CNAME telah dibuat untuk memetakan nama domain kustom ke nama domain instance NLB Anda. Untuk informasi lebih lanjut, lihat Register a domain name, ICP filing process, dan Step 4: Create a DNS record.
Tabel berikut menjelaskan konfigurasi instance ECS yang digunakan dalam topik ini.
Instance
ECS configuration
VPC
IP address
Procedure
ECS01
Instance type: ecs.u1-c1m1.large
CPUs and memory: 2 vCPUs and 2 GiB of memory
Operating system: Alibaba Cloud Linux 3.2104 LTS 64-bit
Network type: VPC
VPC01
Private: 192.168.0.24
Public: not assigned
Instance-instance ini ditentukan sebagai server backend instance NLB.
ECS02
Private: 192.168.0.37
Public: not assigned
ECS03
VPC02
Private: 192.168.0.25
Public: 47.XX.XX.55
Instance-instance ini digunakan sebagai client untuk mengakses instance NLB.
ECS04
Private: 192.168.0.26
Public: 101.XX.XX.251
Langkah 1: Buat server group
Login ke NLB console.
Pada bilah navigasi atas, pilih wilayah tempat Anda ingin membuat server group. Pada contoh ini, China (Hangzhou) dipilih.
-
Di panel navigasi kiri, pilih NLB > Server Groups.
Pada halaman Server Group, klik Create Server Group.
Pada kotak dialog Create Server Group, atur parameter berikut lalu klik Create.
Tabel berikut menjelaskan parameter utama untuk membuat server group. Gunakan nilai default untuk parameter lainnya. Untuk informasi selengkapnya, lihat Create a server group.
Parameter
Description
Server Group Type
Tentukan jenis server group. Pada contoh ini, Server dipilih.
Server Group Name
Masukkan nama untuk server group. Pada contoh ini, RS01 digunakan.
VPC
Pilih VPC dari daftar drop-down. Pada contoh ini, VPC1 dipilih. Server group harus berada dalam VPC yang sama dengan ECS01 dan ECS02.
Backend Server Protocol
Pilih protokol backend. Pada contoh ini, TCP dipilih.
Pada kotak dialog The server group is created, klik Add Backend Server.
Pada tab Backend Servers, klik Add Backend Server.
Pada panel Add Backend Server, pilih ECS01 dan ECS02 lalu klik Next.
Tentukan port dan bobot untuk server backend lalu klik OK. Pada contoh ini, port 80 ditentukan dan bobot default digunakan.
Langkah 2: Buat instance NLB dan konfigurasi listener
Di panel navigasi kiri, pilih . Pada halaman Instances, klik Create NLB.
Pada halaman Network Load Balancer (Pay-As-You-Go), atur parameter berikut.
Tabel berikut hanya menjelaskan beberapa parameter. Untuk informasi selengkapnya tentang parameter lainnya, lihat Create an instance.
Region: Pada contoh ini, China (Hangzhou) dipilih.
Network Type: Pada contoh ini, Public dipilih.
VPC: Pada contoh ini, VPC01 dipilih.
Klik Buy Now dan selesaikan pembayaran.
Kembali ke halaman Instances, temukan instance NLB yang telah Anda buat, lalu klik ID instance NLB tersebut.
Klik tab Listener. Pada tab Listener, klik Quick Create Listener. Pada kotak dialog Quick Create Listener, atur parameter berikut untuk membuat TCP listener yang menggunakan port 80 lalu klik OK.
Parameter
Procedure
Listener Protocol
Pilih protokol listener. Pada contoh ini, TCP dipilih.
Listener Port
Pada contoh ini, port 80 digunakan.
Server Group
Pilih Server dan pilih server group dari daftar drop-down di samping Server.
Pada contoh ini, server group yang dibuat di Langkah 1: Buat server group dipilih.
Periksa aksesibilitas instance NLB saat instance NLB belum ditambahkan ke security group. Perintah
curl -s http://whatismyip.akamai.com/dapat digunakan untuk menanyakan alamat IP publik klien yang mengirim permintaan.Login ke ECS03. Jalankan perintah berikut untuk menguji apakah ECS03 dapat mengakses instance NLB:
telnet Domain name 80.Jika Anda menerima paket balasan echo, ECS03 dapat mengakses instance NLB.
[root@iZbp1esczkzr2jlz ~]# curl -s http://whatismyip.akamai.com/ 47.xxx.55[root@iZbp1exxx lz ~]# telnet xxx.com 80 Trying 47.xxx.164... Connected to xxx.com.Masuk ke ECS04. Jalankan perintah berikut untuk menguji apakah ECS04 dapat mengakses instans NLB:
telnet Domain name 80.Jika Anda menerima paket balasan echo, ECS04 dapat mengakses instance NLB.
[root@iZbp1esczkr2jlxxx ~]# curl -s http://whatismyip.akamai.com/ 101.xxx.251[root@iZbp1escxxx jl ~]# telnet nxxx xxx xxx.s.com 80 Trying 47.xxx.164... Connected to xxx.com.
Hasil menunjukkan bahwa sebelum instance NLB ditambahkan ke security group, ECS03 dan ECS04 dapat mengakses instance NLB.
Langkah 3: Buat security group
Sebelum menambahkan instance NLB Anda ke security group, Anda harus membuat security group di ECS console. Bagian ini menjelaskan cara membuat dua security group.
Security Group 1 sebagai blacklist
Tambahkan aturan Deny yang menolak akses dari alamat IP tertentu. Pada contoh ini, aturan Deny yang menolak akses dari alamat IP publik 47.XX.XX.55 milik ECS03 dibuat. Anda dapat mempertahankan aturan security group default. Tabel berikut menjelaskan konfigurasi aturan tersebut.
Policy
Priority
Protocol
Port range
Authorization object
Deny
1
All
Destination: -1/-1
Source: 47.XX.XX.55
Security Group 2 sebagai daftar putih
Tambahkan aturan Allow yang mengizinkan akses dari alamat IP tertentu dan aturan Deny yang menolak akses dari alamat IP tertentu. Pada contoh ini, aturan Allow yang mengizinkan akses dari alamat IP publik 47.XX.XX.55 milik ECS03 dan aturan Deny dibuat. Tabel berikut menjelaskan konfigurasi aturan tersebut.
Policy
Priority
Protocol
Port range
Authorization object
Yes
1
All
Destination: -1/-1
Source: 47.XX.XX.55
Deny
100
All
Destination: -1/-1
Source: 0.0.0.0/0
Login ke ECS console.
Di panel navigasi kiri, pilih .
Pada bilah navigasi atas, pilih wilayah tempat Anda ingin membuat security group. Pada contoh ini, China (Hangzhou) dipilih.
Pada halaman Security Groups, klik Create Security Group.
Pada halaman Create Security Group, atur parameter pada bagian Basic Information.
Tentukan parameter berikut. Untuk informasi selengkapnya tentang parameter lainnya, lihat Create a security group.
Network: Pada contoh ini, VPC 1 dipilih. Security group harus berada dalam VPC yang sama dengan instance NLB.
Security Group Type: Pada contoh ini, Basic Security Group dipilih.
Pada halaman Create Security Group, atur parameter pada bagian Rules.
Pada tab Inbound, klik Add Rule untuk menambahkan aturan berdasarkan konfigurasi aturan di Security Group 1 dan Security Group 2.
Klik Create Security Group.
Langkah 4: Tambahkan instance NLB ke security group dan verifikasi hasilnya
Gunakan Security Group 1 sebagai blacklist
Tambahkan instance NLB ke Security Group 1 yang dibuat di Langkah 3, lalu uji apakah aturan di Security Group 1 berlaku pada instance NLB.
Login ke NLB console.
Pada bilah navigasi atas, pilih wilayah tempat instance NLB dideploy. Pada contoh ini, China (Hangzhou) dipilih.
Di panel navigasi kiri, pilih NLB > Instances. Pada halaman yang muncul, temukan instance NLB yang dibuat di Langkah 2: Buat instance NLB dan konfigurasi listener lalu klik ID instance tersebut. Pada halaman detail instance, klik tab Security Groups.
Pada tab Security Groups, klik Create Security Group. Pada kotak dialog Add NLB Instance to Security Group, pilih security group yang dibuat di Langkah 3 lalu klik OK.
Di panel kiri, klik ID security group yang ingin Anda kelola. Anda dapat mengklik tab Inbound Policies atau Outbound Policies untuk melihat aturan security group.
Tabel berikut menjelaskan parameter yang relevan dengan topik ini.
Policy
Priority
Protocol
Port range
Authorization object
Deny
1
All
Destination: -1/-1Source: 47.XX.XX.55Uji apakah akses ke instance NLB dalam security group ditolak. Perintah
curl -s http://whatismyip.akamai.comdapat digunakan untuk menanyakan alamat IP publik klien yang mengirim permintaan.Login ke ECS03. Jalankan perintah berikut untuk menguji apakah ECS03 dapat mengakses instance NLB:
telnet Domain name 80.Jika Anda menerima paket balasan echo, ECS03 gagal mengakses instance NLB.
[root@izbp1esczkr2jlzx6 ~]# curl -s http://whatismyip.akamai.com/ 47.xxx.55 [root@izbp1esczkr2jlzx6 ~]# telnet xxx.xxx.com 80 Trying 47.xxx.189... telnet: connect to address 47.xxx.189: Connection timed outLogin ke ECS04. Jalankan perintah berikut untuk menguji apakah ECS04 dapat mengakses instance NLB:
telnet Domain name 80.Jika Anda menerima paket balasan echo, ECS04 dapat mengakses instance NLB.
[root@iZbp1esczkr2jlxxx ~]# curl -s http://whatismyip.akamai.com/ 101.xxx.251[root@iZbp1escxxx jlxxx ~]# telnet xxx.com 80 Trying 47.xxx.164... Connected to xxx.xxx.xxx.xxx.com.
Hasil menunjukkan bahwa setelah instance NLB ditambahkan ke Security Group 1, alamat IP yang ditentukan dalam aturan Deny tidak dapat lagi mengakses instance NLB. Alamat IP yang tidak ditentukan dalam aturan Deny tetap dapat mengakses instance NLB.
Gunakan Security Group 2 sebagai daftar putih
Tambahkan instance NLB ke Security Group 2 yang dibuat di Langkah 3, lalu uji apakah aturan di Security Group 2 berlaku pada instance NLB.
Login ke NLB console.
Pada bilah navigasi atas, pilih wilayah tempat instance NLB dideploy. Pada contoh ini, China (Hangzhou) dipilih.
Di panel navigasi kiri, pilih NLB > Instances. Pada halaman yang muncul, temukan instance NLB yang dibuat di Langkah 2: Buat instance NLB dan konfigurasi listener lalu klik ID instance tersebut. Pada halaman detail instance, klik tab Security Groups.
Pada tab Security Groups, klik Create Security Group. Pada kotak dialog Add NLB Instance to Security Group, pilih Security Group 2 yang dibuat di Langkah 3 lalu klik OK.
Di panel kiri, klik ID security group yang ingin Anda kelola. Anda dapat mengklik tab Inbound Policies atau Outbound Policies untuk melihat aturan security group.
Policy
Priority
Protocol
Port range
Authorization object
Yes
1
All
Destination: -1/-1
Source: 47.XX.XX.55
Deny
100
All
Destination: -1/-1
Source: 0.0.0.0/0
Uji apakah akses ke instance NLB dalam security group ditolak. Perintah
curl -s http://whatismyip.akamai.comdapat digunakan untuk menanyakan alamat IP publik klien yang mengirim permintaan.Login ke ECS03. Jalankan perintah berikut untuk menguji apakah ECS03 dapat mengakses instance NLB:
telnet Domain name 80.Jika Anda menerima paket balasan echo, ECS03 dapat mengakses instance NLB.
[root@izbp1esczkr2jlz ~]# curl -s http://whatismyip.akamai.com/ 47.xxx.55 [root@izbp1esczkr2jlz ~]# telnet xxx.com 80 Trying 47.xxx.164... Connected to xxx.com.Login ke ECS04. Jalankan perintah untuk menguji apakah ECS04 dapat mengakses instance NLB:
telnet Domain name 80.Jika Anda menerima paket balasan echo, ECS04 gagal mengakses instance NLB.
[ @iZbp1esczkzr2jlz ~]# curl -s http://whatismyip.akamai.com/ 101.xxx.251[ @iZbp1esczkzr2 ~]# telnet xxx.xxx.com 80 Trying 47.xxx.164... telnet: connect to address 47.xxx.164: Connection timed out
Hasil menunjukkan bahwa setelah instance NLB ditambahkan ke Security Group 2, hanya alamat IP yang ditentukan dalam aturan Allow Security Group 2 yang dapat mengakses instance NLB.
Referensi
Untuk informasi selengkapnya tentang cara menambahkan dan menghapus instance NLB dari security group, lihat Add an NLB instance to a security group.
Untuk informasi selengkapnya tentang cara mengaktifkan kontrol akses detail halus berdasarkan listener atau port, lihat Configure security groups for NLB instances.
Untuk informasi selengkapnya tentang security group, lihat Security group.