Dokumen ini menjelaskan cara mengonfigurasi profil Seccomp (Secure Computing Mode) Kubernetes untuk pod hybrid Apigee guna meningkatkan keamanan dengan membatasi panggilan sistem (syscall) yang diizinkan untuk dilakukan oleh container.
Tentang profil Seccomp di Kubernetes
Seccomp adalah fitur keamanan kernel Linux yang membatasi panggilan sistem yang dapat dilakukan oleh suatu proses. Jika digunakan dengan Kubernetes, Anda dapat menerapkan profil Seccomp ke securityContext pod untuk membatasi syscall yang tersedia untuk containernya. Hal ini membantu mengurangi permukaan serangan pada penampung dan memitigasi risiko pelarian penampung atau eskalasi hak istimewa dengan menerapkan prinsip hak istimewa terendah.
Untuk mengetahui informasi selengkapnya tentang Seccomp di Kubernetes, lihat Secure Computing (Seccomp) di dokumentasi Kubernetes.
Dalam hybrid, profil Seccomp tidak diaktifkan secara default. Anda dapat memilih untuk menerapkan profil Seccomp ke komponen hybrid dengan menambahkan objek seccompProfile ke file overrides.yaml.
Mengonfigurasi profil Seccomp
Anda dapat menerapkan profil Seccomp secara global, per lingkungan, atau per komponen dalam file overrides.yaml dengan menambahkan blok konfigurasi securityContext.seccompProfile. Hybrid mendukung jenis profil Seccomp berikut:
RuntimeDefault: Profil default yang ditentukan oleh runtime container. Ini adalah opsi yang direkomendasikan, karena memberikan tingkat keamanan yang wajar sekaligus mempertahankan kompatibilitas untuk sebagian besar workload.Unconfined: Tidak menerapkan batasan Seccomp ke pod. Opsi ini adalah opsi yang paling tidak aman dan harus digunakan dengan hati-hati.
Prioritas konfigurasi
Anda dapat menetapkan seccompProfile di tingkat berikut dalam overrides.yaml. Setelan tingkat komponen lebih diprioritaskan daripada setelan tingkat lingkungan, dan setelan tingkat lingkungan lebih diprioritaskan daripada setelan global:
- Tingkat komponen: Berlaku untuk komponen tertentu (misalnya,
runtimeataucassandra). - Tingkat lingkungan: Berlaku untuk semua komponen dalam lingkungan tertentu yang ditentukan dalam array
envs[], kecuali jika diganti di tingkat komponen. - Level global: Berlaku untuk semua komponen dalam cluster, kecuali jika diganti di level lingkungan atau komponen.
Contoh
Konfigurasi global
Untuk menerapkan profil Seccomp RuntimeDefault ke semua komponen yang tidak memiliki penggantian tingkat lingkungan atau komponen, tambahkan kode berikut ke tingkat teratas overrides.yaml Anda:
securityContext: seccompProfile: type: RuntimeDefault
Konfigurasi lingkungan
Untuk menerapkan profil Seccomp RuntimeDefault ke semua komponen di lingkungan tertentu, tambahkan konfigurasi di elemen envs[]:
envs: - name: "my-environment" securityContext: seccompProfile: type: RuntimeDefault ...
Konfigurasi komponen
Untuk menerapkan profil Seccomp RuntimeDefault ke komponen tertentu (misalnya, komponen runtime), tambahkan konfigurasi di bawah komponen tersebut:
runtime: securityContext: seccompProfile: type: RuntimeDefault ...