From a76dbb4ff426d89008520524166dc5d7b573e24b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pomucz=20Tam=C3=A1s?= <pomucz@sch.bme.hu>
Date: Sun, 6 Apr 2025 02:31:50 +0200
Subject: [PATCH] Add NetworkPolicy clarifications

---
 ingress-controller/values.yaml | 4 ++++
 readme.md                      | 4 +++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/ingress-controller/values.yaml b/ingress-controller/values.yaml
index 8185845..608bbe8 100644
--- a/ingress-controller/values.yaml
+++ b/ingress-controller/values.yaml
@@ -21,3 +21,7 @@ controller:
         labelSelector:
           matchLabels:
             app.kubernetes.io/instance: '{{ .Release.Name }}'
+
+# Create a network policy for the ingress controller. This will make it available from outside the cluster, as it will extend the default ingress restriction.
+  networkPolicy:
+    enabled: true
\ No newline at end of file
diff --git a/readme.md b/readme.md
index 138512e..2f9fb6f 100644
--- a/readme.md
+++ b/readme.md
@@ -77,9 +77,11 @@ A vCluster egy nagy előnye, hogy minden tényleges munka a host klaszterben tö
 
 A vCluster-ben lehetőség van LoadBalancer típusú service létrehozására, ekkor egy publikus IP cím kerül allokálása automatikusan. Ha a service-t ellátod a `kszk.bme.hu/IPPool: private` label-el, akkor a 10.44.0.0/16 os tartományból allokált privát címet fog kapni, mely csak kolis hálózaton belül érhető el. Privát címből nagyon sok van, publikusból lényegesen kevesebb, sajnos nincs módunk ezekre külön quota-t helyezni, így csak 2 LoadBalancer címet tudtok allokálni tartománytól függetlenül összesen, viszont ha tudnátok használni többet nyugodtan vegyétel fel velünk a kapcsolatot.
 
+A host klaszter podjai a Schönherz hálózatáról megcímezhető IP címeket kapnak. Ez azt jeleni, hogy nemcsak a saját IP-jét használja a pod amikor kifelé kommunikál, de azt is, hogy kolin belülről a pod IP címét használva el lehet érni azt. A nemkívánatos hozzáférések elkerülése érdekében a vClusterekhez alapértelmezés szerint létrehozásra kerül egy NetworkPolicy, ami korlátozza a forgalmat csak a vClusteren belülre ingress irányban. Ez a policy a host klaszterben kerül létrehozásra, a vClusteren belül nem látszik. Hátránya ennek, hogy a kubernetes network policy-k működése miatt mivel ez a policy engedélyez a vClusteren-en belül minden kommunikációt, és a NetworkPolicy szabályai additívak, ezért ennél szigorúbb korlátozás létrehozása nem lehetséges a vClusteren belül ingress irányban. Ez persze csak ingress irányban érvényes, egress irányban a network policy-k a megszokott módon működnek. Az alapértelmezett ingress korlátozás a service-ekre is vonatkozik, így egy LoadBalancer service is csak a vClusteren belülről lesz alapértelmezés szerint elérhető. Egy megengedőbb ingress network policy létrehozásával feloldható a korlátozás, tehát ha egy podra pl. egy mindent megengedő ingress policy kerül, akkor pod IP-je kolin belülről közvetlenül elérhetővé válik, valamint egy publikus LoadBalancer service mögötti pod globálisan elérhetővé válik. Kérés esetén az alapértelmezett ingress policy kikapcsolható, ekkor a vCluster használójának lesz a felelősége a nemkívánatos külső hozzáférés korlátozása.
+
 # Hogyan tudok ingress-t használni?
 
-Biztonsági okokból nem biztosítunk host clusteren keresztül ingress szolgáltatást a vClustereknek, így ingress erőforrások használatához egy saját ingress kontroller telepítése szükséges, ehhez segítségképpen található egy minta helm konfiguráció az ingress-controller mappában (nem kell azt használni, csak példának van). A telepítés lépései:
+Biztonsági okokból nem biztosítunk host clusteren keresztül ingress szolgáltatást a vClustereknek, így ingress erőforrások használatához egy saját ingress kontroller telepítése szükséges, ehhez segítségképpen található egy minta helm konfiguráció az ingress-controller mappában (nem kell azt használni, csak példának van). A helm chart a szükséges network policy-t is létre fogja hozni. A telepítés lépései:
 - Legyen [helm](https://helm.sh/) a gépeden
 - Add ki a következő parancsot: 
     ```
-- 
GitLab