Untuk mengatur akses dari permintaan, Anda dapat mengonfigurasi grup keamanan untuk menerapkan kontrol akses berbasis protokol, port, dan alamat IP. Alih-alih daftar kontrol akses (ACL) yang digunakan oleh Classic Load Balancer (CLB), Network Load Balancer (NLB) menggunakan kontrol akses bergranularitas lebih halus berbasis protokol dan port. Topik ini menjelaskan cara mengonfigurasi grup keamanan untuk instance NLB guna menerapkan kontrol akses berbasis listener dan port.
Skenario
Sebelum instance NLB ditambahkan ke grup keamanan, port listener dari instance NLB menerima semua permintaan secara default.
Setelah instance NLB ditambahkan ke grup keamanan tanpa aturan Tolak apa pun, port listener dari instance NLB tetap menerima semua permintaan secara default. Jika Anda hanya ingin mengizinkan permintaan dari alamat IP tertentu ke instance NLB Anda, Anda harus membuat setidaknya satu aturan Tolak.
Jika instance NLB Anda memiliki persyaratan kontrol akses dan Anda ingin mengontrol lalu lintas masuk ke instance NLB, Anda dapat menambahkan instance NLB ke grup keamanan dan mengonfigurasi aturan grup keamanan sesuai kebutuhan bisnis Anda.
Lalu lintas keluar dari instance NLB merujuk pada respons yang dikembalikan ke permintaan pengguna. Untuk memastikan layanan Anda tidak terpengaruh, grup keamanan NLB tidak membatasi lalu lintas keluar. Anda tidak perlu mengonfigurasi aturan keluar untuk grup keamanan.
Saat instance NLB dibuat, sistem secara otomatis membuat grup keamanan terkelola di VPC tempat instance NLB berada. Grup keamanan ini dikendalikan oleh instance NLB, sehingga Anda hanya dapat melihat detailnya tanpa melakukan perubahan. Grup keamanan terkelola mencakup jenis aturan grup keamanan berikut:
Aturan dengan prioritas 1: Aturan ini mengizinkan alamat IP lokal yang digunakan oleh instance NLB untuk memungkinkan komunikasi antara instance dan server backend-nya, serta untuk pemeriksaan kesehatan.
Kami menyarankan agar tidak menambahkan aturan grup keamanan dengan prioritas 1 yang menolak alamat IP lokal instance NLB untuk menghindari konflik, karena konflik tersebut dapat mengganggu komunikasi antara instance NLB dan server backend. Anda dapat masuk ke konsol NLB untuk memeriksa alamat IP lokal instance NLB Anda.
Aturan dengan prioritas 100: Aturan ini mengizinkan semua alamat IP. Tanpa adanya aturan tolak yang dikonfigurasi, instance NLB dalam grup keamanan ini memeriksa semua permintaan menggunakan listenernya.
Aturan kontrol akses default (yang tidak terlihat) dari kelompok keamanan dasar atau kelompok keamanan tingkat lanjut menyertakan aturan yang menolak semua permintaan. Dalam hal ini, aturan izin default dalam grup keamanan terkelola untuk instance NLB berlaku.
Tabel berikut menjelaskan cara mengonfigurasi grup keamanan untuk NLB dalam skenario berbeda. Dalam contoh berikut, kontrol akses didasarkan pada protokol dan port. Listener TCP yang mendengarkan pada port 80 dan listener TCP yang mendengarkan pada port 81 digunakan.
No. | Aturan grup keamanan | Hasil yang diharapkan | Referensi |
Skenario 1: Instance NLB tidak ditambahkan ke grup keamanan. | Port listener dari NLB menerima semua permintaan secara default. | Dalam contoh ini, listener TCP yang mendengarkan pada port 80 dan listener TCP yang mendengarkan pada port 81 dibuat untuk instance NLB.
| |
Skenario 2: Instance NLB ditambahkan ke grup keamanan. | Port TCP 81 menolak permintaan. Catatan Tabel berikut hanya menjelaskan aturan grup keamanan yang relevan dengan topik ini. Aturan default lainnya tidak disertakan. |
| Langkah 4: Tambahkan instance NLB ke grup keamanan dan verifikasi hasilnya |
Skenario 3: Grup keamanan tempat instance NLB ditambahkan dimodifikasi. |
Catatan Tabel berikut hanya menjelaskan aturan grup keamanan yang relevan dengan topik ini. Aturan default lainnya tidak disertakan. |
|
Batasan
Item | Jenis grup keamanan | Deskripsi |
Grup keamanan yang didukung oleh NLB |
|
Untuk informasi lebih lanjut tentang grup keamanan dasar dan grup keamanan tingkat lanjut, lihat Grup keamanan dasar dan grup keamanan tingkat lanjut. |
Grup keamanan yang tidak didukung oleh NLB | Grup keamanan terkelola | Untuk informasi lebih lanjut tentang grup keamanan terkelola, lihat Grup keamanan terkelola. |
Prasyarat
VPC telah dibuat. VPC1 digunakan dalam contoh ini. Untuk informasi lebih lanjut, lihat Buat dan kelola VPC.
Dua instance Elastic Compute Service (ECS) diterapkan di VPC1. ECS01 dan ECS02 berfungsi sebagai server backend untuk instance NLB. Aplikasi diterapkan di ECS01 dan ECS02.
Untuk informasi lebih lanjut tentang cara membuat instance ECS, lihat Buat instance menggunakan wizard.
Blok kode berikut menunjukkan cara menerapkan aplikasi di ECS01 dan ECS02.
Nama domain telah didaftarkan, nomor penyedia konten Internet (ICP) telah diperoleh untuk nama domain tersebut, dan catatan CNAME dibuat untuk memetakan nama domain ke nama domain instance NLB Anda. Untuk informasi lebih lanjut, lihat Daftarkan nama domain generik, Proses pendaftaran ICP, dan Langkah 4: Buat catatan DNS.
Langkah 1: Buat grup server
Masuk ke konsol NLB.
Di bilah navigasi atas, pilih wilayah tempat grup server diterapkan. Dalam contoh ini, China (Hangzhou) dipilih.
Di panel navigasi sisi kiri, pilih NLB > Server Groups.
Di halaman Server Groups, klik Create Server Group.
Di kotak dialog Create Server Group, atur parameter dan klik Create.
Tabel berikut menjelaskan parameter yang relevan dengan topik ini. Anda dapat menggunakan nilai default untuk parameter lainnya. Untuk informasi lebih lanjut, lihat Buat grup server.
Parameter
Deskripsi
Server Group Type
Tentukan tipe grup server. Dalam contoh ini, Server Type dipilih.
Server Group Name
Nama grup server. Dalam contoh ini, RS01 digunakan.
VPC
Pilih VPC dari daftar drop-down. Dalam contoh ini, VPC1 dipilih.
Backend Server Protocol
Pilih protokol backend. Dalam contoh ini, TCP dipilih.
Scheduling Algorithm
Pilih algoritma penjadwalan. Dalam contoh ini, Weighted Round-robin dipilih.
Di kotak dialog Server group created., klik Add Backend Server.
Di tab Backend Servers, klik Add Backend Server.
Di panel Add Backend Server, pilih ECS01 dan ECS02 dan klik Next.
Atur port dan bobot server yang ditambahkan dan klik OK.
Langkah 2: Buat instance NLB dan konfigurasikan listener
Masuk ke konsol NLB.
Di bilah navigasi atas, pilih wilayah tempat instance NLB diterapkan. Dalam contoh ini, China (Hangzhou) dipilih.
Di halaman Instances, klik Create NLB.
Di halaman NLB (Pay-As-You-Go) International Site, konfigurasikan parameter berikut dan klik Create Now.
Bagian berikut hanya menjelaskan parameter yang relevan dengan topik ini. Untuk informasi lebih lanjut tentang parameter lainnya, lihat Buat instance NLB.
Tentukan wilayah. Dalam contoh ini, China (Hangzhou) dipilih.
Network Type: Dalam contoh ini, Internal-facing dipilih.
VPC: Dalam contoh ini, VPC1 dipilih.
Kembali ke halaman Instances, temukan instance NLBNLB yang ingin Anda kelola, lalu klik ID instance NLB.
Klik tab Listener. Di tab Listener, klik Quick Create Listener. Di kotak dialog Quick Create Listener, konfigurasikan parameter untuk membuat listener TCP yang mendengarkan pada port 80, lalu klik OK.
Parameter
Deskripsi
Listener Protocol
Pilih protokol listener. Dalam contoh ini, TCP dipilih.
Listener Port
Masukkan port listener. Dalam contoh ini, port 80 ditentukan.
Server Group
Pilih Server Type dan pilih grup server dari daftar drop-down di sebelah Server Type.
Dalam contoh ini, grup server RS01 yang dibuat di Langkah 1 dipilih.
Di tab Listener, klik Quick Create Listener. Di kotak dialog Quick Create Listener, atur parameter berikut untuk membuat listener TCP yang mendengarkan pada port 81, lalu klik OK.
Parameter
Deskripsi
Listener Protocol
Pilih protokol listener. Dalam contoh ini, TCP dipilih.
Listener Port
Masukkan port listener. Dalam contoh ini, port 81 ditentukan.
Server Group
Atur parameter Server Type dan pilih grup server berdasarkan server type yang ditentukan.
Dalam contoh ini, grup server RS01 yang dibuat di Langkah 1 dipilih.
Periksa aksesibilitas instance NLB sebelum instance NLB ditambahkan ke grup keamanan.
Masuk ke klien Linux yang memiliki akses Internet. Jika Anda menggunakan CentOS dan telnet belum diinstal, jalankan perintah
yum install -y telnetuntuk menginstal telnet.Jalankan perintah
telnet Nama domain 80untuk menguji apakah klien dapat mengakses port 80 (port TCP) dari instance NLB.Paket respons berikut menunjukkan bahwa port tersebut dapat diakses.
Mencoba *.*.*.*... Terhubung ke www.contoh.com. Karakter escape adalah '^]'.Akses nama domain dan port dari browser, seperti
http://Nama domain:80. Respons pada gambar berikut menunjukkan bahwa instance NLB dapat meneruskan permintaan ke server backend.
Jalankan perintah
telnet Nama domain 81untuk menguji apakah klien dapat mengakses port 81 (port TCP) dari instance NLB.Mencoba *.*.*.*... Terhubung ke www.contoh.com. Karakter escape adalah '^]'.Akses nama domain dan port dari browser, seperti
http://Nama domain:81. Respons pada gambar berikut menunjukkan bahwa instance NLB dapat meneruskan permintaan ke server backend.
Hasil pengujian menunjukkan bahwa sebelum instance NLB ditambahkan ke grup keamanan, klien dapat mengakses port 80 dan port 81 dari instance NLB.
Langkah 3: Buat grup keamanan
Untuk menambahkan instance NLB ke grup keamanan, Anda perlu terlebih dahulu membuat grup keamanan di konsol ECS.
Masuk ke konsol ECS.
Di panel navigasi sisi kiri, pilih .
Di bilah navigasi atas, pilih wilayah tempat Anda ingin membuat grup keamanan. Dalam contoh ini, China (Hangzhou) dipilih.
Di halaman Security Groups, klik Create Security Group.
Di halaman Create Security Group, atur parameter di bagian Basic Information.
Bagian berikut hanya menjelaskan parameter yang relevan dengan topik ini. Untuk informasi lebih lanjut tentang parameter lainnya, lihat Buat grup keamanan.
Network: Dalam contoh ini, VPC1 dipilih.
Security Group Type: Dalam contoh ini, Basic Security Group dipilih.
Di halaman Create Security Group, atur aturan di bagian Access Rule.
Di tab Inbound, klik Add Rule.
Konfigurasikan aturan grup keamanan.
Parameter
Deskripsi
Tindakan
Pilih Deny.
Prioritas
Nilai default 1 digunakan.
Jenis Protokol
Pilih Custom TCP.
Rentang Port
Masukkan nomor port 81.
Objek Otorisasi
Pilih
0.0.0.0/0.Deskripsi
Masukkan deskripsi untuk aturan grup keamanan.
Klik Create Security Group.
Langkah 4: Tambahkan instance NLB ke grup keamanan dan periksa hasilnya
Tambahkan instance NLB ke grup keamanan yang dibuat di Langkah 3 dan periksa apakah aturan grup keamanan berlaku pada instance NLB.
Masuk ke konsol NLB.
Di bilah navigasi atas, pilih wilayah tempat instance NLB diterapkan. Dalam contoh ini, China (Hangzhou) dipilih.
Di panel navigasi sisi kiri, pilih NLB > Instances. Temukan instance NLB yang dibuat di Langkah 2 dan klik ID-nya. Di halaman detail instance, klik tab Security Groups.
Di tab Security Groups, klik Create Security Group. Di kotak dialog Add NLB Instance to Security Group, pilih grup keamanan yang dibuat di Langkah 3 dan klik OK.
Di panel navigasi sisi kiri, klik ID grup keamanan yang ingin Anda kelola. Anda dapat mengklik tab Inbound Policies atau Outbound Policies untuk melihat aturan grup keamanan.
Tabel berikut hanya menjelaskan aturan masuk yang relevan dengan topik ini. Tabel berikut menjelaskan konfigurasi aturan grup keamanan yang dibuat untuk instance NLB.
Kebijakan
Prioritas
Jenis Protokol
Rentang Port
Objek Otorisasi
Izinkan
1
TCP Kustom
Tujuan: 80/80Sumber: 0.0.0.0/0Tolak
1
TCP Kustom
Tujuan: 81/81Sumber: 0.0.0.0/0Tambahkan instance NLB ke grup keamanan dan periksa hasilnya.
Masuk ke klien Linux yang memiliki akses Internet.
Jalankan perintah
telnet Nama domain 80untuk menguji apakah klien dapat mengakses port 80 (port TCP) dari instance NLB.Paket respons berikut menunjukkan bahwa port tersebut dapat diakses.
Mencoba *.*.*.*... Terhubung ke www.contoh.com. Karakter escape adalah '^]'.Akses nama domain dan port dari browser, seperti
http://Nama domain:80. Respons pada gambar berikut menunjukkan bahwa instance NLB dapat meneruskan permintaan ke server backend.
Jalankan perintah
telnet Nama domain 81untuk menguji apakah klien dapat mengakses port 81 (port TCP) dari instance NLB.Paket respons berikut menunjukkan bahwa klien tidak dapat mengakses port 81 dari instance NLB. Hasilnya menunjukkan bahwa aturan grup keamanan yang dikonfigurasikan untuk instance NLB berlaku pada instance NLB.
Mencoba *.*.*.*... telnet: gagal terhubung ke alamat *.*.*.*: Koneksi habis waktu Mencoba *.*.*.*... telnet: gagal terhubung ke alamat *.*.*.*: Koneksi habis waktuAkses nama domain dan port dari browser, seperti
http://Nama domain:81. Halaman web tidak dapat diakses. Klien tidak dapat mengakses port 81 dari instance NLB. Hasilnya menunjukkan bahwa aturan grup keamanan yang dikonfigurasikan untuk instance NLB berlaku pada instance NLB.
Langkah 5: Modifikasi aturan grup keamanan dan periksa hasilnya
Modifikasi aturan grup keamanan dan periksa apakah akses ke instance NLB diizinkan atau ditolak.
Kembali ke halaman NLB > Instances, temukan instance NLB yang dibuat di Langkah 2, lalu klik ID-nya. Di halaman instance details, klik tab Security Groups.
Klik ID grup keamanan di bagian Basic Information, atau klik ECS Console di sudut kanan atas tab Security Groups. Kemudian, Anda dapat memodifikasi aturan grup keamanan di tab Security Group Rules.
Di tab Security Group Rules, temukan aturan grup keamanan yang mengizinkan akses ke port 80. Klik Modify di kolom Actions dan atur Action menjadi Deny.
Tabel berikut hanya menjelaskan aturan grup keamanan yang relevan dengan topik ini. Tabel berikut menjelaskan aturan grup keamanan baru.
Kebijakan
Prioritas
Jenis Protokol
Rentang Port
Objek Otorisasi
Tolak
1
TCP Kustom
Tujuan: 80/80Sumber: 0.0.0.0/0Tolak
1
TCP Kustom
Tujuan: 81/81Sumber: 0.0.0.0/0Uji apakah akses ke instance NLB ditolak setelah aturan grup keamanan dimodifikasi.
Masuk ke klien Linux yang memiliki akses Internet.
Jalankan perintah
telnet Nama domain 80untuk menguji apakah klien dapat mengakses port 80 (port TCP) dari instance NLB.Paket respons berikut menunjukkan bahwa klien tidak dapat mengakses port 80 dari instance NLB. Hasilnya menunjukkan bahwa aturan grup keamanan baru berlaku pada instance NLB.
Mencoba *.*.*.*... telnet: gagal terhubung ke alamat *.*.*.*: Koneksi habis waktu Mencoba *.*.*.*... telnet: gagal terhubung ke alamat *.*.*.*: Koneksi habis waktuAkses nama domain dan port dari browser, seperti
http://Nama domain:80. Halaman web tidak dapat diakses. Klien tidak dapat mengakses port 80 dari instance NLB. Hasilnya menunjukkan bahwa aturan grup keamanan baru yang dikonfigurasikan untuk instance NLB berlaku pada instance NLB.Jalankan perintah
telnet Nama domain 81untuk menguji apakah klien dapat mengakses port 81 (port TCP) dari instance NLB.Paket respons berikut menunjukkan bahwa klien tidak dapat mengakses port 81 dari instance NLB. Hasilnya menunjukkan bahwa aturan grup keamanan baru berlaku pada instance NLB.
Mencoba *.*.*.*... telnet: gagal terhubung ke alamat *.*.*.*: Koneksi habis waktu Mencoba *.*.*.*... telnet: gagal terhubung ke alamat *.*.*.*: Koneksi habis waktuAkses nama domain dan port dari browser, seperti
http://Nama domain:81. Halaman web tidak dapat diakses. Klien tidak dapat mengakses port 81 dari instance NLB. Hasilnya menunjukkan bahwa aturan grup keamanan baru yang dikonfigurasikan untuk instance NLB berlaku pada instance NLB.
Referensi
Untuk informasi lebih lanjut tentang cara menambahkan instance NLB ke dan menghapus instance NLB dari grup keamanan, lihat Tambahkan instance NLB ke grup keamanan.
Untuk informasi lebih lanjut tentang cara mengizinkan atau menolak akses untuk alamat IP tertentu, lihat Gunakan grup keamanan sebagai daftar hitam atau daftar putih.
Untuk informasi lebih lanjut tentang grup keamanan, lihat Grup Keamanan.
LoadBalancerJoinSecurityGroup: menambahkan instance NLB ke grup keamanan.
LoadBalancerLeaveSecurityGroup: menghapus instance NLB dari grup keamanan.