my-homelab-configs/apps/security-lab/network-policy.yaml

75 lines
1.5 KiB
YAML

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: security-lab-default-deny-egress
namespace: security-lab
spec:
podSelector: {}
policyTypes:
- Egress
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: security-lab-allow-web-egress
namespace: security-lab
spec:
podSelector:
matchLabels:
homelab.dev/security-lab-app: "true"
policyTypes:
- Egress
egress:
- to:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: kube-system
ports:
- protocol: UDP
port: 53
- protocol: TCP
port: 53
- to:
- ipBlock:
cidr: 0.0.0.0/0
except:
- 10.96.0.0/12
- 192.168.100.0/24
ports:
- protocol: TCP
port: 80
- protocol: TCP
port: 443
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: security-lab-default-deny-ingress
namespace: security-lab
spec:
podSelector: {}
policyTypes:
- Ingress
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: security-lab-allow-port-forward
namespace: security-lab
spec:
podSelector:
matchLabels:
homelab.dev/security-lab-app: "true"
policyTypes:
- Ingress
ingress:
- from:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: kube-system
ports:
- protocol: TCP
port: 3000
- protocol: TCP
port: 8080