Untuk mengontrol akses ke instance Application Load Balancer (ALB), konfigurasikan grup keamanan. Berbeda dengan daftar kontrol akses (ACLs), grup keamanan ALB memungkinkan kontrol akses berdasarkan protokol dan port serta mendukung alamat IPv6.
Skenario
Jika instance ALB tidak ditambahkan ke grup keamanan, port pendengar ALB secara default mengizinkan semua permintaan.
Saat instance ALB ditambahkan ke grup keamanan yang tidak memiliki aturan deny, pendengarnya secara default mengizinkan semua lalu lintas masuk. Jika Anda hanya ingin mengizinkan akses dari alamat IP tertentu, tambahkan aturan deny sebagai catch-all untuk memblokir semua lalu lintas lainnya.
Untuk mengizinkan atau menolak akses dari alamat IP tertentu ke instance ALB, lihat Konfigurasikan daftar putih atau blacklist alamat IP untuk instance ALB menggunakan grup keamanan.
Untuk mengonfigurasi kontrol akses untuk instance ALB berdasarkan protokol atau port, lihat Konfigurasikan kontrol akses tingkat pendengar atau tingkat port untuk instance ALB menggunakan grup keamanan.
Jika instance ALB Anda memerlukan kontrol akses dan Anda ingin mengontrol lalu lintas masuk instance ALB, Anda dapat menambahkan grup keamanan ke instance ALB tersebut dan mengonfigurasi aturan grup keamanan yang sesuai berdasarkan kebutuhan layanan Anda.
Lalu lintas keluar load balancer terdiri atas tanggapan terhadap permintaan klien. Untuk memastikan layanan Anda berjalan sebagaimana mestinya, grup keamanan instance ALB tidak membatasi lalu lintas keluar. Anda tidak perlu mengonfigurasi aturan keluar untuk grup keamanan tersebut.
Setelah instance ALB dibuat, sebuah grup keamanan terkelola secara otomatis dibuat di VPC tempat instance tersebut berada. Grup keamanan ini dikelola oleh instance ALB. Anda hanya memiliki izin tampil untuk grup ini. Grup keamanan terkelola untuk instance ALB mencakup dua jenis aturan grup keamanan berikut:
Aturan dengan prioritas 1: Mengizinkan lalu lintas dari alamat IP lokal instance ALB untuk komunikasi dengan server backend.
Saat menambahkan aturan grup keamanan, jangan menambahkan aturan deny dengan prioritas 1 untuk alamat IP lokal instance ALB agar tidak terjadi konflik dengan aturan grup keamanan terkelola yang dapat mengganggu komunikasi antara instance ALB dan server backend Anda. Anda dapat login ke Konsol Application Load Balancer (ALB) dan melihat alamat IP lokal pada halaman detail instance.
Aturan dengan prioritas 100: Mengizinkan lalu lintas dari semua alamat IP. Artinya, jika instance ALB ditambahkan ke grup keamanan dan tidak ada aturan deny yang dikonfigurasi, pendengar instance ALB secara default mengizinkan semua lalu lintas masuk.
Grup keamanan dasar atau grup keamanan tingkat lanjut memiliki aturan default implisit yang menolak semua lalu lintas lainnya. Dalam kasus ini, aturan izinkan default dari grup keamanan terkelola untuk instance ALB memiliki prioritas lebih tinggi.
Topik ini menggunakan contoh instance ALB yang dikonfigurasi dengan pendengar pada port 80 dan 81 untuk menjelaskan bagaimana asosiasi instance dengan grup keamanan memengaruhi kontrol akses berbasis port dalam tiga skenario.
|
Skenario |
Aturan grup keamanan |
Hasil yang diharapkan |
Tautan terkait |
|
Instance ALB tidak diasosiasikan dengan grup keamanan |
Pendengar ALB secara default mengizinkan semua lalu lintas masuk. |
|
Langkah 5: Jangan mengasosiasikan instance ALB dengan grup keamanan dan verifikasi hasilnya |
|
Instance ALB diasosiasikan dengan grup keamanan |
Tolak akses ke port 81 melalui HTTP. Catatan
Hanya aturan grup keamanan yang relevan dengan topik ini yang tercantum. Aturan default lainnya tidak disertakan. |
|
Langkah 6: Asosiasikan instance ALB dengan grup keamanan dan verifikasi hasilnya |
|
Grup keamanan untuk instance ALB dimodifikasi. |
Catatan
Hanya aturan grup keamanan yang relevan dengan topik ini yang tercantum. Aturan default lainnya tidak disertakan. |
|
Batasan
Instance ALB yang telah ditingkatkan mendukung kontrol akses menggunakan grup keamanan atau ACL. Instance ALB generasi sebelumnya hanya mendukung ACL. Untuk menggunakan grup keamanan, buat instance baru atau hubungi manajer akun Anda untuk meminta peningkatan instance yang sudah ada.
Kategori | Jenis grup keamanan | Deskripsi |
ALB-supported security groups |
|
Untuk informasi selengkapnya tentang grup keamanan dasar dan tingkat lanjut, lihat Grup keamanan dasar dan tingkat lanjut. |
ALB-unsupported security groups | managed security group | Untuk informasi selengkapnya tentang grup keamanan terkelola, lihat Grup keamanan terkelola. |
Prasyarat
-
Anda telah membuat VPC bernama VPC1. Untuk informasi selengkapnya, lihat Buat dan kelola VPC.
-
Anda telah membuat dua instance ECS, ECS01 dan ECS02, di VPC1 untuk berfungsi sebagai server backend bagi instance ALB. Anda telah men-deploy dua aplikasi berbeda pada instance tersebut.
-
Untuk informasi selengkapnya tentang pembuatan instance ECS, lihat Launch instance ECS secara kustom.
Untuk menguji kontrol akses grup keamanan ALB untuk IPv6, pastikan ECS01 dan ECS02 mendukung IPv6. Untuk informasi selengkapnya, lihat Buat VPC yang mendukung IPv6.
-
Perintah berikut menunjukkan cara men-deploy aplikasi contoh pada ECS01 dan ECS02:
-
-
Anda telah mendaftarkan nama domain dan menyelesaikan Pendaftaran ICP yang diperlukan. Untuk informasi selengkapnya, lihat Daftarkan nama domain di Alibaba Cloud dan Ikhtisar.
Prosedur
Langkah 1: Buat grup server
Login ke Konsol ALB.
-
Pada bilah navigasi atas, pilih wilayah tempat Anda ingin membuat grup server. Contoh ini menggunakan China (Hangzhou).
-
Pada panel navigasi kiri, pilih .
-
Pada halaman Server Groups, klik Create Server Group.
-
Pada dialog Create Server Group, konfigurasikan parameter berikut dan klik Create.
Contoh ini hanya mencakup parameter yang relevan. Gunakan nilai default untuk parameter lainnya. Untuk informasi selengkapnya, lihat Buat dan kelola grup server.
Parameter
Deskripsi
Server Group Type
Pilih jenis grup server. Contoh ini menggunakan Server.
Server Group Name
Masukkan nama untuk grup server.
VPC
Pilih VPC yang telah Anda buat. Contoh ini menggunakan VPC1.
Backend Server Protocol
Pilih protokol server backend. Contoh ini menggunakan HTTP.
Scheduling Algorithm
Pilih algoritma penjadwalan. Contoh ini menggunakan Weighted Round-robin.
-
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 instance ECS01 dan ECS02 Anda, lalu klik Next.
-
Konfigurasikan port dan bobot untuk server yang ditambahkan, lalu klik OK.
Langkah 2: Buat instance ALB dan pendengar
Login ke Konsol ALB.
-
Pada halaman Instances, klik Create ALB.
-
Pada halaman pembelian, konfigurasikan parameter berikut.
Topik ini hanya menjelaskan parameter yang relevan. Gunakan nilai default untuk parameter lainnya. Untuk informasi selengkapnya, lihat Buat dan kelola instance ALB.
-
Region: Untuk contoh ini, pilih China (Hangzhou).
-
Network Type: Pilih Public.
-
VPC: Pilih VPC yang telah Anda buat, yaitu VPC1 dalam contoh ini.
-
IP Version: Nilai default adalah IPv4. Untuk mendukung klien IPv4 dan IPv6, pilih Dual-stack.
-
-
Klik Buy Now dan ikuti petunjuk untuk mengaktifkan instance.
-
Kembali ke halaman Instances, temukan instance ALB yang telah Anda buat, lalu klik ID instans tersebut.
-
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 HTTP.
Listener Port
Masukkan 80.
Server Group
Pilih grup server target di bawah Server. Dalam topik ini, grup server yang sudah ada dipilih.
-
Pada tab Listener, klik Quick Create Listener lagi.
-
Pada dialog Quick Create Listener, konfigurasikan parameter berikut untuk membuat pendengar HTTP pada port 81, lalu klik OK.
Parameter
Deskripsi
Listener Protocol
Pilih HTTP.
Listener Port
Masukkan 81.
Server Group
Di bawah Server, pilih grup server target. Topik ini menggunakan grup server yang sudah ada.
Langkah 3: Konfigurasikan resolusi domain
Dalam lingkungan produksi, gunakan nama domain Anda sendiri dan arahkan ke nama DNS instance ALB dengan membuat Rekaman CNAME.
-
Pada panel navigasi kiri, pilih .
-
Pada halaman Instances, salin nama DNS instance ALB Anda.
-
Tambahkan Rekaman CNAME untuk memetakan nama domain Anda ke nama DNS instance ALB.
CatatanJika nama domain Anda tidak didaftarkan di Alibaba Cloud, Anda harus terlebih dahulu menambahkannya ke Konsol DNS Alibaba Cloud sebelum dapat mengonfigurasi rekaman DNS. Untuk informasi selengkapnya, lihat Manajemen Nama Domain. Jika nama domain Anda didaftarkan di Alibaba Cloud, Anda dapat melanjutkan ke langkah berikutnya.
-
Login ke Konsol DNS Alibaba Cloud.
-
Pada halaman Authoritative DNS Resolution, temukan nama domain Anda dan klik Settings pada kolom Operations.
-
Pada halaman Settings, klik Add Record.
-
Pada panel Add Record, konfigurasikan parameter berikut untuk membuat Rekaman CNAME, lalu klik OK.
Konfigurasi
Deskripsi
Record Type
Pilih CNAME dari daftar drop-down.
Hostname
Awalan untuk nama domain Anda. Tutorial ini menggunakan @.
CatatanUntuk menggunakan domain root, atur host ke
@.Query Source
Pilih Default.
Record Value
Tempel nama DNS instance ALB yang telah disalin.
TTL
Time to Live (TTL) adalah durasi waktu rekaman di-cache pada server DNS. Tutorial ini menggunakan nilai default.
-
Langkah 4: Buat grup keamanan
Untuk menambahkan instance ALB ke grup keamanan, Anda harus terlebih dahulu membuatnya di Konsol ECS.
-
Login ke Konsol ECS.
-
Pada panel navigasi kiri, pilih Network & Security > Security Groups.
-
Pada bilah navigasi atas, pilih wilayah untuk grup keamanan. Topik ini menggunakan China (Hangzhou) sebagai contoh.
-
Pada halaman Security Groups, klik Create Security Group.
-
Pada halaman Create Security Group, atur parameter Basic Information.
Bagian ini hanya menjelaskan parameter yang diperlukan. Untuk informasi tentang parameter lainnya, lihat Buat grup keamanan.
-
Network: Pilih VPC yang telah Anda buat.
-
Security group type: Pilih basic security group.
-
-
Selain aturan default, tambahkan aturan akses baru ke grup keamanan.
-
Pada tab Inbound, klik Add Rule dua kali.
-
Tambahkan aturan sesuai tabel berikut, lalu klik Create Security Group.
Parameter
Aturan 1
(Opsional) Aturan 2
Action
Pilih Deny.
Pilih Allow.
Priority
Gunakan nilai default 1.
Protocol type
Pilih Custom TCP.
CatatanJika Anda mengonfigurasi aturan grup keamanan untuk pendengar QUIC, atur Protocol type ke Custom UDP.
Port range
Masukkan 81.
Pilih HTTP(80).
Authorization object
Pilih
All IPv4 Addresses (0.0.0.0/0)danAll IPv6 Addresses (::/0).Pilih
All IPv6 Addresses (::/0).Description
Masukkan deskripsi untuk aturan grup keamanan.
-
Langkah 5: Verifikasi konektivitas tanpa grup keamanan
Uji konektivitas antara klien dengan ECS01 dan ECS02.
Anda dapat menggunakan klien apa pun yang memiliki akses internet. Untuk menguji kontrol akses IPv6 dengan grup keamanan ALB, pastikan klien Anda mendukung komunikasi internet IPv6.
-
Buka jendela command-line dan jalankan perintah
curl -4 http://<custom_domain_name>:80. Seperti yang ditunjukkan pada gambar berikut, output menunjukkan bahwa klien IPv4 dapat mengakses port 80 melalui protokol HTTP melalui ALB.
-
Jalankan
curl -4 http://<custom_domain_name>:81. Output yang ditunjukkan pada gambar berikut mengonfirmasi bahwa klien IPv4 dapat mengakses port 81 melalui protokol HTTP melalui ALB.
-
(Opsional) Jalankan perintah
curl -6 http://<custom domain name>:80, dan output yang ditunjukkan pada gambar berikut menunjukkan bahwa klien IPv6 dapat mengakses port 80 melalui protokol HTTP melalui ALB.
-
(Opsional) Jalankan perintah
curl -6 http://<custom domain name>:81. Output yang diharapkan ditunjukkan pada gambar berikut, yang menunjukkan bahwa klien IPv6 dapat mengakses port 81 melalui protokol HTTP melalui ALB.
Langkah 6: Tambahkan instance ALB ke grup keamanan dan verifikasi
Tambahkan instance ALB ke grup keamanan dan verifikasi bahwa aturannya mengontrol akses port dengan benar.
Login ke Konsol ALB.
-
Pada halaman Instances, temukan instance ALB target dan klik ID instans-nya. Pada halaman detail instance, klik tab Security Groups.
-
Pada tab Security Groups, klik Create Security Group. Pada dialog Add ALB to Security Group, pilih grup keamanan yang telah Anda buat di Langkah 4: Buat grup keamanan, lalu klik OK.
-
Pada panel kiri, klik ID grup keamanan target. Klik tab Inbound Policies atau Outbound Policies untuk melihat aturan grup keamanan.
Aturan grup keamanan masuk yang relevan untuk instance ALB sekarang sebagai berikut:
Policy
Priority
Protocol
Destination
Source
Allow
1
Custom TCP
Destination: 80/80Source: All IPv4 (0.0.0.0/0)Allow
1
Custom TCP
Destination: 80/80Source: All IPv6 (::/0)Deny
1
Custom TCP
Destination: 81/81Source: All IPv4 (0.0.0.0/0)Deny
1
Custom TCP
Destination: 81/81Source: All IPv6 (::/0) -
Setelah menambahkan instance ALB ke grup keamanan, verifikasi akses.
-
Pada klien Anda, jalankan perintah
curl -4 http://<custom domain name>:80. Output yang ditunjukkan di bawah ini mengonfirmasi bahwa klien IPv4 dapat mengakses instance ALB melalui HTTP pada port 80.
-
(Opsional) Jalankan perintah
curl -6 http://<custom domain name>:80. Output yang ditunjukkan di bawah ini mengonfirmasi bahwa klien IPv6 dapat mengakses instance ALB melalui HTTP pada port 80.
-
Jalankan perintah
curl -4 http://<custom domain name>:81. Koneksi gagal, seperti yang ditunjukkan di bawah ini. Hal ini memverifikasi bahwa aturan grup keamanan yang membatasi akses ke port 81 berfungsi.
-
(Opsional) Jalankan perintah
curl -6 http://<custom domain name>:81. Koneksi gagal, seperti yang ditunjukkan di bawah ini. Hal ini memverifikasi bahwa aturan grup keamanan yang membatasi akses ke port 81 berfungsi.
-
Langkah 7: Modifikasi dan verifikasi grup keamanan
Modifikasi aturan grup keamanan dan verifikasi pengaruhnya terhadap akses port untuk instance ALB.
-
Kembali ke halaman Instances ALB, temukan instance ALB target, dan klik ID instans-nya. Pada tab Instance Details, klik tab Security Groups.
-
Pada bagian Basic Information, klik ID grup keamanan. Atau, pada pojok kanan atas tab Security Groups, klik ECS Console untuk membuka halaman Security Group Rules.
-
Pada halaman Security Group Rules, temukan aturan yang mengizinkan akses ke port TCP 80. Pada kolom Actions, klik Edit. Ubah Policy menjadi Deny dan klik Save.
Tabel berikut menunjukkan aturan grup keamanan yang telah dimodifikasi.
Policy
Priority
Protocol
Destination
Source
Deny
1
Custom TCP
Destination: 80/80Source: All IPv4 (0.0.0.0/0)Deny
1
Custom TCP
Destination: 80/80Source: All IPv6 (::/0)Deny
1
Custom TCP
Destination: 81/81Source: All IPv4 (0.0.0.0/0)Deny
1
Custom TCP
Destination: 81/81Source: All IPv6 (::/0) -
Setelah memodifikasi aturan grup keamanan untuk instance ALB, uji akses.
-
Pada antarmuka baris perintah (CLI) klien, jalankan perintah
curl -4 http://<custom domain name>:80. Kegagalan koneksi, seperti yang ditunjukkan pada gambar berikut, menunjukkan bahwa grup keamanan memblokir akses dari klien IPv4 ke port 80.
-
(Opsional) Jalankan perintah
curl -6 http://<custom domain name>:80. Kegagalan koneksi, seperti yang ditunjukkan pada gambar berikut, menunjukkan bahwa grup keamanan memblokir akses dari klien IPv6 ke port 80.
-
Jalankan perintah
curl -4 http://<custom domain name>:81. Kegagalan koneksi, seperti yang ditunjukkan pada gambar berikut, menunjukkan bahwa grup keamanan memblokir akses dari klien IPv4 ke port 81.
-
(Opsional) Jalankan perintah
curl -6 http://<custom domain name>:81. Kegagalan koneksi, seperti yang ditunjukkan pada gambar berikut, menunjukkan bahwa grup keamanan memblokir akses dari klien IPv6 ke port 81.
-
Referensi
Konsol
-
Untuk mengasosiasikan grup keamanan dengan atau membatalkan asosiasi grup keamanan dari instance ALB, lihat Asosiasikan grup keamanan dengan instance ALB.
-
Untuk mengizinkan atau menolak akses ke instance ALB dari alamat IP tertentu, lihat Gunakan grup keamanan untuk menerapkan kebijakan akses daftar putih/blacklist untuk instance ALB.
-
Untuk informasi selengkapnya tentang grup keamanan dasar dan grup keamanan enterprise, lihat Grup keamanan dasar dan grup keamanan enterprise.
API
-
LoadBalancerJoinSecurityGroup: Mengasosiasikan grup keamanan dengan instance Application Load Balancer (ALB).
-
LoadBalancerLeaveSecurityGroup: Membatalkan asosiasi grup keamanan dari instance ALB.