Senario
Kluster Kubernetes pengeluaran pelanggan kewangan menunjukkan akses sumber tidak sah. Pasukan SRE perlu segera mengukuhkan keselamatan.
Gejala
- Pengguna bukan pentadbir boleh menyenaraikan rahsia kluster
- Sambungan keluar dari IP mencurigakan
- Kubeconfig bocor membolehkan penyerang menjalankan arahan
Diagnosis
- Periksa ikatan RBAC:
kubectl get clusterrolebinding,rolebinding -A -o wide - Audit dasar rangkaian:
kubectl get networkpolicy -A - Sahkan storan rahsia:
kubectl get secrets -A | grep -v default-token
Arahan
Ketatkan RBAC
kubectl create clusterrole restrict-secrets --verb=get,list,watch --resource=secrets --resource-name= # hanya rahsia tertentu
kubectl create clusterrolebinding restrict-secrets-binding --clusterrole=restrict-secrets --user=developer
Dayakan Dasar Rangkaian
# default-deny.yaml
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default-deny-all
spec:
podSelector: {}
policyTypes:
- Ingress
- Egress
kubectl apply -f default-deny.yaml
Putar Rahsia
kubectl delete secret my-app-secret
kubectl create secret generic my-app-secret --from-literal=password=$(openssl rand -base64 32)
Kawalan Risiko
- Uji dasar rangkaian di ruang nama kanari dahulu
- Sandarkan konfigurasi RBAC sebelum perubahan:
kubectl get clusterrolebinding -o yaml > rbac-backup.yaml - Pastikan aplikasi menyokong muat semula panas untuk rahsia atau koordinasikan but semula
Pengembalian
kubectl delete clusterrole restrict-secrets
kubectl delete clusterrolebinding restrict-secrets-binding
kubectl delete networkpolicy default-deny-all
kubectl apply -f rbac-backup.yaml
Pengesahan
kubectl auth can-i list secrets --as=developer # patut kembali no
kubectl exec test-pod -- curl -I http://evil.com # patut tamat masa
kubectl get secret my-app-secret -o jsonpath='{.data.password}' | base64 -d | wc -c # patut 32
Bila Serah Tiket OpsGlobal
- Kerentanan keselamatan (cth. CVE) menjejaskan komponen berjalan yang memerlukan pembetulan panas
- Audit dalaman mendedahkan kesilapan konfigurasi kritikal di luar kemampuan pasukan
- Gangguan perkhidmatan meluas selepas pengukuhan yang tidak dapat dipulihkan
- Perlukan pakar luar untuk latihan merah-biru atau semakan pematuhan
Senario Penggunaan
Sesuai untuk pasukan yang menyelesaikan isu Security dan memerlukan aliran kerja yang jelas.
Latar Belakang Masalah
Mendalami pengukuhan keselamatan persekitaran Kubernetes dengan RBAC, dasar rangkaian, dan pengurusan rahsia, termasuk langkah diagnostik dan pengembalian.
Langkah Penyelesaian
Sahkan impak dan perubahan terkini, kumpul log, konfigurasi dan metrik, kemudian baiki mengikut risiko.
Contoh Arahan
Gantikan contoh dengan nama sumber sebenar dan simpan kata laluan, token atau kunci dalam pembolehubah persekitaran.
Risiko
Sebelum operasi produksi, semak sandaran, akses, tetingkap perubahan dan pelan rollback.
Pelan Rollback
Simpan konfigurasi dan versi asal; rollback konfigurasi, imej atau perubahan pangkalan data jika metrik tidak normal.
Senarai Serahan
Rekod punca isu, arahan penting, langkah pembaikan, hasil pengesahan dan cadangan susulan.
Perlu bantuan isu teknikal serupa?
Jika pelayan, Kubernetes, Docker, CI/CD, pangkalan data atau pemantauan anda bermasalah, hantar log dan konfigurasi untuk diagnosis jauh.