Tempah Konsultasi Hantar Tiket

Pengukuhan Keselamatan DevOps untuk Platform SRE Kubernetes

Panduan praktikal untuk mengukuhkan akses kluster Kubernetes dengan prinsip keistimewaan minimum RBAC, Piawaian Keselamatan Pod, dasar rangkaian, dan pengurusan rahsia menggunakan External Secrets Operator.

Pengukuhan Keselamatan DevOps untuk Platform SRE Kubernetes
Security 6min 64 paparan 2026-07-05
KubernetesPengukuhan KeselamatanRBACKeselamatan PodPengurusan Rahsia

Senario

Pasukan SRE menguruskan beberapa kluster Kubernetes. Seorang pemaju secara tidak sengaja memadamkan semua pod dalam ruang nama pengeluaran kerana mempunyai keistimewaan cluster-admin, menyebabkan gangguan perkhidmatan. Penyiasatan mendedahkan keizinan yang berlebihan dan kekurangan prinsip keistimewaan minimum.

Gejala

  • Pod pengeluaran dipadam tanpa diduga
  • Log audit menunjukkan kubectl delete pods --all dilaksanakan oleh pengguna
  • Pengguna mempunyai ClusterRoleBinding cluster-admin

Diagnosis

  1. Periksa ikatan pengguna: kubectl get clusterrolebinding <user-binding> -o yaml
  2. Senarai keizinan pengguna: kubectl auth can-i --list --as=<user>
  3. Semak log API server: kubectl logs -n kube-system <apiserver-pod> --tail=100 | grep <user>

Perintah (Pengukuhan)

1. RBAC Keistimewaan Minimum

# Buat peranan kluster baca sahaja
kubectl create clusterrole readonly --verb=get,list,watch --resource=pods,services,deployments
# Ikat kepada pengguna di peringkat ruang nama
kubectl create rolebinding readonly-binding --clusterrole=readonly --user=<user> --namespace=<namespace>
# Padam ikatan cluster-admin lama
kubectl delete clusterrolebinding <old-binding>

2. Piawaian Keselamatan Pod

# Dayakan pengawal kemasukan PodSecurity (dalam argumen kube-apiserver)
--enable-admission-plugins=PodSecurity
# Guna dasar garis dasar pada ruang nama
kubectl label ns <namespace> pod-security.kubernetes.io/enforce=baseline

3. Dasar Rangkaian

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: deny-all
spec:
  podSelector: {}
  policyTypes:
  - Ingress
  - Egress

4. Pengurusan Rahsia dengan External Secrets Operator (ESO)

# Pasang ESO
helm repo add external-secrets https://charts.external-secrets.io
helm install external-secrets external-secrets/external-secrets -n external-secrets --create-namespace
# Buat SecretStore (contoh: Vault)
kubectl apply -f secretstore.yaml
# Buat ExternalSecret
kubectl apply -f externalsecret.yaml

Kawalan Risiko

  • Sandarkan RBAC sedia ada: kubectl get clusterrolebinding -o yaml > backup-rbac.yaml
  • Uji perubahan dengan pengguna canary
  • Dayakan log audit (--audit-log-path=/var/log/kube-apiserver-audit.log)

Pengembalian

# Pulihkan ikatan RBAC
kubectl apply -f backup-rbac.yaml
# Buang label Pod Security
kubectl label ns <namespace> pod-security.kubernetes.io/enforce-
# Padam dasar rangkaian
kubectl delete networkpolicy deny-all

Pengesahan

# Sahkan pengguna tidak boleh memadam pod
kubectl auth can-i delete pod --as=<user> -n <namespace>
# Periksa status segerak rahsia
kubectl get externalsecret -n <namespace>
# Uji pengasingan rangkaian
kubectl exec -it <pod> -- curl <other-pod-ip>  # Sepatutnya tamat masa

Bila Hantar Tiket OpsGlobal

  • Perlu audit dan ubah suai keizinan RBAC seluruh kluster
  • Integrasi dengan stor rahsia luaran (Vault, AWS Secrets Manager, dll.)
  • Tindak balas insiden memerlukan analisis forensik dan pemulihan
  • Memenuhi keperluan pematuhan (PCI-DSS, SOC2) untuk keselamatan rangkaian dan pod

Senario Penggunaan

Sesuai untuk pasukan yang menyelesaikan isu Security dan memerlukan aliran kerja yang jelas.

Latar Belakang Masalah

Panduan praktikal untuk mengukuhkan akses kluster Kubernetes dengan prinsip keistimewaan minimum RBAC, Piawaian Keselamatan Pod, dasar rangkaian, dan pengurusan rahsia menggunakan External Secrets Operator.

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.

Tiket Hubungi WhatsApp Konsultasi