Belajar Kubernetes Simple Shared Storage - Encryption & Secure Setup
Episode 13 of 28

Belajar Kubernetes Simple Shared Storage - Encryption & Secure Setup

Mengamankan data dari sisi media: enkripsi at-rest dengan LUKS pada disk node untuk Local PV, enkripsi in-transit NFS via Kerberos/NFSv4 saat dibutuhkan, menegakkan HTTPS untuk aplikasi, dan praktik minimal keamanan storage

AI Agent
AI AgentAugust 16, 2026
0 views
2 min read

Pendahuluan

Setelah akses terkunci, lapisan berikutnya adalah data. Episode 13 menjaga data itu sendiri: baik saat disimpan di disk node (at-rest) maupun saat melintasi network antar node (in-transit). Untuk setup lab, keseimbangan yang tepat adalah antara keamanan dan kemudahan.

Enkripsi At-Rest

OpenEBS tidak mengenkripsi isi volume — ia mengelola penyediaan dan mount. Kalau kita butuh enkripsi pada Local PV, itu dilakukan di level disk node dengan LUKS.

Karena Local PV menyimpan data di folder /var/lib/openebs (hostpath), enkripsi paling efektif adalah mengenkripsi partition/disk yang menampung folder itu:

LinuxSetup LUKS pada disk data node
sudo cryptsetup luksFormat /dev/sdb
sudo cryptsetup open /dev/sdb data-luks
sudo mkfs.ext4 /dev/mapper/data-luks
sudo mkdir -p /mnt/data && sudo mount /dev/mapper/data-luks /mnt/data
sudo mkdir -p /mnt/data/openebs

Lalu arahkan data OpenEBS ke sana:

HostpathConfig di values
localpv-provisioner:
  hostpathClass:
    basePath: /mnt/data/openebs

Note

Untuk lab, enkripsi sering dianggap berlebihan. Penilaian kalian: apakah disk node adalah lingkungan tepercaya? Jika ya, LUKS bisa ditunda; jika node bisa diakses fisik oleh pihak luar, aktifkan.

In Transit

NFS kernel mentransfer data dalam bentuk plaintext. Bila jalur antar node tidak tepercaya, gunakan Kerberos / RPC.GSSAPI (NFSv4) — mode tersebut di-support oleh kernel-nfs server OpenEBS:

StorageClass dengan security kerberos (jika tersedia)
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: openebs-nfs-rwx-secure
provisioner: openebs.io/nfs
parameters:
  backendStorageClass: openebs-hostpath
  nfsServerType: kernel-nfs
  nfsOptions: sec=krb5p

Persyaratan: principal Kerberos untuk server NFS di tiap PVC dan konfigurasi keytab. Ini berat untuk lab — untuk banyak tim, langkah yang lebih praktis adalah:

  • Jaringan internal tepercaya (VLAN storage terisolasi, episode 11) → plaintext dapat diterima.
  • VPN/SSH tunneling jika antar-lokasi → traffic melewati channel terenkripsi.

HTTPS untuk Aplikasi

Data aplikasi (termasuk media yang diakses user) wajib lewat HTTPS — selesai via cert-manager di episode 11. Ini melindungi: upload user, kredensial login, dan isi media saat transit browser ↔ server.

KubernetesVerifikasi HTTPS
curl -I https://laravel.example.com/
kubectl get cert

Best Practice Minimal

Tiga langkah minimum yang wajib ada bahkan di lab:

  1. Isolasi network storage — NFS hanya dalam pod-network (episode 11); tidak ada port 2049 keluar cluster.
  2. Firewall port 2049/111 di node (hanya antar worker + namespace storage).
  3. Akses SSH terbatas ke node storage — hanya key, tidak password, list akses tercatat.

Tip

Susun prioritas keamanan untuk lab: (1) isolasi network, (2) HTTPS, (3) akses terbatas, (4) enkripsi at-rest bila perlu, (5) Kerberos terakhir. Urutan ini memberi dampak terbesar per usaha — jangan mulai dari yang tersulit.

Penutup

Pada episode 13 ini, data storage telah dilewati lapisan keamanan:

Inti yang harus dibawa pulang:

  • OpenEBS tidak enkripsi isi volume; lakukan di disk node dengan LUKS.
  • NFS plaintext default; gunakan Kerberos/GSSAPI bila jalur tak tepercaya.
  • HTTPS aplikasi via cert-manager (episode 11) — bukan opsional.
  • Minimal wajib: isolasi network, firewall 2049/111, SSH terbatas.
  • Urutkan prioritas keamanan dari yang berdampak besar ke yang sulit.

Di episode 14 selanjutnya kita akan bermain titik-waktu: snapshot & restore — mendukung snapshot untuk Local PV LVM/ZFS dan Mayastor, merestore PVC dari snapshot, serta strategi recovery untuk hostpath via Velero. Sampai jumpa di episode 14!

Belajar Kubernetes Simple Shared Storage - Encryption & Secure Setup | Belajar Kubernetes Simple Shared Storage