Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Mengamankan Traffic Cluster Kubernetes Dengan Kebijakan Jaringan Pod

Posted on December 7, 2022

Kubernetes Pod dapat berkomunikasi dengan bebas satu sama lain secara default. Ini menimbulkan risiko keamanan saat klaster Anda digunakan untuk beberapa aplikasi atau tim. Perilaku salah atau akses jahat di satu Pod dapat mengarahkan lalu lintas ke Pod lain di cluster Anda. Artikel ini akan mengajarkan Anda cara menghindari skenario ini dengan mengatur kebijakan jaringan. Aturan ini memungkinkan Anda mengontrol arus lalu lintas Pod-to-Pod pada tingkat alamat IP (OSI layer 3 atau 4). Anda dapat secara tepat menentukan sumber masuk dan keluar yang diizinkan untuk setiap Pod.

Membuat Kebijakan Jaringan

Kebijakan jaringan dibuat dengan menambahkan objek NetworkPolicy ke klaster Anda. Setiap kebijakan menentukan Pod yang berlaku untuknya dan satu atau lebih aturan masuk dan keluar. Berikut manifes kebijakan dasar:

apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: network-policy namespace: app spec: podSelector: matchLabels: component: database policyTypes: – Masuknya – Masuknya keluar: – dari: – podSelector : matchLabels: component: api egress: – to: – podSelector: matchLabels: component: api

Kebijakan jaringan ini berlaku untuk semua Pod dengan label component: database di namespace aplikasi. Dinyatakan bahwa lalu lintas masuk (masuk) dan keluar (keluar) hanya diperbolehkan dari dan ke Pod dengan label komponen: api. Setiap permintaan yang berasal dari Pod lain, seperti komponen: web-frontend, akan diblokir. Kebijakan

Network dapat diterapkan seperti objek lainnya dengan menggunakan Kubectl. Mereka akan langsung berlaku setelah dibuat. Anda dapat menambahkan kebijakan jaringan sebelum Anda memulai Pod yang dipilihnya.

$ kubectl apply -f policy.yaml networkingpolicy.networking.k8s.io/network-policy createdHow Network Policies Work

Kebijakan jaringan diterapkan oleh plugin jaringan aktif klaster Anda. Kebijakan Anda tidak akan berpengaruh jika plugin Anda tidak mendukung fitur tersebut. Pilihan yang paling populer seperti Calico dan Cilium dikirimkan dengan dukungan kebijakan jaringan yang diaktifkan.

Ketika kebijakan jaringan diterapkan pada sebuah Pod, plugin akan memeriksa lalu lintasnya untuk memeriksa kepatuhannya terhadap persyaratan kebijakan. Koneksi apa pun yang tidak memenuhi kriteria tidak akan diizinkan. Pod yang mencoba memulai koneksi akan menemukan host jarak jauh tidak dapat dijangkau, baik karena Pod mencoba mengakses sumber daya yang diblokir oleh aturan egress, atau karena Pod jarak jauh menolak koneksi masuk menggunakan aturan ingress.

A koneksi berhasil antara dua Pod hanya dapat dibuat ketika kebijakan jaringan pada keduanya mengizinkannya. Koneksi dapat dilarang oleh aturan jalan keluar dari Pod yang memulai, atau aturan jalan masuk pada target. Kebijakan

Network selalu bersifat aditif. Ketika beberapa kebijakan memilih Pod yang sama, daftar sumber masuk dan keluar yang diizinkan akan menjadi kombinasi dari semua kebijakan. Kebijakan Jaringan

Example

Kebijakan jaringan mendukung banyak opsi berbeda untuk menyesuaikan Pod yang mereka targetkan dan jenis koneksi yang diizinkan. Contoh berikut menampilkan beberapa kasus penggunaan umum.

Menerapkan kebijakan ke setiap Pod di namespace, hanya mengizinkan lalu lintas Ingress dari alamat IP tertentu block
apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: network-policy namespace: app spec: podSelector: {} policyTypes: – Ingress ingress: – from: – ipBlock: cidr: 172.17.0.0/16

Blok podSelector yang kosong berarti semua Pod namespace ditargetkan oleh kebijakan. Aturan ipBlock membatasi lalu lintas masuk ke Pod dengan alamat IP dalam rentang yang ditentukan. Traffic keluar tidak diblokir.

Izinkan traffic Ingress dari blok alamat IP, tetapi kecualikan beberapa IP tertentu
apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: network-policy namespace: app spec: podSelector: {} policyTypes: – Ingress masuknya: – dari: – ipBlock: cidr: 172.17.0.0/16 kecuali: – 172.17.0.1/24 – 172.17.0.2/24 – 172.17.0.3/24

ipBlock aturan mendukung bidang pengecualian untuk mengecualikan lalu lintas yang berasal dari, atau diarahkan untuk, IP tertentu.

Allow Ingress traffic dari semua Pod di namespace, tetapi hanya dari port
apiVersion tertentu: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: network-policy namespace: app spec: podSelector: {} policyTypes: – Masuknya masuk: – dari: – podSelector: {} port: – protokol: port TCP: 443

Bidang port tersedia pada aturan masuk dan keluar. Ini mendefinisikan port yang lalu lintas dapat diterima dari dan dikirim ke. Anda dapat secara opsional menentukan rentang port, seperti 3000 – 3500, dengan mengatur kolom endPort (3500) selain port (3000).

Izinkan lalu lintas dari Pod dengan label spesifik yang ada di namespace
apiVersion: networking.k8s yang berbeda. io/v1 kind: NetworkPolicy metadata: name: network-policy namespace: database spec: podSelector: {} policyTypes: – Ingress masuknya: – from: – namespaceSelector: matchLabels: aplikasi: demo-app podSelector: matchLabels: component: database

Status kebijakan bahwa setiap Pod berlabel komponen: database dapat menjangkau semua Pod dalam namespace database, jika namespace miliknya diberi label demo-app.

Anda dapat mengizinkan lalu lintas dari semua Pod dalam namespace eksternal dengan membuat aturan yang hanya menyertakan field NamespaceSelector.

Mengizinkan secara eksplisit semua lalu lintas

Terkadang Anda mungkin ingin secara eksplisit mengizinkan semua lalu lintas dari jenis tertentu dalam ruang nama. Sertakan tipe dalam kebijakan Anda tetapi berikan pemilih Pod kosong dan tanpa aturan:

apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: network-policy namespace: app spec: podSelector: {} policyTypes: – Ingress – Egress ingress: – {} egress: – {}

Semua Pod di namespace bisa berkomunikasi dengan bebas, seolah-olah tidak ada kebijakan. Tetap membuat kebijakan memungkinkan Anda menunjukkan niat Anda kepada pengguna cluster lainnya. Mereka mungkin mempertanyakan keberadaan sebuah namespace dengan jaringan tak terbatas dalam sebuah cluster yang sebaliknya telah diamankan.

Kapan Menggunakan Kebijakan Jaringan

Kebijakan jaringan harus dibuat untuk setiap namespace dan Pod di cluster Anda. Ini mengisolasi Pod Anda dengan lebih baik dan memberi Anda kendali atas arus lalu lintas.

Cobalah untuk membuat kebijakan Anda serinci mungkin. Memperluas akses terlalu banyak, seperti mengizinkan akses di antara semua Pod di namespace, membuat Anda terpapar risiko jika salah satu kontainer Anda disusupi. Pertimbangkan untuk menggunakan pemilih yang tepat untuk mengidentifikasi jarak masuk dan keluar individu untuk Pod sensitif seperti layanan autentikasi, basis data, dan penangan pembayaran.

Kubernetes tidak mengaktifkan kebijakan jaringan apa pun secara default yang dapat memungkinkan terjadinya pengawasan, bahkan jika Anda bermaksud agar semua Pod dilindungi oleh suatu kebijakan. Anda dapat mengurangi risiko ini dengan menambahkan kebijakan penampung-semua ke ruang nama Anda. Kebijakan ini memilih setiap Pod dalam namespace dan menerapkan aturan yang melarang semua komunikasi jaringan:

apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: deny-all namespace: app spec: podSelector: {} policyTypes: – Ingress – Kebijakan Egress

Network selalu dicakup ke ruang nama sehingga Anda harus membuat catch-all terpisah untuk masing-masing.

Summary

Kubernetes memungkinkan semua Pod di klaster Anda untuk berkomunikasi satu sama lain. Ini terlalu permisif untuk aplikasi dunia nyata yang berjalan di cluster multiguna. Kebijakan jaringan mengatasi masalah ini dengan menyediakan sistem seperti firewall untuk mengelola sumber masuk dan target keluar yang diterima setiap Pod. Nbsp

Merupakan praktik yang baik untuk mengonfigurasi kebijakan jaringan di semua Pod Anda. Ini akan mengamankan klaster Anda sehingga hanya arus lalu lintas yang sah yang diizinkan. Namun, kebijakan jaringan hanyalah satu bagian dari keamanan Kubernetes: mekanisme perlindungan lain seperti konteks keamanan RBAC dan Pod juga merupakan alat penting untuk memperkuat lingkungan Anda.

Disadur dari HowToGeek.com.

Terbaru

  • Belum Tahu? Ini Trik Checkout Tokopedia Bayar Pakai Dana Cicil Tanpa Ribet!
  • Benarkah Pinjol Akulaku Sebar Data Jika Gagal Bayar?
  • Paket Nyangkut di CRN Gateway J&T? Tidak Tahu Lokasinya? Ini Cara Mencarinya!
  • Apa itu Nomor 14055? Nomor Call Center Apa? Ini Penjelasan Lengkapnya
  • Apakah APK Lumbung Dana Penipu & Punya Debt Collector?
  • Ini Ukuran F4 dalam Aplikasi Canva
  • Cara Lapor SPT Tahunan Badan Perdagangan di Coretax 2026
  • Cara Dapetin Saldo DANA Sambil Tidur Lewat Volcano Crash, Terbukti Membayar!
  • Apakah Aplikasi Pinjaman TrustIQ Penipu/Resmi OJK?
  • Cara Menggabungkan Bukti Potong Suami-Istri di Coretax 2026
  • Inilah Cara Cepat Upload Foto Peserta TKA Sekaligus Biar Nggak Perlu Klik Satu Per Satu
  • Apa itu Aplikasi MOVA, Penipuan atau Skema Ponzi Berkedok Aplikasi Belanja?
  • Inilah Cara Menarik Saldo ReelFlick ke DANA
  • Inilah Cara Ternak Akun Mining Bitcoin Pakai Virtual Master Biar Nggak Berat dan Tetap Lancar
  • Cara Mencairkan Koin Melolo Tanpa Invite Kode
  • Cara Mencairkan Saldo Game Sumatra The Island ke e-Wallet
  • Apakah Aplikasi Pinjol AksesDana Penipu/Resmi OJK?
  • Apakah Aplikasi RupiahMaju Pinjol Penipu/Legal?
  • Apakah Aplikasi MBA Itu Ponzi/Penipuan Atau Tidak?
  • Cara Menghilangkan Iklan dari Aplikasi Melolo
  • Cara Atasi Saldo Melolo yang Gagal Cair ke Dompet Digital
  • Cara Mengatasi Kode Undangan/Invite Code Melolo Tidak Berhasil
  • Apakah Aplikasi FreeReels Penipuan?
  • Gini Caranya Nonton Drama Pendek FreeReels dan Dibayar
  • Inilah Panduan Lengkap Persiapan TKA Madrasah 2026 Biar Nggak Ketinggalan!
  • Ini Trik Supaya Gelembung Game Clear Blast Cepat Pecah dan Bisa Withdraw!
  • Cara Main Game Gold Combo, Sampai Cuan ke e-Wallet
  • Update YouTube 2026:Sekilas Tentang Inauthentic Content yang Makin Ketat
  • Inilah Cara Lapor SPT Tahunan di Coretax 2026 Biar Nggak Bingung!
  • Gak Perlu Root! Ini Cara Buka Folder Android/Data Tanpa ZArchiver di HP Android Modern
  • How to Secure Your Moltbot (ClawdBot): Security Hardening Fixes for Beginners
  • Workflows++: Open-source Tool to Automate Coding
  • MiroThinker-v1.5-30B Model Explained: Smart AI That Actually Thinks Before It Speaks
  • PentestAgent: Open-source AI Agent Framework for Blackbox Security Testing & Pentest
  • TastyIgniter: Open-source Online Restaurant System
  • Cara Membuat Pipeline RAG dengan Framework AutoRAG
  • Contoh Sourcecode OpenAI GPT-3.5 sampai GPT-5
  • Cara Mengubah Model Machine Learning Jadi API dengan FastAPI dan Docker
  • Cara Ubah Tumpukan Invoice Jadi Data JSON dengan LlamaExtract
  • Cara Buat Audio Super Realistis dengan Qwen3-TTS-Flash
  • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
  • Apa Itu Predator Spyware? Ini Pengertian dan Kontroversi Penghapusan Sanksinya
  • Mengenal Apa itu TONESHELL: Backdoor Berbahaya dari Kelompok Mustang Panda
  • Siapa itu Kelompok Hacker Silver Fox?
  • Apa itu CVE-2025-52691 SmarterMail? Celah Keamanan Paling Berbahaya Tahun 2025
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ

©2026 emka.web.id | Design: Newspaperly WordPress Theme