2025-03-10Hünkar Döner

EKS Pod Security Standards (PSS) Rehberi

SecurityPSSEKSBest Practices
E

EKS Pod Security Standards (PSS) Rehberi

Kubernetes v1.25 ile birlikte Pod Security Policy (PSP) tamamen kaldırıldı. Bu, birçok EKS kullanıcısı için kafa karışıklığı yarattı. Artık pod güvenliğini sağlamak için Pod Security Standards (PSS) ve yerleşik Pod Security Admission (PSA) denetleyicisi kullanılıyor.

PSS Nedir?

PSS, podlar için 3 farklı güvenlik seviyesi tanımlar:

  1. Privileged: Hiçbir kısıtlama yok. Sadece sistem yöneticileri ve kritik altyapı bileşenleri (CNI, CSI) için kullanılmalıdır.
  2. Baseline: Bilinen güvenlik açıklarını engeller (örn: hostPort kullanımı) ama yaygın uygulamaların çalışmasına izin verir.
  3. Restricted: En sıkı mod. Podların root olarak çalışmasını engeller, capabilities'i düşürür. En güvenlisidir.

EKS'te Nasıl Uygulanır?

PSS'i uygulamak için Namespace'lere etiket (Label) vermeniz yeterlidir. Ekstra bir araç kurmanıza gerek yoktur.

Örnek: my-app namespace'inde sıkı (restricted) güvenlik uygulayalım ve kurala uymayan podları engelleyelim (enforce).

kubectl label namespace my-app pod-security.kubernetes.io/enforce=restricted
kubectl label namespace my-app pod-security.kubernetes.io/enforce-version=latest

Eğer bu namespace içinde root yetkisi isteyen bir pod başlatmaya çalışırsanız, EKS bunu reddedecektir.

Güvenli bir EKS ortamı için, kube-system hariç tüm namespace'lerde en azından Baseline, mümkünse Restricted profilini uygulamanızı öneriyoruz.