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

  • Studi Kasus Sukses Instagram Maria Wendt Dapat 12 Juta View Instagram Per Bulan
  • ZenBook S16, Vivobook Pro 15 OLED, ProArt PX13, dan ROG Zephyrus G14, Laptop Bagus dengan Layar OLED!
  • Caranya Ngebangun Website Directory dengan Traffic Tinggi dalam Seminggu!
  • Cara Mengembangkan Channel YouTube Shorts Tanpa Wajah
  • Inilah Cara Menghitung Diskon Baju Lebaran Biar Nggak Bingung Saat Belanja di Mall!
  • Cara Jitu Ngebangun Bisnis SaaS di Era AI Pakai Strategi Agentic Workflow
  • Inilah Rincian Gaji Polri Lulusan Baru 2026, Cek Perbedaan Jalur Akpol, Bintara, dan Tamtama Sebelum Daftar!
  • Inilah 5 Channel YouTube Membosankan yang Diam-diam Menghasilkan Banyak Uang
  • Inilah Cara Pakai Google Maps Offline Biar Mudik Lebaran 2026 Nggak Nyasar Meski Tanpa Sinyal!
  • Inilah Alasan Mahkamah Agung Tolak Kasasi Google, Denda Rp202,5 Miliar Resmi Menanti Akibat Praktik Monopoli
  • Inilah Cara Daftar dan Syarat SPMB SMK Boarding Jawa Tengah 2026, Sekolah Gratis Sampai Lulus!
  • Inilah Daftar Sekolah Kedinasan 2026 untuk Lulusan SMK, Bisa Kuliah Gratis dan Berpeluang Besar Langsung Jadi CPNS!
  • Inilah Pajak TER: Skema Baru PPh 21 yang Nggak Bikin Pusing, Begini Cara Hitungnya!
  • Inilah Jadwal Resmi Jam Buka Tol Jogja-Solo Segmen Prambanan-Purwomartani Saat Mudik Lebaran 2026
  • Inilah Cara Mendapatkan Witherbloom di Fisch Roblox, Rahasia Menangkap Ikan Paling Sulit di Toxic Grove!
  • Kenapa Indomart Point Bisa Kalahkan Bisnis Kafe?
  • Inilah Cara Mendapatkan Rotten Seed di Fisch Roblox, Lokasi Rahasia di Toxic Grove Buat Unlock Toxic Lotus!
  • Inilah Cara Zakat Crypto Kalian Bisa Jadi Pengurang Pajak Berdasarkan Aturan Resmi Pemerintah!
  • Inilah Perbandingan Airwallex vs Payoneer 2026: Jangan Sampai Profit Kalian Ludes Gara-Gara Biaya Admin!
  • Inilah Roadmap 7 Tahap Bangun Bisnis Digital dari Nol Biar Nggak Cuma Putar-Putar di Tempat!
  • Inilah Cara Tetap Gajian dari YouTube Meski View Masih Ratusan, Penasaran?
  • Inilah Alasan Akun TikTok Affiliate GMV 270 Juta Kena Banned Permanen!
  • Inilah Bahaya Astute Beta Server APK, Jangan Sembarang Klik Link Download FF Kipas 2026!
  • Inilah Bahaya Nonton Film di LK21 dan IndoXXI, Awas Data Pribadi dan Saldo Rekening Kalian Bisa Ludes!
  • Inilah Kronologi & Video Lengkap Kasus Sejoli Tambelangan Sampang Viral, Ternyata Gini Awal Mulanya!
  • Inilah Alasan Kenapa Koin Nego Neko Shopee Nggak Bisa Dipakai Bayar Full dan Cara Rahasia Dapetinnya!
  • Inilah Cara Menjawab Pertanyaan Apakah di Sekolahmu Sudah Ada IFP/PID dengan Benar dan Profesional
  • Inilah Fakta Isu Roblox Diblokir di Indonesia 2026, Benarkah Akan Ditutup Total?
  • Inilah Penyebab dan Cara Mengatasi FF Kipas My ID Verify UID Biar Akun Tetap Aman
  • Inilah Deretan HP RAM 8GB Harga di Bawah 2 Juta Terbaik 2026, Spek Dewa Tapi Nggak Bikin Kantong Jebol!
  • How to Fix Python Not Working in VS Code Terminal: A Troubleshooting Guide
  • Game File Verification Stuck at 0% or 99%: What is it and How to Fix the Progress Bar?
  • Why Does PowerPoint Underline Hyperlinks? Here is How to Remove Them
  • AI Bug Hunting with Semgrep
  • What is the Excel Power Query 0xc000026f Error?
  • Claude Code Tips: Don’t Overuse SKILL.md!
  • How to Planning Cinematic AI Film Production: A Step-by-Step Tutorial Using LitMedia Tools
  • 6 Innovative AI Tools for 2026: From Voice Cloning to Advanced Automation Systems
  • How to Run Hunter Alpha: The Free 1 Trillion Parameter AI Agent on OpenClaw
  • Build Your Own Self-Improving AI: A Guide to Andrej Karpathy’s Autoresearch and Claude Code
  • 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

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