network policies

This commit is contained in:
2025-01-19 19:16:06 +01:00
parent fa39cd58e0
commit 2644d2b50c
8 changed files with 47 additions and 11 deletions

View File

@@ -36,15 +36,6 @@ http {
listen 80;
server_name ~^(?<subdomain>.+)\.dev\.mrcynic\.site$;
# Inform NGINX how to read the client IP from X-Forwarded-For
real_ip_header X-Forwarded-For;
set_real_ip_from 192.168.0.1;
real_ip_recursive on;
# Block if not LAN (192.168.0.0/24). You can expand or tighten this as needed.
allow 192.168.0.0/24;
deny all;
location / {
proxy_pass http://internal_ingress;
proxy_set_header Host $host;

View File

@@ -0,0 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- external-controller.yaml
- internal-controller.yaml

View File

@@ -4,11 +4,11 @@ kind: Kustomization
namespace: ingress-nginx
resources:
- external-controller.yaml
- internal-controller.yaml
- namespace.yaml
- services.yaml
- proxy.yaml
- policies
- controllers
configMapGenerator:
- name: proxy-config

View File

@@ -0,0 +1,13 @@
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-all-ingress-nginx-external
spec:
podSelector:
matchLabels:
app.kubernetes.io/name: nginx-external
policyTypes:
- Ingress
ingress:
- {}

View File

@@ -0,0 +1,20 @@
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: restrict-ingress-nginx-internal
spec:
podSelector:
matchLabels:
app.kubernetes.io/name: nginx-internal
policyTypes:
- Ingress
ingress:
- from:
- ipBlock:
cidr: 192.168.0.0/16
ports:
- protocol: TCP
port: 80
- protocol: TCP
port: 443

View File

@@ -0,0 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- external-policy.yaml
- internal-policy.yaml