Daftarkan IP sumber ke dalam daftar putih atau blacklist dengan mengaitkan ACL ke pendengar Ingress ALB di AlbConfig Anda.
ACL hanya mendukung alamat IPv4.
Cara kerja
ACL berisi sekelompok Blok CIDR. Setelah Anda mengaitkan ACL ke pendengar melalui AlbConfig, pendengar tersebut mencocokkan IP sumber masuk terhadap entri ACL dan menerapkan salah satu aturan berikut:
-
Daftar putih: Hanya mengizinkan permintaan dari alamat IP yang sesuai dengan entri ACL.
-
Blacklist: Menolak permintaan dari alamat IP yang sesuai dengan entri ACL.
Gambar berikut menunjukkan cara kerja ACL.
Pilih metode konfigurasi
Terdapat dua metode untuk mengaitkan pendengar dengan ACL. Gunakan aclIds untuk mengelola entri ACL secara berkala atau menggunakan kembali ACL yang sudah ada.
| Item | aclIds (direkomendasikan) |
aclEntries |
|---|---|---|
| Versi controller yang didukung | ALB Ingress controller v2.7.0 dan yang lebih baru | Semua versi |
| Mengaitkan dengan ACL yang sudah ada | Ya — gunakan ID ACL secara langsung | Tidak — v2.7.0 dan yang lebih baru tidak dapat mengaitkan ACL yang sudah ada |
| Cara membuat ACL | Buat secara manual di Konsol ALB | Didefinisikan inline di AlbConfig |
| Paling cocok untuk | Perubahan entri ACL yang sering; maintenance ACL yang hemat biaya | Jumlah pendengar sedikit dengan entri ACL yang terbatas |
aclIds dan aclEntries saling eksklusif. Pada ALB Ingress controller v2.7.0 dan yang lebih baru, gunakan hanya aclIds untuk mengaitkan ACL yang sudah ada ke pendengar.
Prasyarat
Sebelum memulai:
-
AlbConfig dengan setidaknya satu pendengar telah dikonfigurasi.
-
Parameter
aclConfigtelah dikonfigurasi di tingkat pendengar di dalam AlbConfig.
Gunakan parameter aclIds (direkomendasikan)
Kaitkan ACL yang sudah ada ke pendengar menggunakan ID-nya. Setiap pendengar mendukung hingga tiga ACL.
Langkah 1: Buat ACL
-
Masuk ke Konsol ALB.
-
Di bilah navigasi atas, pilih wilayah.
-
Di panel navigasi kiri, pilih ALB > Access Control.
-
Di halaman Access Control, klik Create Access Control List.
-
Di kotak dialog Create ACL, konfigurasikan parameter dan klik OK.
Parameter Deskripsi ACL Name Nama ACL. Tag Key / Tag Value Tag untuk memfilter ACL di halaman Access Control. Resource Group Pilih resource group.
Langkah 2: Tambahkan entri ke ACL
Entri ACL menentukan alamat IP sumber atau Blok CIDR yang akan dicocokkan terhadap permintaan masuk.
-
Di halaman Access Control, temukan ACL tersebut dan klik Manage di kolom Actions.
-
Di tab Entry pada halaman detail ACL, tambahkan entri:
-
Entri tunggal: Klik Add Entry, konfigurasikan IP/CIDR Block dan Remarks, lalu klik Add.
-
Beberapa entri: Klik Add ACL Entries, masukkan Blok CIDR beserta keterangan, lalu klik Add:
-
Masukkan satu entri per baris.
-
Gunakan tanda pipa (
|) untuk memisahkan Blok IP/CIDR dari keterangan. Contoh:192.168.1.0/24|Remarks. -
Tambahkan hingga 20 entri sekaligus.
-
-
-
Setelah menambahkan entri:
-
Lihat Blok CIDR di tab Entry.
-
Hapus entri dari kolom Actions, atau pilih beberapa entri lalu klik Delete.
-
Ekspor entri dengan ikon
di pojok kanan atas. Untuk mengekspor entri tertentu, pilih entri tersebut lalu klik ikon
.
-
Langkah 3: Kaitkan ACL ke pendengar
Tambahkan spec.listeners.aclConfig ke AlbConfig Anda dan tentukan ID ACL di aclIds.
apiVersion: alibabacloud.com/v1
kind: AlbConfig
metadata:
name: default
spec:
config:
#...
listeners:
- port: #...
protocol: #...
aclConfig:
aclType: White # Mode daftar putih
aclIds:
- acl-wtg*** # Ganti dengan ID ACL Anda
#...
Parameter aclConfig:
| Parameter | Deskripsi |
|---|---|
aclType |
Jenis ACL. Nilai yang valid: Black (blacklist), White (daftar putih). |
aclIds |
ID ACL. Setiap pendengar mendukung hingga tiga ACL. |
Langkah 4: Verifikasi efek kontrol akses
Akses Layanan backend dari klien yang alamat IP publiknya sesuai dengan entri daftar putih (atau tidak sesuai dengan entri blacklist apa pun).
Contoh ini menggunakan resource dari Get started with ALB Ingress.
Jika diizinkan, klien akan mencapai Layanan backend.
Langkah 5: (Opsional) Putuskan kaitan ACL dari pendengar
Untuk memutuskan kaitan ACL, hapus ID-nya dari aclIds atau atur aclIds menjadi null.
apiVersion: alibabacloud.com/v1
kind: AlbConfig
metadata:
name: default
spec:
config:
#...
listeners:
- port: #...
protocol: #...
aclConfig:
aclEntries:
- 192.168.XX.XX/16 # 172.10.XX.XX/16 dihapus dari acl-test
aclType: White
aclName: "acl-test"
#...
Untuk menghapus ACL itu sendiri, gunakan Konsol ALB. ACL tidak dapat dihapus dari AlbConfig.
Gunakan parameter aclEntries
Definisikan entri ACL secara inline di AlbConfig. Controller akan membuat dan mengelola ACL secara otomatis.
-
Pada ALB Ingress controller v2.7.0 dan yang lebih baru,
aclNametidak lagi mengaitkan ACL yang sudah ada. Setiap pembaruanaclNameakan membuat dan mengaitkan ACL baru. -
Pada ALB Ingress controller v2.6.0 dan yang lebih lama, write-back diaktifkan secara default:
-
Jika
aclConfigkosong di AlbConfig, entri ACL dari pendengar yang dikaitkan akan ditulis kembali ke AlbConfig. -
Jika
aclConfigtelah dikonfigurasi atau entri sudah ditulis kembali, AlbConfig tetap tidak berubah. Saat resource Ingress berubah, controller akan menimpa konfigurasi ACL di konsol dengan AlbConfig — pastikan keduanya tetap selaras.
Langkah 1: Konfigurasikan entri ACL di AlbConfig
Tambahkan atau perbarui spec.listeners.aclConfig di AlbConfig. Tentukan Blok CIDR di aclEntries dan opsional nama di aclName.
Jika aclName ditentukan, ACL akan menggunakan nama tersebut. Jika aclName tidak ditentukan, nama akan dibuat otomatis sebagai acl-{albName}-{port}.
apiVersion: alibabacloud.com/v1
kind: AlbConfig
metadata:
name: default
spec:
config:
#...
listeners:
- port: #...
protocol: #...
aclConfig:
aclEntries:
- 192.168.XX.XX/16
- 172.10.XX.XX/16
aclType: White # Mode daftar putih
aclName: "acl-test" # Membuat ACL bernama acl-test
#...
Parameter aclConfig:
| Parameter | Deskripsi |
|---|---|
aclEntries |
Entri ACL. Harus berupa Blok CIDR, contohnya 127.0.0.1/32. |
aclType |
Jenis ACL. Nilai yang valid: Black (blacklist), White (daftar putih). |
aclName |
Nama ACL. Jika tidak ditentukan, akan dibuat otomatis sebagai acl-{albName}-{port}. |
Langkah 2: Verifikasi efek kontrol akses
Akses Layanan backend dari klien yang alamat IP publiknya sesuai dengan entri daftar putih (atau tidak sesuai dengan entri blacklist apa pun).
Contoh ini menggunakan resource dari Get started with ALB Ingress.
Jika diizinkan, klien akan mencapai Layanan backend.
Langkah 3: (Opsional) Hapus entri ACL
Perbarui aclEntries di AlbConfig. Controller akan menyinkronkan perubahan ke ACL yang dikaitkan.
Contoh ini menghapus 172.10.XX.XX/16 dari acl-test, sehingga hanya menyisakan 192.168.XX.XX/16. Atur aclEntries menjadi daftar kosong untuk menghapus semua entri.
apiVersion: alibabacloud.com/v1
kind: AlbConfig
metadata:
name: default
spec:
config:
#...
listeners:
- port: #...
protocol: #...
aclConfig:
aclEntries:
- 192.168.XX.XX/16 # 172.10.XX.XX/16 dihapus dari acl-test
aclType: White
aclName: "acl-test"
#...
Untuk menghapus ACL itu sendiri, gunakan Konsol ALB. ACL tidak dapat dihapus dari AlbConfig.