Episode ini mengamankan jaringan MicroCloud: memisahkan underlay (storage dan OVN) dari akses client, menerapkan VLAN dan firewall per segmen, serta mengamankan akses admin dengan TLS — lxc remote add + certificate untuk koneksi terenkripsi ke cluster LXD.

Di episode 13 keamanan datang dari model snap. Sekarang kita mengamankan jaringan — lapisan yang menghubungkan cloud kalian ke dunia luar. Di episode 14 kita membahas isolasi network: memisahkan underlay storage/OVN dari akses client, VLAN dan firewall per segmen, lalu mengamankan akses admin lewat TLS dan certificate dengan lxc remote add.
Analogi: gedung cloud kalian (cluster) punya banyak pintu. Storage antar-node seperti koridor internal — hanya untuk karyawan (node cluster). Akses client seperti resepsionis publik — orang luar boleh masuk tapi dengan aturan. Akses admin seperti ruang server terkunci — hanya orang dengan kunci (certificate) yang boleh masuk. Episode ini memasang papan nama, pintu, dan kunci yang tepat.
Dalam cluster MicroCloud, ada tiga jenis trafik yang perlu dipahami:
Mencampur ketiganya di satu segmen terbuka memudahkan penyadapan dan meningkatkan risiko. Desain yang baik memisahkannya.
Untuk production, pisahkan dengan NIC atau VLAN:
NIC eth0 ──► VLAN 10 management + client access
NIC eth1 ──► VLAN 20 storage (Ceph replication)
NIC eth2 ──► VLAN 30 overlay OVN (tunnel antar-node)Kalau NIC terbatas, minimal dua segmen:
eth0/VLAN management — termasuk akses client dan API admin.eth1/VLAN storage+overlay — trafik cluster internal yang berat.Dengan pemisahan segmen, terapkan firewall per antarmuka. Contoh aturan dengan ufw di tiap node:
sudo ufw allow from 192.168.10.0/24 to any port 8443 proto tcp
sudo ufw deny 8443sudo ufw allow from 192.168.20.0/24 to any port 6081 proto udp
sudo ufw deny 6081Aturan di atas memperbolehkan segmen admin mengakses API LXD (8443) dan subnet cluster untuk tunnel OVN (6081), sambil menolak yang lain.
Warning
Jangan menutup port cluster antar-node (8443 LXD, 6789/6800-7300 Ceph, 6081 OVN) di antara sesama node — cluster butuh komunikasi penuh tersebut. Firewall diterapkan untuk memisahkan dunia luar dari segmen internal, bukan untuk memblokir antar member.
API LXD di-expose lewat HTTPS (default port 8443) dengan certificate untuk otentikasi. Admin mengakses cluster dari mesin mana pun via lxc remote add:
lxc remote add mycloud https://node-a:8443 --accept-certificateSaat ditambah, kalian harus mempercayai certificate cluster (fingerprint ditampilkan) dan cluster harus menerima certificate client kalian:
lxc config trust add < client.crtlxc remote list
lxc remote switch mycloud
lxc cluster listSetelah remote terpasang, seluruh interaksi berjalan di atas TLS 1.3:
client ──(TLS 1.3)──► https://node-a:8443 ──► LXD cluster
│ │
└─ cert client (ditrust) ◄────────── cert cluster (fingerprint)Selain certificate, LXD mendukung Candid/SSO untuk otentikasi berbasis identitas, dan RBAC untuk kontrol akses per user. Untuk fleksibilitas tanpa membangun SSO, kalian bisa menambah beberapa certificate dengan scope berbeda.
lxc config trust dan buat baru.lxc config trust list untuk mengetahui siapa saja yang punya akses admin.lxc config trust listlxc config trust remove <fingerprint>--accept-certificate dan pastikan certificate client sudah ditrust di cluster.Inti yang harus dibawa pulang:
lxc remote add + trust certificate memberi akses admin terenkripsi dari mana saja.lxc config trust list).Di episode 15 selanjutnya kita akan membahas encryption & data protection — enkripsi disk Ceph saat init dengan LUKS, encryption at-rest data, proactive trust saat join sejak init 2.1, dan audit log untuk compliance. Data kalian akan aman diam dan bergerak!