Setelah pada tutorial sebelumnya kita membahas tentang provisioning OKD Single Node (SNO) dan cara mengelola SSL menggunakan step-ca, kali ini kita akan masuk ke tahap post-installasi yaitu Mengganti Default Ingress Certificate di OKD.
Secara default, OKD menggunakan self-signed certificate internal untuk rute aplikasi (*.apps). Dengan menggunakan step-ca, kita bisa menggantinya dengan sertifikat yang valid dan terpercaya di seluruh jaringan lab kita.
Prasyarat & Referensi
Sebelum melanjutkan, pastikan kalian sudah mengikuti atau memahami dua materi berikut:
Instalasi OKD Single Node (SNO): Link Artikel Instalasi OKD (Author: Niko).
Setup step-ca sebagai Management SSL: Link Artikel Setup step-ca (Author: Bagus).
Aturan Sertifikat Ingress OKD
Untuk mengganti sertifikat default, ada beberapa aturan teknis yang harus dipenuhi:
Wajib menggunakan Wildcard Certificate untuk subdomain
.apps(Contoh:*.apps.<nama-cluster>.<domain>).Private key tidak boleh dienkripsi (unencrypted).
Sertifikat harus menyertakan ekstensi
subjectAltNameuntuk wildcard tersebut.File sertifikat harus berupa Chain (urutan: Wildcard Cert -> Intermediate Cert -> Root CA).
File harus dalam format PEM.
Langkah 1: Request Sertifikat ke step-ca
Kita akan me-request sertifikat wildcard untuk cluster kita. Sesuaikan cluster-name dan domain kita.
Contoh: Cluster name:
nb-cluster, Domain:nb.lab. Maka wildcard-nya adalah*.apps.nb-cluster.okd.lab.
# Request certificate menggunakan step-cli
step ca certificate '*.apps.nb-cluster.okd.lab' apps-okd.crt apps-okd.keySetelah berhasil, kalian akan mendapatkan dua file: apps-okd.crt dan apps-okd.key.
Langkah 2: Membuat Certificate Chain
Sesuai aturan OKD, kita harus menggabungkan sertifikat wildcard dengan Root CA agar membentuk trust chain yang lengkap.
Unduh Root CA dari server step-ca:
wget https://ca.twnb.com/roots.pem --no-check-certificateGabungkan Root CA ke dalam file sertifikat apps:
# Menambahkan isi roots.pem ke baris terakhir apps-okd.crt cat roots.pem >> apps-okd.crt
Langkah 3: Mengganti Sertifikat di OKD
Sekarang kita akan menerapkan sertifikat baru tersebut ke dalam cluster OKD menggunakan oc CLI.
1. Buat ConfigMap untuk Root CA
Ini dilakukan agar cluster mempercayai CA yang mengeluarkan sertifikat tersebut.
oc create configmap custom-ca \
--from-file=ca-bundle.crt=roots.pem \
-n openshift-config2. Patch Cluster-wide Proxy
Instruksikan cluster untuk menggunakan ConfigMap tadi sebagai Trusted CA.
oc patch proxy/cluster \
--type=merge \
--patch='{"spec":{"trustedCA":{"name":"custom-ca"}}}'
3. Buat Secret untuk Wildcard Certificate
Simpan sertifikat chain dan key ke dalam sebuah secret di namespace Ingress.
oc create secret tls nb-cert \
--cert=apps-okd.crt \
--key=apps-okd.key \
-n openshift-ingress4. Update Ingress Controller
Langkah terakhir adalah memberitahu Ingress Controller untuk menggunakan secret nb-cert sebagai sertifikat default.
oc patch ingresscontroller.operator default \
--type=merge -p \
'{"spec":{"defaultCertificate": {"name": "nb-cert"}}}' \
-n openshift-ingress-operatorVerifikasi Hasil
Setelah perintah terakhir dijalankan, Pod router di namespace openshift-ingress akan melakukan rollout (restart otomatis) untuk menerapkan perubahan.
Pantau status pod:
oc get pods -n openshift-ingress.Jika sudah kembali
Running, buka Dashboard Console OKD Anda di browser.
Kini, status koneksi pada dashboard OKD kalian akan menunjukkan "Connection is Secure" atau gembok hijau, tanpa ada lagi peringatan sertifikat tidak dikenal.

Kesimpulan
Dengan panduan ini, kalian dapat mengganti sertifikat default Ingress OKD menjadi wildcard certificate yang valid menggunakan step-ca. Langkah-langkahnya meliputi request sertifikat, membuat certificate chain, dan menerapkannya melalui ConfigMap, Secret, serta Ingress Controller. Hasilnya, dashboard OKD menunjukkan koneksi aman (“Connection is Secure”) dan tidak ada lagi peringatan SSL.
Jika masih kebingungan dan ada yang ingin ditanyakan, silakan isi kolom komentar dibawah ini.