Kem Intensif DevOps · Pelajaran

Piawaian Keselamatan Pod

Gunakan Piawaian Keselamatan Pod untuk menguatkuasakan amalan terbaik keselamatan pada peringkat Pod.

Pelajaran 3 daripada 411 langkah

Piawaian Keselamatan Pod ialah pelajaran Kem Intensif DevOps percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Kem Intensif DevOps, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Kem Intensif DevOps merangkumi sejumlah 4 pelajaran.

Apakah PSS?

Kubernetes Pod Security Standards (PSS) ialah satu set garis panduan dan kawalan untuk menguatkuasakan amalan terbaik keselamatan pada Pod anda.

PSS membantu melindungi kluster anda daripada kelemahan keselamatan biasa dan serangan peningkatan keistimewaan dengan mengehadkan perkara yang boleh dilakukan oleh Pod.

Anggaplah PSS sebagai senarai semak keselamatan untuk Pod anda!

Tiga Tahap Keselamatan

PSS mentakrifkan tiga tahap keselamatan yang berbeza, setiap satunya menawarkan tahap perlindungan yang berlainan:

  • Privileged: Tanpa sekatan dan paling kurang selamat.
  • Baseline: Menghalang peningkatan keistimewaan yang diketahui.
  • Restricted: Menguatkuasakan amalan terbaik keselamatan yang diperketat.

Tahap ini bersifat kumulatif, iaitu Restricted merangkumi semua perlindungan Baseline, manakala Baseline merangkumi semua Privileged (atau lebih tepat lagi, tiada sekatan).

Privileged: Akses Tanpa Sekatan

Tahap PSS Privileged menawarkan polisi keselamatan tanpa sekatan.

Ini bermakna Pod yang berjalan di bawah polisi ini boleh meminta sebarang keupayaan dan mendapat akses penuh kepada sumber serta namespace hos, sama seperti berjalan sebagai root pada mesin hos.

Tahap ini umumnya dianggap sangat tidak selamat dan hanya patut digunakan untuk beban kerja peringkat sistem yang benar-benar memerlukan akses sedemikian.

Baseline: Menghalang Eksploit

Tahap PSS Baseline bertujuan menghalang peningkatan keistimewaan yang diketahui.

Ia merupakan titik permulaan yang baik bagi kebanyakan aplikasi yang ditakrifkan pengguna.

Sekatan utama termasuk:

  • Tiada kontena berkeistimewaan.
  • Tiada volum hostPath (kecuali jenis selamat tertentu).
  • Tiada perkongsian rangkaian hos atau namespace PID.
  • Keupayaan yang terhad.

Tahap ini membantu mengurangkan banyak vektor serangan biasa.

Restricted: Keselamatan Diperketat

Tahap PSS Restricted menguatkuasakan amalan terbaik keselamatan yang diperketat.

Tahap ini direka untuk aplikasi yang sangat sensitif terhadap keselamatan dan memerlukan Pod berjalan dengan keistimewaan minimum.

Selain sekatan Baseline, Restricted menguatkuasakan perkara berikut:

  • Berjalan sebagai pengguna bukan root.
  • Menggugurkan semua keupayaan Linux dan hanya menambah keupayaan tertentu yang diperlukan.
  • Memerlukan profil seccomp dan AppArmor.

Ini ialah tahap PSS yang paling selamat dan paling ketat.

Menguatkuasakan PSS dengan Kemasukan

Pod Security Standards dikuatkuasakan menggunakan ciri Kubernetes yang dipanggil Pod Security Admission.

Pengawal kemasukan ini memintas permintaan penciptaan Pod dan menyemaknya berdasarkan tahap PSS yang dikonfigurasikan untuk ruang nama Pod tersebut.

Anda menggunakan tahap PSS pada ruang nama dengan menambahkan label tertentu padanya. Contohnya:

kubectl label namespace <namespace-name> pod-security.kubernetes.io/enforce=restricted

Mengawal Keselamatan Pod

Untuk menjadikan Pod anda mematuhi PSS, anda biasanya menggunakan medan securityContext dalam takrifan Pod anda.

Medan ini membolehkan anda mentakrifkan tetapan keistimewaan dan kawalan akses untuk Pod atau bekas individu di dalamnya.

Tetapan biasa termasuk:

  • runAsUser: Menentukan ID pengguna untuk proses bekas.
  • allowPrivilegeEscalation: Menghalang proses daripada memperoleh lebih banyak keistimewaan berbanding proses induknya.
  • capabilities: Mengurus keupayaan Linux.

Contoh Pod Tidak Selamat

Mari kita lihat takrifan Pod yang akan melanggar PSS Baseline disebabkan oleh konteks keselamatannya. Ini secara umumnya tidak selamat:

apiVersion: v1
kind: Pod
metadata:
  name: unsafe-pod
spec:
  containers:
  - name: my-container
    image: nginx
    securityContext:
      privileged: true
      # This allows the container to run with root capabilities
      # and access host devices directly.
      # Violates Baseline PSS.

Contoh Pod yang Mematuhi Baseline

Beginilah cara anda mentakrifkan Pod yang mematuhi tahap PSS Baseline. Perhatikan ketiadaan privileged: true dan sekatan lain.

Untuk pematuhan Restricted yang lebih ketat, anda perlu menambahkan runAsNonRoot: true, readOnlyRootFilesystem: true dan menggugurkan semua keupayaan.

apiVersion: v1
kind: Pod
metadata:
  name: safe-pod
spec:
  containers:
  - name: my-container
    image: nginx
    securityContext:
      allowPrivilegeEscalation: false
      capabilities:
        drop:
        - ALL
      # This Pod runs with minimal privileges and
      # adheres to the Baseline PSS.

Semakan Pantas PSS

Manakah antara pernyataan berikut tentang Pod Security Standards (PSS) yang TRUE?

Imbas Kembali: Pod Security Standards

Dalam pelajaran ini, anda telah mempelajari tentang Kubernetes Pod Security Standards (PSS) dan kepentingannya untuk melindungi kluster anda.

  • PSS mentakrifkan tiga tahap: Privileged, Baseline dan Restricted.
  • Baseline menghalang peningkatan keistimewaan yang diketahui dan sesuai untuk kebanyakan aplikasi.
  • Restricted menguatkuasakan keselamatan yang diperkukuh serta memerlukan keistimewaan minimum.
  • Medan securityContext membantu mengkonfigurasi Pod supaya mematuhi PSS.

Menggunakan PSS ialah langkah penting untuk membina persekitaran Kubernetes yang lebih selamat!

Percuma untuk bermula

Pelajari Kem Intensif DevOps dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
142
Pelajaran
568

Soalan Lazim

Adakah pelajaran “Piawaian Keselamatan Pod” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Kem Intensif DevOps, termasuk “Piawaian Keselamatan Pod”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Kem Intensif DevOps merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Piawaian Keselamatan Pod”?

Gunakan Piawaian Keselamatan Pod untuk menguatkuasakan amalan terbaik keselamatan pada peringkat Pod. Anda berlatih Kem Intensif DevOps menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Kem Intensif DevOps?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Kem Intensif DevOps di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.

Berapa lamakah pelajaran “Piawaian Keselamatan Pod” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Kem Intensif DevOps ini?

Ya. Setiap pelajaran Kem Intensif DevOps menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Kawalan Akses Berasaskan Peranan (RBAC)
  2. Dasar Rangkaian untuk Pengasingan
  3. Piawaian Keselamatan Pod
  4. Akaun Perkhidmatan dan Identiti Beban Kerja
← Kembali ke Kem Intensif DevOps