Tempah Konsultasi Hantar Tiket

Pengukuhan Keselamatan DevOps: Amalan Tahap Pengeluaran untuk Platform Ops/SRE

Panduan praktikal untuk mengukuhkan kluster Kubernetes: prinsip RBAC minimum, dasar rangkaian, Piawaian Keselamatan Pod, dan pengurusan rahsia, lengkap dengan langkah undur dan pengesahan.

Pengukuhan Keselamatan DevOps: Amalan Tahap Pengeluaran untuk Platform Ops/SRE
Security 6min 5 paparan 2026-06-19
KubernetesPengukuhan KeselamatanSRERBACDasar Rangkaian

Senario

Pasukan SRE sebuah syarikat fintech mendapati pod dengan keistimewaan rendah dalam kluster Kubernetes pengeluaran mengakses Rahsia sensitif dalam namespace lain melalui token ServiceAccount yang dipasang. Pod itu hanya bertujuan untuk pengumpulan log, tetapi konfigurasi RBAC lalai membenarkan akses merentas namespace.

Gejala

  • Log audit keselamatan menunjukkan panggilan kubectl get secrets yang tidak dijangka.
  • Amaran pemantauan: lonjakan permintaan API ke namespace yang tidak diingini.
  • Kata laluan pangkalan data teks biasa dari perkhidmatan lain muncul dalam log ralat pengumpul log.

Diagnosis

  1. Periksa ServiceAccount pod: bash kubectl get pod <pod-name> -n <namespace> -o json | jq '.spec.serviceAccountName'
  2. Lihat RoleBinding untuk ServiceAccount itu: bash kubectl get rolebinding,clusterrolebinding -n <namespace> | grep <serviceaccount>
  3. ClusterRole lalai selalunya termasuk kebenaran get secrets.

Perintah: Pengukuhan Keselamatan

1. Buat ServiceAccount dengan Keistimewaan Minimum

kubectl create serviceaccount log-collector -n logging

2. Takrifkan Peranan Akses Log Baca Sahaja

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  namespace: logging
  name: log-reader
rules:
- apiGroups: [""]
  resources: ["pods/log", "pods"]
  verbs: ["get", "list", "watch"]

3. Ikat Peranan

kubectl create rolebinding log-reader-binding --role=log-reader --serviceaccount=logging:log-collector -n logging

4. Kemas Kini Pod dengan ServiceAccount Baru

Edit spec pod, tetapkan serviceAccountName: log-collector dan buang mount Secret lama.

5. Guna Dasar Rangkaian

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: deny-other-namespaces
  namespace: logging
spec:
  podSelector: {}
  policyTypes:
  - Ingress
  ingress:
  - from:
    - namespaceSelector:
        matchLabels:
          kubernetes.io/metadata.name: logging

6. Guna Piawaian Keselamatan Pod (Restricted)

kubectl label ns logging pod-security.kubernetes.io/enforce=restricted

Kawalan Risiko

  • Uji perubahan RBAC dalam persekitaran bukan pengeluaran dahulu.
  • Dasar rangkaian mungkin menyekat trafik yang sah; rancang senarai putih lebih awal.
  • Piawaian Keselamatan Pod mungkin menghalang pod sedia ada daripada dimulakan; sesuaikan beban kerja secara individu.

Pelan Undur

kubectl delete rolebinding log-reader-binding -n logging
kubectl delete role log-reader -n logging
kubectl delete networkpolicy deny-other-namespaces -n logging
kubectl label ns logging pod-security.kubernetes.io/enforce- # buang label

Pengesahan

  1. Pastikan pod tidak boleh mengakses namespace lain: bash kubectl exec -it <pod> -n logging -- curl -k -H "Authorization: Bearer $(cat /var/run/secrets/kubernetes.io/serviceaccount/token)" https://kubernetes.default.svc/api/v1/namespaces/default/secrets Seharusnya mengembalikan 403.
  2. Pastikan pengumpulan log masih berfungsi.

Bila Hantar Tiket OpsGlobal

Hantar tiket serta-merta jika: - Anda menemui akses tanpa kebenaran tetapi kekurangan kepakaran keselamatan Kubernetes. - Anda memerlukan audit keselamatan kluster berskala besar dan migrasi dasar. - Anda memerlukan bantuan dengan penilaian keserasian Piawaian Keselamatan Pod atau penulisan dasar tersuai.

Pakar SRE OpsGlobal menyediakan sokongan jauh 24/7 untuk mendiagnosis dan melaksanakan pengukuhan dengan pantas.

Senario Penggunaan

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

Latar Belakang Masalah

Panduan praktikal untuk mengukuhkan kluster Kubernetes: prinsip RBAC minimum, dasar rangkaian, Piawaian Keselamatan Pod, dan pengurusan rahsia, lengkap dengan langkah undur dan pengesahan.

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