Middle+
Koje prakse poznajete za povećanje sigurnosti aplikacije u Kubernetesu?
sobes.tech АИ
Одговор од АИ
- Користите мрежне политике за контролу саобраћаја између подова.
- Примењују се квоте ресурса и опсези лимита за ограничење потрошње ресурса од стране подова.
- Искључивање привилегованог режима за контејнере.
- Минимализација привилегија додељених рачунима услуга.
- Коришћење тајни за чување осетљивих података.
- Регуларно скенирање слика контејнера на рањивости.
- Примењују се ограничења безбедносног контекста (SCC) у OpenShift-у или политике безбедности подова (PSP) (старе) / стандарди безбедности подова у чистом Kubernetes-у.
- Коришћење алата за аудит кластер, као што су Kubesec или OpenSCAP.
- Имплементација принципа најмањих привилегија на нивоу кластера и апликација.
- Сегментација подова и простора имена.
- Коришћење неизменљивости за деплойменте.
Пример коришћења мрежне политике:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-frontend-to-backend
spec:
podSelector:
matchLabels:
app: backend # Примењује се само на подове са овом етикетом
ingress:
- from:
- podSelector:
matchLabels:
app: frontend # Дозвољава улазни саобраћај само од подова frontend
ports:
- protocol: TCP
port: 8080 # Дозвољава саобраћај само на овом портуу
Пример коришћења безбедносног контекста:
apiVersion: v1
kind: Pod
metadata:
name: security-context-demo
spec:
securityContext:
runAsUser: 1000 # Извршавање контејнера као корисник са ID-јем 1000
runAsGroup: 3000 # Извршавање контејнера као група са ID-јем 3000
fsGroup: 2000 # Фајл систем ће припадати групи 2000
containers:
- name: sec-ctx-demo
image: busybox
command: [ "sh", "-c", "sleep 1h" ]
securityContext:
allowPrivilegeEscalation: false # Забрана повећања привилегија
readOnlyRootFilesystem: true # Направити коренски фајл систем само за читање