Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

Π‘Π΅Π»Π΅ΡˆΠΊΠ°. трансл.: Аутор Ρ‡Π»Π°Π½ΠΊΠ°, Π Π΅ΡƒΠ²Π΅Π½ Π₯аррисон, ΠΈΠΌΠ° ΠΏΡ€Π΅ΠΊΠΎ 20 Π³ΠΎΠ΄ΠΈΠ½Π° искуства Ρƒ Ρ€Π°Π·Π²ΠΎΡ˜Ρƒ софтвСра, Π° данас јС ЦВО ΠΈ суоснивач Π’ΡƒΡ„ΠΈΠ½Π°, компанијС која ΠΊΡ€Π΅ΠΈΡ€Π° Ρ€Π΅ΡˆΠ΅ΡšΠ° Π·Π° ΡƒΠΏΡ€Π°Π²Ρ™Π°ΡšΠ΅ бСзбСдносном ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΌ. Π”ΠΎΠΊ ΠΎΠ½ посматра ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ ΠΊΠ°ΠΎ ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½ΠΎ ΠΌΠΎΡ›Π°Π½ Π°Π»Π°Ρ‚ Π·Π° ΡΠ΅Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Ρƒ ΠΌΡ€Π΅ΠΆΠ΅ Ρƒ кластСру, ΠΎΠ½ Ρ‚Π°ΠΊΠΎΡ’Π΅ Π²Π΅Ρ€ΡƒΡ˜Π΅ Π΄Π° ΠΈΡ… нијС Ρ‚Π°ΠΊΠΎ Π»Π°ΠΊΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΠΈ Ρƒ пракси. Овај ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΡ˜Π°Π» (ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½ΠΎ ΠΎΠ±ΠΈΠΌΠ°Π½) ΠΈΠΌΠ° Π·Π° Ρ†ΠΈΡ™ Π΄Π° ΠΏΠΎΠ±ΠΎΡ™ΡˆΠ° свСст ΡΡ‚Ρ€ΡƒΡ‡ΡšΠ°ΠΊΠ° ΠΎ ΠΎΠ²ΠΎΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π΅ ΠΈΠΌ Π΄Π° Π½Π°ΠΏΡ€Π°Π²Π΅ Π½Π΅ΠΎΠΏΡ…ΠΎΠ΄Π½Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ˜Π΅.

Данас ΠΌΠ½ΠΎΠ³Π΅ компанијС свС вишС Π±ΠΈΡ€Π°Ρ˜Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ Π·Π° ΠΏΠΎΠΊΡ€Π΅Ρ‚Π°ΡšΠ΅ ΡΠ²ΠΎΡ˜ΠΈΡ… Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°. Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠΎΠ²Π°ΡšΠ΅ Π·Π° овај софтвСр јС Ρ‚ΠΎΠ»ΠΈΠΊΠΎ Π²Π΅Π»ΠΈΠΊΠΎ Π΄Π° Π½Π΅ΠΊΠΈ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ Π½Π°Π·ΠΈΠ²Π°Ρ˜Ρƒ β€žΠ½ΠΎΠ²ΠΈΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΈΠΌ систСмом Π·Π° Ρ†Π΅Π½Ρ‚Π°Ρ€ ΠΏΠΎΠ΄Π°Ρ‚Π°ΠΊΠ°β€œ. ΠŸΠΎΡΡ‚Π΅ΠΏΠ΅Π½ΠΎ, ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ (ΠΈΠ»ΠΈ ΠΊ8с) ΠΏΠΎΡ‡ΠΈΡšΠ΅ Π΄Π° сС Π΄ΠΎΠΆΠΈΠ²Ρ™Π°Π²Π° ΠΊΠ°ΠΎ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΈ Π΄Π΅ΠΎ пословања, који Π·Π°Ρ…Ρ‚Π΅Π²Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ˜Ρƒ Π·Ρ€Π΅Π»ΠΈΡ… пословних процСса, ΡƒΠΊΡ™ΡƒΡ‡ΡƒΡ˜ΡƒΡ›ΠΈ ΠΈ бСзбСдност ΠΌΡ€Π΅ΠΆΠ΅.

Π—Π° ΡΡ‚Ρ€ΡƒΡ‡ΡšΠ°ΠΊΠ΅ Π·Π° бСзбСдност који су Π·Π±ΡƒΡšΠ΅Π½ΠΈ Ρ€Π°Π΄ΠΎΠΌ са ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅ΡΠΎΠΌ, ΠΏΡ€Π°Π²ΠΎ ΠΎΡ‚ΠΊΡ€ΠΈΡ›Π΅ ΠΌΠΎΠΆΠ΅ Π±ΠΈΡ‚ΠΈ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅: Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈ свС.

Овај Π²ΠΎΠ΄ΠΈΡ‡ Ρ›Π΅ Π²Π°ΠΌ ΠΏΠΎΠΌΠΎΡ›ΠΈ Π΄Π° Ρ€Π°Π·ΡƒΠΌΠ΅Ρ‚Π΅ ΡƒΠ½ΡƒΡ‚Ρ€Π°ΡˆΡšΡƒ структуру ΠΌΡ€Π΅ΠΆΠ½ΠΈΡ… ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°; Ρ€Π°Π·ΡƒΠΌΠ΅Ρ˜Ρƒ ΠΏΠΎ Ρ‡Π΅ΠΌΡƒ сС Ρ€Π°Π·Π»ΠΈΠΊΡƒΡ˜Ρƒ ΠΎΠ΄ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π·Π° ΠΎΠ±ΠΈΡ‡Π½Π΅ Π·Π°ΡˆΡ‚ΠΈΡ‚Π½Π΅ Π·ΠΈΠ΄ΠΎΠ²Π΅. Π’Π°ΠΊΠΎΡ’Π΅ Ρ›Π΅ ΠΏΠΎΠΊΡ€ΠΈΡ‚ΠΈ Π½Π΅ΠΊΠ΅ Π·Π°ΠΌΠΊΠ΅ ΠΈ Π΄Π°Ρ‚ΠΈ ΠΏΡ€Π΅ΠΏΠΎΡ€ΡƒΠΊΠ΅ којС Ρ›Π΅ ΠΏΠΎΠΌΠΎΡ›ΠΈ Π΄Π° сС ΠΎΠ±Π΅Π·Π±Π΅Π΄Π΅ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π΅ Π½Π° ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ-Ρƒ.

ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ смСрницС

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·Π°ΠΌ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½ΠΈΡ… ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Π²Π°ΠΌ ΠΎΠΌΠΎΠ³ΡƒΡ›Π°Π²Π° Π΄Π° ΡƒΠΏΡ€Π°Π²Ρ™Π°Ρ‚Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ†ΠΈΡ˜ΠΎΠΌ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° распорСђСних Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ Π½Π° ΠΌΡ€Π΅ΠΆΠ½ΠΎΠΌ ΡΠ»ΠΎΡ˜Ρƒ (Ρ‚Ρ€Π΅Ρ›ΠΈ Ρƒ ОБИ ΠΌΠΎΠ΄Π΅Π»Ρƒ). ΠœΡ€Π΅ΠΆΠ½ΠΈΠΌ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°ΠΌΠ° Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ˜Ρƒ Π½Π΅ΠΊΠ΅ ΠΎΠ΄ Π½Π°ΠΏΡ€Π΅Π΄Π½ΠΈΡ… карактСристика ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΡ… Π·Π°ΡˆΡ‚ΠΈΡ‚Π½ΠΈΡ… Π·ΠΈΠ΄ΠΎΠ²Π°, ΠΊΠ°ΠΎ ΡˆΡ‚ΠΎ су ΠΏΡ€ΠΈΠΌΠ΅Π½Π° ОБИ слоја 7 ΠΈ ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°ΡšΠ΅ ΠΏΡ€Π΅Ρ‚ΡšΠΈ, Π°Π»ΠΈ ΠΎΠ½Π΅ ΠΏΡ€ΡƒΠΆΠ°Ρ˜Ρƒ основни Π½ΠΈΠ²ΠΎ ΠΌΡ€Π΅ΠΆΠ½Π΅ бСзбСдности који јС Π΄ΠΎΠ±Ρ€Π° ΠΏΠΎΠ»Π°Π·Π½Π° Ρ‚Π°Ρ‡ΠΊΠ°.

ΠœΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡˆΡƒ ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΡ˜Ρƒ ΠΈΠ·ΠΌΠ΅Ρ’Ρƒ ΠΏΠΎΠ΄ΠΎΠ²Π°

Π Π°Π΄Π½Π° ΠΎΠΏΡ‚Π΅Ρ€Π΅Ρ›Π΅ΡšΠ° Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ-Ρƒ су распорСђСна Π½Π° ΠΏΠΎΠ΄ΠΎΠ²Π΅, који сС ΡΠ°ΡΡ‚ΠΎΡ˜Π΅ ΠΎΠ΄ јСдног ΠΈΠ»ΠΈ вишС ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€Π° који су распорСђСни зајСдно. ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ сваком ΠΌΠΎΠ΄ΡƒΠ»Ρƒ Π΄ΠΎΠ΄Π΅Ρ™ΡƒΡ˜Π΅ ИП адрСсу којој сС ΠΌΠΎΠΆΠ΅ приступити ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠΎΠ΄ΡƒΠ»Π°. ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ смСрницС ΠΏΠΎΡΡ‚Π°Π²Ρ™Π°Ρ˜Ρƒ ΠΏΡ€Π°Π²Π° приступа Π·Π° Π³Ρ€ΡƒΠΏΠ΅ ΠΏΠΎΠ΄ΠΎΠ²Π° Π½Π° исти Π½Π°Ρ‡ΠΈΠ½ Π½Π° који сС бСзбСдноснС Π³Ρ€ΡƒΠΏΠ΅ Ρƒ ΠΎΠ±Π»Π°ΠΊΡƒ користС Π·Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Ρƒ приступа инстанцама Π²ΠΈΡ€Ρ‚ΡƒΠ΅Π»Π½Π΅ машинС.

Π”Π΅Ρ„ΠΈΠ½ΠΈΡΠ°ΡšΠ΅ ΠΌΡ€Π΅ΠΆΠ½ΠΈΡ… ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°

Као ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ рСсурси, ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ су Π½Π°Π²Π΅Π΄Π΅Π½Π΅ Ρƒ Π˜ΠΠœΠ›-Ρƒ. Π£ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ испод, Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° balance приступ postgres:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.postgres
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: postgres
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: balance
  policyTypes:
  - Ingress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

(Π‘Π΅Π»Π΅ΡˆΠΊΠ°. трансл.: овај снимак Π΅ΠΊΡ€Π°Π½Π°, ΠΊΠ°ΠΎ ΠΈ сви слСдСћи слични, нијС Π½Π°ΠΏΡ€Π°Π²Ρ™Π΅Π½ ΠΊΠΎΡ€ΠΈΡˆΡ›Π΅ΡšΠ΅ΠΌ ΠΈΠ·Π²ΠΎΡ€Π½ΠΈΡ… ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ Π°Π»Π°Ρ‚Π°, Π²Π΅Ρ› ΠΏΠΎΠΌΠΎΡ›Ρƒ Π°Π»Π°Ρ‚Π° Π’ΡƒΡ„ΠΈΠ½ ΠžΡ€Ρ†Π°, који јС Ρ€Π°Π·Π²ΠΈΠ»Π° компанија Π°ΡƒΡ‚ΠΎΡ€Π° ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π½ΠΎΠ³ Ρ‡Π»Π°Π½ΠΊΠ° ΠΈ који сС помињС Π½Π° ΠΊΡ€Π°Ρ˜Ρƒ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΡ˜Π°Π»Π°.)

Π”Π° бистС дСфинисали сопствСну ΠΌΡ€Π΅ΠΆΠ½Ρƒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ, Π±ΠΈΡ›Π΅ Π²Π°ΠΌ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎ основно знањС ΠΎ Π˜ΠΠœΠ›-Ρƒ. Овај јСзик јС заснован Π½Π° ΡƒΠ²Π»Π°Ρ‡Π΅ΡšΡƒ (Π½Π°Π²Π΅Π΄Π΅Π½ΠΎΠΌ Ρ€Π°Π·ΠΌΠ°Ρ†ΠΈΠΌΠ°, Π° Π½Π΅ Ρ‚Π°Π±ΡƒΠ»Π°Ρ‚ΠΎΡ€ΠΈΠΌΠ°). Π£Π²ΡƒΡ‡Π΅Π½ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ ΠΏΡ€ΠΈΠΏΠ°Π΄Π° најблиТСм ΡƒΠ²ΡƒΡ‡Π΅Π½ΠΎΠΌ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Ρƒ ΠΈΠ·Π½Π°Π΄ њСга. Нови Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ листС ΠΏΠΎΡ‡ΠΈΡšΠ΅ Ρ†Ρ€Ρ‚ΠΈΡ†ΠΎΠΌ, сви остали Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ ΠΈΠΌΠ°Ρ˜Ρƒ ΠΎΠ±Π»ΠΈΠΊ ΠΊΡ™ΡƒΡ‡/врСдност.

ΠŸΠΎΡˆΡ‚ΠΎ стС описали ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ Ρƒ Π˜ΠΠœΠ›-Ρƒ, користитС ΠΊΡƒΠ±Π΅Ρ†Ρ‚Π»Π΄Π° Π³Π° ΠΊΡ€Π΅ΠΈΡ€Π°Ρ‚Π΅ Ρƒ кластСру:

kubectl create -f policy.yaml

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ ΡƒΠΊΡ™ΡƒΡ‡ΡƒΡ˜Π΅ Ρ‡Π΅Ρ‚ΠΈΡ€ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π°:

  1. podSelector: Π΄Π΅Ρ„ΠΈΠ½ΠΈΡˆΠ΅ ΠΏΠΎΠ΄ΠΎΠ²Π΅ Π½Π° којС ΡƒΡ‚ΠΈΡ‡Π΅ ΠΎΠ²Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° (Ρ†ΠΈΡ™Π΅Π²ΠΈ) - ΠΎΠ±Π°Π²Π΅Π·Π½ΠΎ;
  2. policyTypes: ΠΎΠ·Π½Π°Ρ‡Π°Π²Π° којС врстС ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° су ΡƒΠΊΡ™ΡƒΡ‡Π΅Π½Π΅ Ρƒ ΠΎΠ²ΠΎ: ΡƒΠ»Π°Π· ΠΈ/ΠΈΠ»ΠΈ ΠΈΠ·Π»Π°Π· - ΠΎΠΏΡ†ΠΈΠΎΠ½ΠΎ, Π°Π»ΠΈ ΠΏΡ€Π΅ΠΏΠΎΡ€ΡƒΡ‡ΡƒΡ˜Π΅ΠΌ Π΄Π° сС Ρ‚ΠΎ Сксплицитно Π½Π°Π²Π΅Π΄Π΅ Ρƒ свим ΡΠ»ΡƒΡ‡Π°Ρ˜Π΅Π²ΠΈΠΌΠ°;
  3. ingress: Π΄Π΅Ρ„ΠΈΠ½ΠΈΡˆΠ΅ Π΄ΠΎΠ·Π²ΠΎΡ™Π΅Π½ΠΎ Π΄ΠΎΠ»Π°Π·Π½ΠΈ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ Π΄ΠΎ Ρ†ΠΈΡ™Π½ΠΈΡ… ΠΌΠ°Ρ…ΡƒΠ½Π° - ΠΎΠΏΡ†ΠΈΠΎΠ½ΠΎ;
  4. egress: Π΄Π΅Ρ„ΠΈΠ½ΠΈΡˆΠ΅ Π΄ΠΎΠ·Π²ΠΎΡ™Π΅Π½ΠΎ ΠΎΠ΄Π»Π°Π·Π½ΠΈ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ ΠΈΠ· Ρ†ΠΈΡ™Π½ΠΈΡ… ΠΌΠ°Ρ…ΡƒΠ½Π° јС ΠΎΠΏΡ†ΠΈΠΎΠ½ΠΈ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€Π΅ΡƒΠ·Π΅Ρ‚ са Π²Π΅Π± Π»ΠΎΠΊΠ°Ρ†ΠΈΡ˜Π΅ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ (Π·Π°ΠΌΠ΅Π½ΠΈΠΎ сам role Π½Π° app), ΠΏΠΎΠΊΠ°Π·ΡƒΡ˜Π΅ ΠΊΠ°ΠΊΠΎ сС користС сва Ρ‡Π΅Ρ‚ΠΈΡ€ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π°:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: default
spec:
  podSelector:    # <<<
    matchLabels:
      app: db
  policyTypes:    # <<<
  - Ingress
  - Egress
  ingress:        # <<<
  - from:
    - ipBlock:
        cidr: 172.17.0.0/16
        except:
        - 172.17.1.0/24
    - namespaceSelector:
        matchLabels:
          project: myproject
    - podSelector:
        matchLabels:
          role: frontend
    ports:
    - protocol: TCP
      port: 6379
  egress:         # <<<
  - to:
    - ipBlock:
        cidr: 10.0.0.0/24
    ports:
    - protocol: TCP
      port: 5978

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности
Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

Π˜ΠΌΠ°Ρ˜Ρ‚Π΅ Π½Π° ΡƒΠΌΡƒ Π΄Π° сва Ρ‡Π΅Ρ‚ΠΈΡ€ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π° Π½Π΅ ΠΌΠΎΡ€Π°Ρ˜Ρƒ Π±ΠΈΡ‚ΠΈ ΡƒΠΊΡ™ΡƒΡ‡Π΅Π½Π°. Π’ΠΎ јС само ΠΎΠ±Π°Π²Π΅Π·Π½ΠΎ podSelector, Π΄Ρ€ΡƒΠ³ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ сС ΠΌΠΎΠ³Ρƒ користити ΠΏΠΎ ΠΆΠ΅Ρ™ΠΈ.

Ако изоставитС policyTypes, ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Ρ›Π΅ сС Ρ‚ΡƒΠΌΠ°Ρ‡ΠΈΡ‚ΠΈ Π½Π° слСдСћи Π½Π°Ρ‡ΠΈΠ½:

  • ΠŸΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½ΠΎ, прСтпоставља сС Π΄Π° Π΄Π΅Ρ„ΠΈΠ½ΠΈΡˆΠ΅ ΡƒΠ»Π°Π·Π½Ρƒ страну. Ако ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Ρ‚ΠΎ ΠΈΠ·Ρ€ΠΈΡ‡ΠΈΡ‚ΠΎ Π½Π΅ Π½Π°Π²ΠΎΠ΄ΠΈ, систСм Ρ›Π΅ прСтпоставити Π΄Π° јС сав ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ Π·Π°Π±Ρ€Π°ΡšΠ΅Π½.
  • ПонашањС Π½Π° излазној страни Π±ΠΈΡ›Π΅ ΠΎΠ΄Ρ€Π΅Ρ’Π΅Π½ΠΎ присуством ΠΈΠ»ΠΈ одсуством ΠΎΠ΄Π³ΠΎΠ²Π°Ρ€Π°Ρ˜ΡƒΡ›Π΅Π³ ΠΈΠ·Π»Π°Π·Π½ΠΎΠ³ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°.

Π”Π° бистС ΠΈΠ·Π±Π΅Π³Π»ΠΈ Π³Ρ€Π΅ΡˆΠΊΠ΅, ΠΏΡ€Π΅ΠΏΠΎΡ€ΡƒΡ‡ΡƒΡ˜Π΅ΠΌ ΡƒΠ²Π΅ΠΊ ΠΈΠ·Ρ€ΠΈΡ‡ΠΈΡ‚Π΅ policyTypes.

ΠŸΡ€Π΅ΠΌΠ° навСдСној Π»ΠΎΠ³ΠΈΡ†ΠΈ, Π°ΠΊΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ ingress ΠΈ / ΠΈΠ»ΠΈ egress изостављСно, ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Ρ›Π΅ ускратити сав ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ (ΠΏΠΎΠ³Π»Π΅Π΄Π°Ρ˜Ρ‚Π΅ β€žΠŸΡ€Π°Π²ΠΈΠ»ΠΎ ΡƒΠΊΠ»Π°ΡšΠ°ΡšΠ°β€œ Ρƒ наставку).

ΠŸΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° јС Π”ΠΎΠ·Π²ΠΎΠ»ΠΈ

Ако нијСдна ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° нијС дСфинисана, ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½ΠΎ Π΄ΠΎΠ·Π²ΠΎΡ™Π°Π²Π° сав ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜. Π‘Π²Π΅ ΠΌΠ°Ρ…ΡƒΠ½Π΅ ΠΌΠΎΠ³Ρƒ слободно Π΄Π° Ρ€Π°Π·ΠΌΠ΅ΡšΡƒΡ˜Ρƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ˜Π΅ ΠΌΠ΅Ρ’Ρƒ собом. Ово ΠΌΠΎΠΆΠ΅ ΠΈΠ·Π³Π»Π΅Π΄Π°Ρ‚ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ ΠΈΠ· бСзбСдноснС пСрспСктивС, Π°Π»ΠΈ Π·Π°ΠΏΠ°ΠΌΡ‚ΠΈΡ‚Π΅ Π΄Π° су ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΏΡ€Π²ΠΎΠ±ΠΈΡ‚Π½ΠΎ Π΄ΠΈΠ·Π°Ρ˜Π½ΠΈΡ€Π°Π»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Ρ€ΠΈ Π΄Π° ΠΎΠΌΠΎΠ³ΡƒΡ›ΠΈ интСропСрабилност Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°. ΠœΡ€Π΅ΠΆΠ½Π΅ смСрницС су Π΄ΠΎΠ΄Π°Ρ‚Π΅ каснијС.

НамСспацСс

ΠŸΡ€ΠΎΡΡ‚ΠΎΡ€ΠΈ ΠΈΠΌΠ΅Π½Π° су ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·Π°ΠΌ Π·Π° ΡΠ°Ρ€Π°Π΄ΡšΡƒ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅ΡΡƒ. Они су Π΄ΠΈΠ·Π°Ρ˜Π½ΠΈΡ€Π°Π½ΠΈ Π΄Π° ΠΈΠ·ΠΎΠ»ΡƒΡ˜Ρƒ Π»ΠΎΠ³ΠΈΡ‡ΠΊΠ° ΠΎΠΊΡ€ΡƒΠΆΠ΅ΡšΠ° јСдно ΠΎΠ΄ Π΄Ρ€ΡƒΠ³ΠΎΠ³, Π΄ΠΎΠΊ јС ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° ΠΈΠ·ΠΌΠ΅Ρ’Ρƒ простора ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½ΠΎ Π΄ΠΎΠ·Π²ΠΎΡ™Π΅Π½Π°.

Као ΠΈ Π²Π΅Ρ›ΠΈΠ½Π° ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ, ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ ΠΆΠΈΠ²Π΅ Ρƒ ΠΎΠ΄Ρ€Π΅Ρ’Π΅Π½ΠΎΠΌ имСнском простору. Π£ Π±Π»ΠΎΠΊΡƒ metadata ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ΄Ρ€Π΅Π΄ΠΈΡ‚ΠΈ којСм простору ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° ΠΏΡ€ΠΈΠΏΠ°Π΄Π°:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: my-namespace  # <<<
spec:
...

Ако простор ΠΈΠΌΠ΅Π½Π° нијС Сксплицитно Π½Π°Π²Π΅Π΄Π΅Π½ Ρƒ ΠΌΠ΅Ρ‚Π°ΠΏΠΎΠ΄Π°Ρ†ΠΈΠΌΠ°, систСм Ρ›Π΅ користити простор ΠΈΠΌΠ΅Π½Π° Π½Π°Π²Π΅Π΄Π΅Π½ Ρƒ ΠΊΡƒΠ±Π΅Ρ†Ρ‚Π» (ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½ΠΎ namespace=default):

kubectl apply -n my-namespace -f namespace.yaml

ΠŸΡ€Π΅ΠΏΠΎΡ€ΡƒΡ‡ΡƒΡ˜Π΅ΠΌ Сксплицитно Π½Π°Π²Π΅Π΄ΠΈΡ‚Π΅ простор ΠΈΠΌΠ΅Π½Π°, осим Π°ΠΊΠΎ Π½Π΅ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ која Ρ†ΠΈΡ™Π° вишС имСнских простора одјСдном.

Основни Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ podSelector Ρƒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΡ†ΠΈ Ρ›Π΅ ΠΈΠ·Π°Π±Ρ€Π°Ρ‚ΠΈ ΠΏΠΎΠ΄ΠΎΠ²Π΅ ΠΈΠ· имСнског простора ΠΊΠΎΠΌΠ΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° ΠΏΡ€ΠΈΠΏΠ°Π΄Π° (Π·Π°Π±Ρ€Π°ΡšΠ΅Π½ јС приступ ΠΏΠΎΠ΄ΠΎΠ²ΠΈΠΌΠ° ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠ³ имСнског простора).

Π‘Π»ΠΈΡ‡Π½ΠΎ, подБСлСцторс Ρƒ ΡƒΠ»Π°Π·Π½ΠΈΠΌ ΠΈ ΠΈΠ·Π»Π°Π·Π½ΠΈΠΌ Π±Π»ΠΎΠΊΠΎΠ²ΠΈΠΌΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΠΈΡ€Π° само ΠΏΠΎΠ΄ΠΎΠ²Π΅ ΠΈΠ· сопствСног имСнског простора, осим Π°ΠΊΠΎ ΠΈΡ…, Π½Π°Ρ€Π°Π²Π½ΠΎ, Π½Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½ΡƒΡ˜Π΅Ρ‚Π΅ са namespaceSelector (ΠΎ Ρ‚ΠΎΠΌΠ΅ Ρ›Π΅ Π±ΠΈΡ‚ΠΈ Ρ€Π΅Ρ‡ΠΈ Ρƒ ΠΎΠ΄Π΅Ρ™ΠΊΡƒ β€žΠ€ΠΈΠ»Ρ‚Ρ€ΠΈΡ€Π°Ρ˜ ΠΏΠΎ имСнским просторима ΠΈ ΠΏΠΎΠ΄ΠΎΠ²ΠΈΠΌΠ°β€œ).

ΠŸΡ€Π°Π²ΠΈΠ»Π° имСновања ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅

Називи смСрница су Ρ˜Π΅Π΄ΠΈΠ½ΡΡ‚Π²Π΅Π½ΠΈ Ρƒ ΠΎΠΊΠ²ΠΈΡ€Ρƒ истог имСнског простора. НС ΠΌΠΎΠ³Ρƒ ΠΏΠΎΡΡ‚ΠΎΡ˜Π°Ρ‚ΠΈ Π΄Π²Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ са истим ΠΈΠΌΠ΅Π½ΠΎΠΌ Ρƒ истом простору, Π°Π»ΠΈ ΠΌΠΎΠ³Ρƒ ΠΏΠΎΡΡ‚ΠΎΡ˜Π°Ρ‚ΠΈ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ са истим ΠΈΠΌΠ΅Π½ΠΎΠΌ Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΡ‚ΠΈΠΌ просторима. Ово јС корисно ΠΊΠ°Π΄Π° ΠΆΠ΅Π»ΠΈΡ‚Π΅ Π΄Π° ΠΏΠΎΠ½ΠΎΠ²ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅ исту ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ Π½Π° вишС простора.

ПосСбно ΠΌΠΈ сС свиђа јСдна ΠΎΠ΄ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° имСновања. Π‘Π°ΡΡ‚ΠΎΡ˜ΠΈ сС ΠΎΠ΄ комбиновања ΠΈΠΌΠ΅Π½Π° имСнског простора са Ρ†ΠΈΡ™Π½ΠΈΠΌ ΠΏΠΎΠ΄ΠΎΠ²ΠΈΠΌΠ°. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.postgres  # <<<
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: postgres
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: admin
  policyTypes:
  - Ingress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

Π•Ρ‚ΠΈΠΊΠ΅Ρ‚Π΅

ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΎΠ±Ρ˜Π΅ΠΊΡ‚ΠΈΠΌΠ°, ΠΊΠ°ΠΎ ΡˆΡ‚ΠΎ су ΠΏΠΎΠ΄ΠΎΠ²ΠΈ ΠΈ простори ΠΈΠΌΠ΅Π½Π°, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚ΠΈ ΠΏΡ€ΠΈΠ»Π°Π³ΠΎΡ’Π΅Π½Π΅ ΠΎΠ·Π½Π°ΠΊΠ΅. ОзнакС (Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚Π΅ - ΠΎΠ·Π½Π°ΠΊΠ΅) су Π΅ΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ‚ ΠΎΠ·Π½Π°ΠΊΠ°ΠΌΠ° Ρƒ ΠΎΠ±Π»Π°ΠΊΡƒ. ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ смСрницС користС ΠΎΠ·Π½Π°ΠΊΠ΅ Π·Π° ΠΈΠ·Π±ΠΎΡ€ подсна којС сС ΠΏΡ€ΠΈΠΌΠ΅ΡšΡƒΡ˜Ρƒ:

podSelector:
  matchLabels:
    role: db

… ΠΈΠ»ΠΈ имСнских просторана којС сС ΠΏΡ€ΠΈΠΌΠ΅ΡšΡƒΡ˜Ρƒ. Овај ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π±ΠΈΡ€Π° свС ΠΏΠΎΠ΄ΠΎΠ²Π΅ Ρƒ имСнским просторима са ΠΎΠ΄Π³ΠΎΠ²Π°Ρ€Π°Ρ˜ΡƒΡ›ΠΈΠΌ ΠΎΠ·Π½Π°ΠΊΠ°ΠΌΠ°:

namespaceSelector:
  matchLabels:
    project: myproject

ЈСдно ΡƒΠΏΠΎΠ·ΠΎΡ€Π΅ΡšΠ΅: ΠΏΡ€ΠΈΠ»ΠΈΠΊΠΎΠΌ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π΅ namespaceSelector ΡƒΠ²Π΅Ρ€ΠΈΡ‚Π΅ сС Π΄Π° простори ΠΈΠΌΠ΅Π½Π° којС ΠΈΠ·Π°Π±Π΅Ρ€Π΅Ρ‚Π΅ садрТС исправну ΠΎΠ·Π½Π°ΠΊΡƒ. Π˜ΠΌΠ°Ρ˜Ρ‚Π΅ Π½Π° ΡƒΠΌΡƒ Π΄Π° ΡƒΠ³Ρ€Π°Ρ’Π΅Π½ΠΈ простори ΠΈΠΌΠ΅Π½Π° ΠΊΠ°ΠΎ ΡˆΡ‚ΠΎ су default ΠΈ kube-system, ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½ΠΎ Π½Π΅ садрТС ΠΎΠ·Π½Π°ΠΊΠ΅.

ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ΄Π°Ρ‚ΠΈ ΠΎΠ·Π½Π°ΠΊΡƒ Ρƒ простор ΠΎΠ²Π°ΠΊΠΎ:

kubectl label namespace default namespace=default

Π˜ΡΡ‚ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½ΠΎ, имСнски простор Ρƒ ΠΎΠ΄Π΅Ρ™ΠΊΡƒ metadata Ρ‚Ρ€Π΅Π±Π° Π΄Π° сС односи Π½Π° стварно ΠΈΠΌΠ΅ простора, Π° Π½Π΅ Π½Π° ΠΎΠ·Π½Π°ΠΊΡƒ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: default   # <<<
spec:
...

Π˜Π·Π²ΠΎΡ€ ΠΈ ΠΎΠ΄Ρ€Π΅Π΄ΠΈΡˆΡ‚Π΅

ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Π·Π°ΡˆΡ‚ΠΈΡ‚Π½ΠΎΠ³ Π·ΠΈΠ΄Π° сС ΡΠ°ΡΡ‚ΠΎΡ˜ΠΈ ΠΎΠ΄ ΠΏΡ€Π°Π²ΠΈΠ»Π° са ΠΈΠ·Π²ΠΎΡ€ΠΈΠΌΠ° ΠΈ ΠΎΠ΄Ρ€Π΅Π΄ΠΈΡˆΡ‚ΠΈΠΌΠ°. ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ смСрницС сС Π΄Π΅Ρ„ΠΈΠ½ΠΈΡˆΡƒ Π·Π° Ρ†ΠΈΡ™ – скуп ΠΏΠΎΠ΄ΠΎΠ²Π° Π½Π° којС сС ΠΏΡ€ΠΈΠΌΠ΅ΡšΡƒΡ˜Ρƒ – Π° Π·Π°Ρ‚ΠΈΠΌ ΠΏΠΎΡΡ‚Π°Π²Ρ™Π°Ρ˜Ρƒ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π·Π° ΡƒΠ»Π°Π·Π½ΠΈ ΠΈ/ΠΈΠ»ΠΈ ΠΈΠ·Π»Π°Π·Π½ΠΈ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜. Π£ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Ρ†ΠΈΡ™ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Ρ›Π΅ Π±ΠΈΡ‚ΠΈ сви ΠΏΠΎΠ΄ΠΎΠ²ΠΈ Ρƒ имСнском простору default са Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΎΠΌ са ΠΊΡ™ΡƒΡ‡Π΅ΠΌ app ΠΈ Π·Π½Π°Ρ‡Π΅ΡšΠ΅ db:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: db   # <<<
  policyTypes:
  - Ingress
  - Egress
  ingress:
  - from:
    - ipBlock:
        cidr: 172.17.0.0/16
        except:
        - 172.17.1.0/24
    - namespaceSelector:
        matchLabels:
          project: myproject
    - podSelector:
        matchLabels:
          role: frontend
    ports:
    - protocol: TCP
      port: 6379
  egress:
  - to:
    - ipBlock:
        cidr: 10.0.0.0/24
    ports:
    - protocol: TCP
      port: 5978

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности
Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

ΠŸΠΎΠ΄ΠΎΠ΄Π΅Ρ™Π°ΠΊ ingress Ρƒ овој ΠΏΠΎΠ»ΠΈΡ‚ΠΈΡ†ΠΈ, ΠΎΡ‚Π²Π°Ρ€Π° Π΄ΠΎΠ»Π°Π·Π½ΠΈ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ ΠΊΠ° Ρ†ΠΈΡ™Π½ΠΈΠΌ ΠΏΠΎΠ΄ΠΎΠ²ΠΈΠΌΠ°. Π”Ρ€ΡƒΠ³ΠΈΠΌ Ρ€Π΅Ρ‡ΠΈΠΌΠ°, ΡƒΠ»Π°Π· јС ΠΈΠ·Π²ΠΎΡ€, Π° Ρ†ΠΈΡ™ ΠΎΠ΄Π³ΠΎΠ²Π°Ρ€Π°Ρ˜ΡƒΡ›Π΅ ΠΎΠ΄Ρ€Π΅Π΄ΠΈΡˆΡ‚Π΅. Π˜ΡΡ‚ΠΎ Ρ‚Π°ΠΊΠΎ, ΠΈΠ·Π»Π°Π· јС ΠΎΠ΄Ρ€Π΅Π΄ΠΈΡˆΡ‚Π΅, Π° Ρ†ΠΈΡ™ јС њСгов ΠΈΠ·Π²ΠΎΡ€.

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

Ово јС Π΅ΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ‚Π½ΠΎ Π΄Π²Π° ΠΏΡ€Π°Π²ΠΈΠ»Π° Π·Π°ΡˆΡ‚ΠΈΡ‚Π½ΠΎΠ³ Π·ΠΈΠ΄Π°: Π£Π»Π°Π· β†’ Π¦ΠΈΡ™; Π¦ΠΈΡ™ β†’ Излазак.

Излаз ΠΈ ДНБ (Π²Π°ΠΆΠ½ΠΎ!)

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π°Π²Π°ΡšΠ΅ΠΌ ΠΎΠ΄Π»Π°Π·Π½ΠΎΠ³ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜Π°, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ посСбну ΠΏΠ°ΠΆΡšΡƒ Π½Π° ДНБ - ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ користи ΠΎΠ²Ρƒ услугу Π·Π° ΠΌΠ°ΠΏΠΈΡ€Π°ΡšΠ΅ услуга Π½Π° ИП адрСсС. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€, слСдСћа смСрница Π½Π΅Ρ›Π΅ Ρ€Π°Π΄ΠΈΡ‚ΠΈ Ρ˜Π΅Ρ€ нистС Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Ρƒ balance приступ ДНБ-Ρƒ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.balance
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: balance
  egress:
  - to:
    - podSelector:
        matchLabels:
          app: postgres
  policyTypes:
  - Egress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

ΠœΠΎΠΆΠ΅Ρ‚Π΅ Ρ‚ΠΎ ΠΏΠΎΠΏΡ€Π°Π²ΠΈΡ‚ΠΈ ΠΎΡ‚Π²Π°Ρ€Π°ΡšΠ΅ΠΌ приступа ДНБ сСрвису:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.balance
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: balance
  egress:
  - to:
    - podSelector:
        matchLabels:
          app: postgres
  - to:               # <<<
    ports:            # <<<
    - protocol: UDP   # <<<
      port: 53        # <<<
  policyTypes:
  - Egress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

ПослСдњи Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ to јС ΠΏΡ€Π°Π·Π°Π½, ΠΏΠ° стога ΠΈΠ½Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π±ΠΈΡ€Π° сви ΠΏΠΎΠ΄ΠΎΠ²ΠΈ Ρƒ свим имСнским просторима, Π΄ΠΎΠ·Π²ΠΎΡ™Π°Π²Π°Ρ˜ΡƒΡ›ΠΈ balance ΡˆΠ°Ρ™ΠΈΡ‚Π΅ ДНБ ΡƒΠΏΠΈΡ‚Π΅ ΠΎΠ΄Π³ΠΎΠ²Π°Ρ€Π°Ρ˜ΡƒΡ›ΠΎΡ˜ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ услузи (ΠΎΠ±ΠΈΡ‡Π½ΠΎ Ρ€Π°Π΄ΠΈ Ρƒ простору kube-system).

Овај приступ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡˆΠ΅, ΠΊΠ°ΠΊΠΎ Π³ΠΎΠ΄ ΠΏΡ€Π΅Ρ‚Π΅Ρ€Π°Π½ΠΎ попустљив ΠΈ нСсигуран, Ρ˜Π΅Ρ€ ΠΎΠΌΠΎΠ³ΡƒΡ›Π°Π²Π° Π΄Π° сС ДНБ ΡƒΠΏΠΈΡ‚ΠΈ усмСрС Π²Π°Π½ кластСра.

ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π³Π° ΠΏΠΎΠ±ΠΎΡ™ΡˆΠ°Ρ‚ΠΈ Ρƒ Ρ‚Ρ€ΠΈ узастопна ΠΊΠΎΡ€Π°ΠΊΠ°.

1. Π”ΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚Π΅ само ДНБ ΡƒΠΏΠΈΡ‚Π΅ ΡƒΠ½ΡƒΡ‚Π°Ρ€ кластСр додавањСм namespaceSelector:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.balance
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: balance
  egress:
  - to:
    - podSelector:
        matchLabels:
          app: postgres
  - to:
    - namespaceSelector: {} # <<<
    ports:
    - protocol: UDP
      port: 53
  policyTypes:
  - Egress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

2. Π”ΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚Π΅ ДНБ ΡƒΠΏΠΈΡ‚Π΅ само ΡƒΠ½ΡƒΡ‚Π°Ρ€ имСнског простора kube-system.

Π”Π° бистС Ρ‚ΠΎ ΡƒΡ€Π°Π΄ΠΈΠ»ΠΈ, ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎ јС Π΄Π° Π΄ΠΎΠ΄Π°Ρ‚Π΅ ΠΎΠ·Π½Π°ΠΊΡƒ имСнском простору kube-system: kubectl label namespace kube-system namespace=kube-system - ΠΈ Π·Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Ρ‚ΠΎ Ρƒ ΠΊΠΎΡ€ΠΈΡˆΡ›Π΅ΡšΡƒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ namespaceSelector:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.balance
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: balance
  egress:
  - to:
    - podSelector:
        matchLabels:
          app: postgres
  - to:
    - namespaceSelector:         # <<<
        matchLabels:             # <<<
          namespace: kube-system # <<<
    ports:
    - protocol: UDP
      port: 53
  policyTypes:
  - Egress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

3. ΠŸΠ°Ρ€Π°Π½ΠΎΠΈΡ‡Π½ΠΈ Ρ™ΡƒΠ΄ΠΈ ΠΌΠΎΠ³Ρƒ ΠΈΡ›ΠΈ још Π΄Π°Ρ™Π΅ ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΠΈ ДНБ ΡƒΠΏΠΈΡ‚Π΅ Π½Π° ΠΎΠ΄Ρ€Π΅Ρ’Π΅Π½Ρƒ ДНБ услугу kube-system. ΠžΠ΄Π΅Ρ™Π°ΠΊ β€žΠ€ΠΈΠ»Ρ‚Ρ€ΠΈΡ€Π°Ρ˜ ΠΏΠΎ имСнским просторима И ΠΏΠΎΠ΄ΠΎΠ²ΠΈΠΌΠ°β€œ Ρ›Π΅ Π²Π°ΠΌ Ρ€Π΅Ρ›ΠΈ ΠΊΠ°ΠΊΠΎ Π΄Π° Ρ‚ΠΎ постигнСтС.

Π”Ρ€ΡƒΠ³Π° ΠΎΠΏΡ†ΠΈΡ˜Π° јС Π΄Π° сС ДНБ Ρ€Π΅ΡˆΠΈ Π½Π° Π½ΠΈΠ²ΠΎΡƒ имСнског простора. Π£ ΠΎΠ²ΠΎΠΌ ΡΠ»ΡƒΡ‡Π°Ρ˜Ρƒ, Π½Π΅Ρ›Π΅ Ρ‚Ρ€Π΅Π±Π°Ρ‚ΠΈ Π΄Π° сС ΠΎΡ‚Π²Π°Ρ€Π° Π·Π° сваку услугу:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.dns
  namespace: default
spec:
  podSelector: {} # <<<
  egress:
  - to:
    - namespaceSelector: {}
    ports:
    - protocol: UDP
      port: 53
  policyTypes:
  - Egress

Prazan podSelector Π±ΠΈΡ€Π° свС ΠΏΠΎΠ΄ΠΎΠ²Π΅ Ρƒ имСнском простору.

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

ΠŸΡ€Π²ΠΎ ΠΏΠΎΠ΄ΡƒΠ΄Π°Ρ€Π°ΡšΠ΅ ΠΈ рСдослСд ΠΏΡ€Π°Π²ΠΈΠ»Π°

Π£ ΠΊΠΎΠ½Π²Π΅Π½Ρ†ΠΈΠΎΠ½Π°Π»Π½ΠΈΠΌ Π·Π°ΡˆΡ‚ΠΈΡ‚Π½ΠΈΠΌ Π·ΠΈΠ΄ΠΎΠ²ΠΈΠΌΠ°, Π°ΠΊΡ†ΠΈΡ˜Π° (Π”ΠΎΠ·Π²ΠΎΠ»ΠΈ ΠΈΠ»ΠΈ Одбиј) Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚Ρƒ јС ΠΎΠ΄Ρ€Π΅Ρ’Π΅Π½Π° ΠΏΡ€Π²ΠΈΠΌ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎΠΌ којС ΠΎΠ½ Π·Π°Π΄ΠΎΠ²ΠΎΡ™Π°Π²Π°. Π£ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅ΡΡƒ рСдослСд ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° нијС Π±ΠΈΡ‚Π°Π½.

ΠŸΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½ΠΎ, ΠΊΠ°Π΄Π° нијС постављСна нијСдна ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°, ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° ΠΈΠ·ΠΌΠ΅Ρ’Ρƒ ΠΏΠΎΠ΄ΠΎΠ²Π° јС Π΄ΠΎΠ·Π²ΠΎΡ™Π΅Π½Π° ΠΈ ΠΎΠ½ΠΈ ΠΌΠΎΠ³Ρƒ слободно Π΄Π° Ρ€Π°Π·ΠΌΠ΅ΡšΡƒΡ˜Ρƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ˜Π΅. ЈСдном ΠΊΠ°Π΄Π° ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ Π΄Π° Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡˆΠ΅Ρ‚Π΅ смСрницС, свака Π³Ρ€ΡƒΠΏΠ° Π½Π° ΠΊΠΎΡ˜Ρƒ ΡƒΡ‚ΠΈΡ‡Π΅ Π±Π°Ρ€ јСдна ΠΎΠ΄ ΡšΠΈΡ… ΠΏΠΎΡΡ‚Π°Ρ˜Π΅ ΠΈΠ·ΠΎΠ»ΠΎΠ²Π°Π½Π° Ρƒ складу са Π΄ΠΈΡΡ˜ΡƒΠ½Ρ†ΠΈΡ˜ΠΎΠΌ (Π»ΠΎΠ³ΠΈΡ‡ΠΊΠΎ Π˜Π›Π˜) свих смСрница којС су Π³Π° ΠΎΠ΄Π°Π±Ρ€Π°Π»Π΅. Подови Π½Π° којС Π½Π΅ ΡƒΡ‚ΠΈΡ‡Π΅ нијСдна ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° ΠΎΡΡ‚Π°Ρ˜Ρƒ ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ΠΈ.

Ово понашањС ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚ΠΈ ΠΏΠΎΠΌΠΎΡ›Ρƒ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΡƒΠΊΠ»Π°ΡšΠ°ΡšΠ°.

ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ скидања (β€žΠžΠ΄Π±ΠΈΡ˜β€œ)

Π‘ΠΌΠ΅Ρ€Π½ΠΈΡ†Π΅ Π·Π°ΡˆΡ‚ΠΈΡ‚Π½ΠΎΠ³ Π·ΠΈΠ΄Π° ΠΎΠ±ΠΈΡ‡Π½ΠΎ ΠΎΠ΄Π±ΠΈΡ˜Π°Ρ˜Ρƒ сваки ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ који нијС ΠΈΠ·Ρ€ΠΈΡ‡ΠΈΡ‚ΠΎ Π΄ΠΎΠ·Π²ΠΎΡ™Π΅Π½.

Π£ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅ΡΡƒ Π½Π΅ΠΌΠ° Π°ΠΊΡ†ΠΈΡ˜Π΅ одбијања, ΠΌΠ΅Ρ’ΡƒΡ‚ΠΈΠΌ, сличан Π΅Ρ„Π΅ΠΊΠ°Ρ‚ сС ΠΌΠΎΠΆΠ΅ постићи Ρ€Π΅Π΄ΠΎΠ²Π½ΠΎΠΌ (пСрмисивном) ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΌ ΠΈΠ·Π±ΠΎΡ€ΠΎΠΌ ΠΏΡ€Π°Π·Π½Π΅ Π³Ρ€ΡƒΠΏΠ΅ ΠΈΠ·Π²ΠΎΡ€Π½ΠΈΡ… ΠΏΠΎΠ΄ΠΎΠ²Π° (ΡƒΠ»Π°Π·):

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: deny-all
  namespace: default
spec:
  podSelector: {}
  policyTypes:
  - Ingress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

Ова ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Π±ΠΈΡ€Π° свС ΠΏΠΎΠ΄ΠΎΠ²Π΅ Ρƒ имСнском простору ΠΈ оставља ΡƒΠ»Π°Π· нСдСфинисаним, ΠΎΠ΄Π±ΠΈΡ˜Π°Ρ˜ΡƒΡ›ΠΈ сав Π΄ΠΎΠ»Π°Π·Π½ΠΈ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜.

На сличан Π½Π°Ρ‡ΠΈΠ½ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΠΈ сав ΠΎΠ΄Π»Π°Π·Π½ΠΈ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ ΠΈΠ· имСнског простора:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: deny-all-egress
  namespace: default
spec:
  podSelector: {}
  policyTypes:
  - Egress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ ΠΏΠ°ΠΆΡšΡƒ Π½Π° Ρ‚ΠΎ свС Π΄ΠΎΠ΄Π°Ρ‚Π½Π΅ смСрницС којС Π΄ΠΎΠ·Π²ΠΎΡ™Π°Π²Π°Ρ˜Ρƒ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ ΠΊΠ° ΠΏΠΎΠ΄ΠΎΠ²ΠΈΠΌΠ° Ρƒ имСнском простору ΠΈΠΌΠ°Ρ›Π΅ прСдност Π½Π°Π΄ ΠΎΠ²ΠΈΠΌ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎΠΌ (слично Π΄ΠΎΠ΄Π°Π²Π°ΡšΡƒ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π΄ΠΎΠ·Π²ΠΎΠ»Π΅ ΠΏΡ€Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π·Π°Π±Ρ€Π°Π½Π΅ Ρƒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ˜ΠΈ Π·Π°ΡˆΡ‚ΠΈΡ‚Π½ΠΎΠ³ Π·ΠΈΠ΄Π°).

Π”ΠΎΠ·Π²ΠΎΠ»ΠΈ свС (Π‘ΠΈΠ»ΠΎ који-Π±ΠΈΠ»ΠΎ-Π±ΠΈΠ»ΠΎ-допусти)

Π”Π° бистС ΠΊΡ€Π΅ΠΈΡ€Π°Π»ΠΈ смСрницу Π”ΠΎΠ·Π²ΠΎΠ»ΠΈ свС, ΠΌΠΎΡ€Π°Ρ‚Π΅ Π΄Π° Π΄ΠΎΠΏΡƒΠ½ΠΈΡ‚Π΅ Π³ΠΎΡ€ΡšΡƒ смСрницу Π·Π°Π±Ρ€Π°Π½Π΅ са ΠΏΡ€Π°Π·Π½ΠΈΠΌ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΎΠΌ ingress:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-all
  namespace: default
spec:
  podSelector: {}
  ingress: # <<<
  - {}     # <<<
  policyTypes:
  - Ingress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

ΠžΠΌΠΎΠ³ΡƒΡ›Π°Π²Π° приступ ΠΈΠ· свС ΠΏΠΎΠ΄ΠΎΠ²Π΅ Ρƒ свим имСнским просторима (ΠΈ свС ИП адрСсС) Π½Π° Π±ΠΈΠ»ΠΎ који ΠΏΠΎΠ΄ Ρƒ имСнском простору default. Ово понашањС јС ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½ΠΎ ΠΎΠΌΠΎΠ³ΡƒΡ›Π΅Π½ΠΎ, Ρ‚Π°ΠΊΠΎ Π΄Π° Π³Π° ΠΎΠ±ΠΈΡ‡Π½ΠΎ Π½Π΅ Ρ‚Ρ€Π΅Π±Π° Π΄Π°Ρ™Π΅ дСфинисати. ΠœΠ΅Ρ’ΡƒΡ‚ΠΈΠΌ, ΠΏΠΎΠ½Π΅ΠΊΠ°Π΄ Ρ›Π΅Ρ‚Π΅ ΠΌΠΎΠΆΠ΄Π° ΠΌΠΎΡ€Π°Ρ‚ΠΈ Π΄Π° ΠΏΡ€ΠΈΠ²Ρ€Π΅ΠΌΠ΅Π½ΠΎ ΠΎΠ½Π΅ΠΌΠΎΠ³ΡƒΡ›ΠΈΡ‚Π΅ Π½Π΅ΠΊΠ΅ спСцифичнС Π΄ΠΎΠ·Π²ΠΎΠ»Π΅ Π΄Π° бистС Π΄ΠΈΡ˜Π°Π³Π½ΠΎΡΡ‚ΠΈΠΊΠΎΠ²Π°Π»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ.

ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ сС ΠΌΠΎΠΆΠ΅ сузити Π΄Π° Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈ приступ само Π·Π° ΠΎΠ΄Ρ€Π΅Ρ’Π΅Π½ΠΈ скуп ΠΌΠ°Ρ…ΡƒΠ½Π° (app:balance) Ρƒ имСнском простору default:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-all-to-balance
  namespace: default
spec:
  podSelector:
    matchLabels:
      app: balance
  ingress: 
  - {}
  policyTypes:
  - Ingress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

Π‘Π»Π΅Π΄Π΅Ρ›Π΅ смСрницС Π΄ΠΎΠ·Π²ΠΎΡ™Π°Π²Π°Ρ˜Ρƒ сав ΡƒΠ»Π°Π·Π½ΠΈ ΠΈ ΠΈΠ·Π»Π°Π·Π½ΠΈ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜, ΡƒΠΊΡ™ΡƒΡ‡ΡƒΡ˜ΡƒΡ›ΠΈ приступ Π±ΠΈΠ»ΠΎ којој ИП адрСси Π²Π°Π½ кластСра:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-all
spec:
  podSelector: {}
  ingress:
  - {}
  egress:
  - {}
  policyTypes:
  - Ingress
  - Egress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности
Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

КомбиновањС вишС смСрница

ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ сС ΠΊΠΎΠΌΠ±ΠΈΠ½ΡƒΡ˜Ρƒ ΠΊΠΎΡ€ΠΈΡˆΡ›Π΅ΡšΠ΅ΠΌ Π»ΠΎΠ³ΠΈΡ‡ΠΊΠΎΠ³ Π˜Π›Π˜ Π½Π° Ρ‚Ρ€ΠΈ Π½ΠΈΠ²ΠΎΠ°; Π”ΠΎΠ·Π²ΠΎΠ»Π΅ свакС Π³Ρ€ΡƒΠΏΠ΅ су постављСнС Ρƒ складу са Ρ€Π°Π·Π΄Π²Π°Ρ˜Π°ΡšΠ΅ΠΌ свих смСрница којС Π½Π° њСга ΡƒΡ‚ΠΈΡ‡Ρƒ:

1. На ΠΏΠΎΡ™ΠΈΠΌΠ° from ΠΈ to ΠœΠΎΠ³Ρƒ сС дСфинисати Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° Π΅Π»Π΅ΠΌΠ΅Π½Π°Ρ‚Π° (сви сС ΠΊΠΎΠΌΠ±ΠΈΠ½ΡƒΡ˜Ρƒ ΠΏΠΎΠΌΠΎΡ›Ρƒ Π˜Π›Π˜):

  • namespaceSelector β€” Π±ΠΈΡ€Π° Ρ†Π΅ΠΎ имСнски простор;
  • podSelector β€” Π±ΠΈΡ€Π° ΠΌΠ°Ρ…ΡƒΠ½Π΅;
  • ipBlock β€” Π±ΠΈΡ€Π° ΠΏΠΎΠ΄ΠΌΡ€Π΅ΠΆΡƒ.

Π¨Ρ‚Π°Π²ΠΈΡˆΠ΅, Π±Ρ€ΠΎΡ˜ Π΅Π»Π΅ΠΌΠ΅Π½Π°Ρ‚Π° (Ρ‡Π°ΠΊ ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΈΡ…) Ρƒ ΠΏΠΎΠ΄ΠΎΠ΄Π΅Ρ™Ρ†ΠΈΠΌΠ° from/to нијС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ. Π‘Π²ΠΈ ΠΎΠ½ΠΈ Ρ›Π΅ Π±ΠΈΡ‚ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΎΠ²Π°Π½ΠΈ Π»ΠΎΠ³ΠΈΡ‡ΠΊΠΈΠΌ Π˜Π›Π˜.

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.postgres
  namespace: default
spec:
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: indexer
    - podSelector:
        matchLabels:
          app: admin
  podSelector:
    matchLabels:
      app: postgres
  policyTypes:
  - Ingress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

2. Π£Π½ΡƒΡ‚Π°Ρ€ ΠΎΠ΄Π΅Ρ™ΠΊΠ° ΠΎ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΡ†ΠΈ ingress ΠΌΠΎΠΆΠ΅ ΠΈΠΌΠ°Ρ‚ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΅Π»Π΅ΠΌΠ΅Π½Π°Ρ‚Π° from (ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΎΠ²Π°Π½ΠΎ Π»ΠΎΠ³ΠΈΡ‡ΠΊΠΈΠΌ Π˜Π›Π˜). Π‘Π»ΠΈΡ‡Π½ΠΎ, ΠΎΠ΄Π΅Ρ™Π°ΠΊ egress ΠΌΠΎΠΆΠ΅ ΡƒΠΊΡ™ΡƒΡ‡ΠΈΠ²Π°Ρ‚ΠΈ ΠΌΠ½ΠΎΠ³Π΅ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π΅ to (Ρ‚Π°ΠΊΠΎΡ’Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΎΠ²Π°Π½ΠΎ Π΄ΠΈΡΡ˜ΡƒΠ½ΠΊΡ†ΠΈΡ˜ΠΎΠΌ):

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.postgres
  namespace: default
spec:
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: indexer
  - from:
    - podSelector:
        matchLabels:
          app: admin
  podSelector:
    matchLabels:
      app: postgres
  policyTypes:
  - Ingress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

3. Π Π°Π·Π»ΠΈΡ‡ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ сС Ρ‚Π°ΠΊΠΎΡ’Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½ΡƒΡ˜Ρƒ са Π»ΠΎΠ³ΠΈΡ‡ΠΊΠΈΠΌ Π˜Π›Π˜

Али ΠΊΠ°Π΄Π° ΠΈΡ… ΠΊΠΎΠΌΠ±ΠΈΠ½ΡƒΡ˜Π΅Ρ‚Π΅, ΠΏΠΎΡΡ‚ΠΎΡ˜ΠΈ јСдно ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅ΡšΠ΅ истакнуто Цхрис Π¦ΠΎΠΎΠ½Π΅ΠΈ: ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΠΎΠΆΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΎΠ²Π°Ρ‚ΠΈ само смСрницС са Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΡ‚ΠΈΠΌ policyTypes (Ingress ΠΈΠ»ΠΈ Egress). ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ којС Π΄Π΅Ρ„ΠΈΠ½ΠΈΡˆΡƒ ΡƒΠ»Π°Π· (ΠΈΠ»ΠΈ ΠΈΠ·Π»Π°Π·) Ρ›Π΅ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΠΈ јСдна Π΄Ρ€ΡƒΠ³Ρƒ.

Однос ΠΈΠ·ΠΌΠ΅Ρ’Ρƒ имСнских простора

ΠŸΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½ΠΎ, Π΄Π΅Ρ™Π΅ΡšΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ˜Π° ΠΈΠ·ΠΌΠ΅Ρ’Ρƒ имСнских простора јС Π΄ΠΎΠ·Π²ΠΎΡ™Π΅Π½ΠΎ. Ово сС ΠΌΠΎΠΆΠ΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚ΠΈ ΠΊΠΎΡ€ΠΈΡˆΡ›Π΅ΡšΠ΅ΠΌ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π°Π±Ρ€Π°Π½Π΅ која Ρ›Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΠΈ ΠΎΠ΄Π»Π°Π·Π½ΠΈ ΠΈ/ΠΈΠ»ΠΈ Π΄ΠΎΠ»Π°Π·Π½ΠΈ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ Ρƒ простор ΠΈΠΌΠ΅Π½Π° (ΠΏΠΎΠ³Π»Π΅Π΄Π°Ρ˜Ρ‚Π΅ β€žΠŸΡ€Π°Π²ΠΈΠ»ΠΎ ΡƒΠΊΠ»Π°ΡšΠ°ΡšΠ°β€œ ΠΈΠ·Π½Π°Π΄).

ЈСдном ΠΊΠ°Π΄Π° Π±Π»ΠΎΠΊΠΈΡ€Π°Ρ‚Π΅ приступ имСнском простору (ΠΏΠΎΠ³Π»Π΅Π΄Π°Ρ˜Ρ‚Π΅ β€žΠŸΡ€Π°Π²ΠΈΠ»ΠΎ ΡƒΠΊΠ»Π°ΡšΠ°ΡšΠ°β€œ ΠΈΠ·Π½Π°Π΄), ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚ΠΈ ΠΈΠ·ΡƒΠ·Π΅Ρ‚ΠΊΠ΅ ΠΎΠ΄ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ одбијања Ρ‚Π°ΠΊΠΎ ΡˆΡ‚ΠΎ Ρ›Π΅Ρ‚Π΅ Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΠΈ Π²Π΅Π·Π΅ ΠΈΠ· ΠΎΠ΄Ρ€Π΅Ρ’Π΅Π½ΠΎΠ³ имСнског простора користСћи namespaceSelector:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: database.postgres
  namespace: database
spec:
  podSelector:
    matchLabels:
      app: postgres
  ingress:
  - from:
    - namespaceSelector: # <<<
        matchLabels:
          namespace: default
  policyTypes:
  - Ingress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

Као Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚, сви ΠΏΠΎΠ΄ΠΎΠ²ΠΈ Ρƒ имСнском простору default ΠΈΠΌΠ°Ρ›Π΅ приступ подс postgres Ρƒ имСнском простору database. Али ΡˆΡ‚Π° Π°ΠΊΠΎ ΠΆΠ΅Π»ΠΈΡ‚Π΅ Π΄Π° ΠΎΡ‚Π²ΠΎΡ€ΠΈΡ‚Π΅ приступ postgres само ΠΎΠ΄Ρ€Π΅Ρ’Π΅Π½Π΅ ΠΏΠΎΠ΄ΠΎΠ²Π΅ Ρƒ имСнском простору default?

Π€ΠΈΠ»Ρ‚Ρ€ΠΈΡ€Π°Ρ˜Ρ‚Π΅ ΠΏΠΎ имСнским просторима ΠΈ ΠΏΠΎΠ΄ΠΎΠ²ΠΈΠΌΠ°

ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ Π²Π΅Ρ€Π·ΠΈΡ˜Π° 1.11 ΠΈ новијС Π²Π°ΠΌ ΠΎΠΌΠΎΠ³ΡƒΡ›Π°Π²Π°Ρ˜Ρƒ комбиновањС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° namespaceSelector ΠΈ podSelector користСћи Π»ΠΎΠ³ΠΈΡ‡ΠΊΠΎ И. Π’ΠΎ ΠΈΠ·Π³Π»Π΅Π΄Π° ΠΎΠ²Π°ΠΊΠΎ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: database.postgres
  namespace: database
spec:
  podSelector:
    matchLabels:
      app: postgres
  ingress:
  - from:
    - namespaceSelector:
        matchLabels:
          namespace: default
      podSelector: # <<<
        matchLabels:
          app: admin
  policyTypes:
  - Ingress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

Π—Π°ΡˆΡ‚ΠΎ сС ΠΎΠ²ΠΎ Ρ‚ΡƒΠΌΠ°Ρ‡ΠΈ ΠΊΠ°ΠΎ И умСсто ΡƒΠΎΠ±ΠΈΡ‡Π°Ρ˜Π΅Π½ΠΎΠ³ Π˜Π›Π˜?

Π˜ΠΌΠ°Ρ˜Ρ‚Π΅ Π½Π° ΡƒΠΌΡƒ Π΄Π° podSelector Π½Π΅ ΠΏΠΎΡ‡ΠΈΡšΠ΅ Ρ†Ρ€Ρ‚ΠΈΡ†ΠΎΠΌ. Π£ Π˜ΠΠœΠ›-Ρƒ Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈ Π΄Π° podSelector ΠΈ ΡΡ‚ΠΎΡ˜Π΅Ρ›ΠΈ ΠΏΡ€Π΅Π΄ њим namespaceSelector односС сС Π½Π° исти Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ листС. Π‘Ρ‚ΠΎΠ³Π° су ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΎΠ²Π°Π½ΠΈ са Π»ΠΎΠ³ΠΈΡ‡ΠΊΠΈΠΌ И.

Π”ΠΎΠ΄Π°Π²Π°ΡšΠ΅ Ρ†Ρ€Ρ‚ΠΈΡ†Π΅ ΠΏΡ€Π΅ podSelector Ρ€Π΅Π·ΡƒΠ»Ρ‚ΠΈΡ€Π°Ρ›Π΅ појавом Π½ΠΎΠ²ΠΎΠ³ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π° листС, који Ρ›Π΅ Π±ΠΈΡ‚ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΎΠ²Π°Π½ са ΠΏΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΈΠΌ namespaceSelector користСћи Π»ΠΎΠ³ΠΈΡ‡ΠΊΠΎ Π˜Π›Π˜.

Π”Π° бистС ΠΈΠ·Π°Π±Ρ€Π°Π»ΠΈ ΠΌΠ°Ρ…ΡƒΠ½Π΅ са ΠΎΠ΄Ρ€Π΅Ρ’Π΅Π½ΠΎΠΌ ΠΎΠ·Π½Π°ΠΊΠΎΠΌ Ρƒ свим имСнским просторима, унСситС ΠΏΡ€Π°Π·Π½ΠΎ namespaceSelector:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: database.postgres
  namespace: database
spec:
  podSelector:
    matchLabels:
      app: postgres
  ingress:
  - from:
    - namespaceSelector: {}
      podSelector:
        matchLabels:
          app: admin
  policyTypes:
  - Ingress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

Π’ΠΈΡˆΠ΅ Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚Π° сС ΡƒΠ΄Ρ€ΡƒΠΆΡƒΡ˜Π΅ са И

ΠŸΡ€Π°Π²ΠΈΠ»Π° Π·Π° Π·Π°ΡˆΡ‚ΠΈΡ‚Π½ΠΈ Π·ΠΈΠ΄ са вишС ΠΎΠ±Ρ˜Π΅ΠΊΠ°Ρ‚Π° (хостови, ΠΌΡ€Π΅ΠΆΠ΅, Π³Ρ€ΡƒΠΏΠ΅) сС ΠΊΠΎΠΌΠ±ΠΈΠ½ΡƒΡ˜Ρƒ ΠΊΠΎΡ€ΠΈΡˆΡ›Π΅ΡšΠ΅ΠΌ Π»ΠΎΠ³ΠΈΡ‡ΠΊΠΎΠ³ Π˜Π›Π˜. Π‘Π»Π΅Π΄Π΅Ρ›Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Ρ›Π΅ функционисати Π°ΠΊΠΎ сС ΠΈΠ·Π²ΠΎΡ€ ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΏΠΎΠ΄ΡƒΠ΄Π°Ρ€Π° Host_1 Π˜Π›Π˜ Host_2:

| Source | Destination | Service | Action |
| ----------------------------------------|
| Host_1 | Subnet_A    | HTTPS   | Allow  |
| Host_2 |             |         |        |
| ----------------------------------------|

Напротив, Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅ΡΡƒ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΡ‚Π΅ ΠΎΠ·Π½Π°ΠΊΠ΅ Ρƒ podSelector ΠΈΠ»ΠΈ namespaceSelector су ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΎΠ²Π°Π½ΠΈ са Π»ΠΎΠ³ΠΈΡ‡ΠΊΠΈΠΌ И. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€, слСдСћС ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Ρ›Π΅ ΠΈΠ·Π°Π±Ρ€Π°Ρ‚ΠΈ ΠΏΠΎΠ΄ΠΎΠ²Π΅ који ΠΈΠΌΠ°Ρ˜Ρƒ ΠΎΠ±Π΅ ΠΎΠ·Π½Π°ΠΊΠ΅, role=db И version=v2:

podSelector:
  matchLabels:
    role: db
    version: v2

Π˜ΡΡ‚Π° Π»ΠΎΠ³ΠΈΠΊΠ° сС ΠΏΡ€ΠΈΠΌΠ΅ΡšΡƒΡ˜Π΅ Π½Π° свС Ρ‚ΠΈΠΏΠΎΠ²Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°: Π±ΠΈΡ€Π°Ρ‡Π΅ Ρ†ΠΈΡ™Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅, сСлСкторС ΠΏΠΎΠ΄ ΠΈ Π±ΠΈΡ€Π°Ρ‡Π΅ простора ΠΈΠΌΠ΅Π½Π°.

ΠŸΠΎΠ΄ΠΌΡ€Π΅ΠΆΠ΅ ΠΈ ИП адрСсС (Π˜ΠŸΠ‘Π»ΠΎΡ†ΠΊΠΎΠ²ΠΈ)

Π—Π°ΡˆΡ‚ΠΈΡ‚Π½ΠΈ Π·ΠΈΠ΄ΠΎΠ²ΠΈ користС ВЛАН-ΠΎΠ²Π΅, ИП адрСсС ΠΈ ΠΏΠΎΠ΄ΠΌΡ€Π΅ΠΆΠ΅ Π΄Π° ΡΠ΅Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Ρ˜Ρƒ ΠΌΡ€Π΅ΠΆΡƒ.

Π£ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ-Ρƒ, ИП адрСсС сС аутоматски Π΄ΠΎΠ΄Π΅Ρ™ΡƒΡ˜Ρƒ ΠΏΠΎΠ΄ΠΎΠ²ΠΈΠΌΠ° ΠΈ ΠΌΠΎΠ³Ρƒ сС чСсто ΠΌΠ΅ΡšΠ°Ρ‚ΠΈ, Ρ‚Π°ΠΊΠΎ Π΄Π° сС ΠΎΠ·Π½Π°ΠΊΠ΅ користС Π·Π° ΠΈΠ·Π±ΠΎΡ€ ΠΌΠΎΠ΄ΡƒΠ»Π° ΠΈ имСнских простора Ρƒ ΠΌΡ€Π΅ΠΆΠ½ΠΈΠΌ смСрницама.

ΠŸΠΎΠ΄ΠΌΡ€Π΅ΠΆΠ΅ (ipBlocks) сС користС ΠΏΡ€ΠΈ ΡƒΠΏΡ€Π°Π²Ρ™Π°ΡšΡƒ Π΄ΠΎΠ»Π°Π·Π½ΠΈΠΌ (ΡƒΠ»Π°Π·Π½ΠΈΠΌ) ΠΈΠ»ΠΈ ΠΎΠ΄Π»Π°Π·Π½ΠΈΠΌ (ΠΈΠ·Π»Π°Π·Π½ΠΈΠΌ) спољним (сСвСр-Ρ˜ΡƒΠ³) Π²Π΅Π·Π°ΠΌΠ°. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠ²Π° смСрница сС ΠΎΡ‚Π²Π°Ρ€Π° Π·Π° свС ΠΏΠΎΠ΄ΠΎΠ²Π΅ ΠΈΠ· имСнског простора default приступ Π“ΠΎΠΎΠ³Π»Π΅ ДНБ сСрвису:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: egress-dns
  namespace: default
spec:
  podSelector: {}
  policyTypes:
  - Egress
  egress:
  - to:
    - ipBlock:
        cidr: 8.8.8.8/32
    ports:
    - protocol: UDP
      port: 53

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

ΠŸΡ€Π°Π·Π°Π½ сСлСктор ΠΏΠΎΠ΄ Ρƒ ΠΎΠ²ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ Π·Π½Π°Ρ‡ΠΈ β€žΠΈΠ·Π°Π±Π΅Ρ€ΠΈΡ‚Π΅ свС ΠΏΠΎΠ΄ΠΎΠ²Π΅ Ρƒ имСнском простору.

Ова ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Π΄ΠΎΠ·Π²ΠΎΡ™Π°Π²Π° приступ само 8.8.8.8; приступ Π±ΠΈΠ»ΠΎ којој Π΄Ρ€ΡƒΠ³ΠΎΡ˜ ИП адрСси јС Π·Π°Π±Ρ€Π°ΡšΠ΅Π½. Π”Π°ΠΊΠ»Π΅, Ρƒ ΡΡƒΡˆΡ‚ΠΈΠ½ΠΈ, Π±Π»ΠΎΠΊΠΈΡ€Π°Π»ΠΈ стС приступ ΠΈΠ½Ρ‚Π΅Ρ€Π½ΠΎΡ˜ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ДНБ услузи. Ако ΠΈ Π΄Π°Ρ™Π΅ ΠΆΠ΅Π»ΠΈΡ‚Π΅ Π΄Π° Π³Π° ΠΎΡ‚Π²ΠΎΡ€ΠΈΡ‚Π΅, Ρ‚ΠΎ ΠΈΠ·Ρ€ΠΈΡ‡ΠΈΡ‚ΠΎ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚Π΅.

ΠžΠ±ΠΈΡ‡Π½ΠΎ ipBlocks ΠΈ podSelectors сС мСђусобно ΠΈΡΠΊΡ™ΡƒΡ‡ΡƒΡ˜Ρƒ, ΠΏΠΎΡˆΡ‚ΠΎ сС ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅ ИП адрСсС ΠΏΠΎΠ΄ΠΎΠ²Π° Π½Π΅ користС Ρƒ ipBlocks. УказивањСм ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅ ИП ΠΏΠΎΠ΄, Π·Π°ΠΏΡ€Π°Π²ΠΎ Ρ›Π΅Ρ‚Π΅ Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΠΈ Π²Π΅Π·Π΅ са/са ΠΏΠΎΠ΄ΠΎΠ²Π° са ΠΎΠ²ΠΈΠΌ адрСсама. Π£ пракси, Π½Π΅Ρ›Π΅Ρ‚Π΅ Π·Π½Π°Ρ‚ΠΈ ΠΊΠΎΡ˜Ρƒ ИП адрСсу Π΄Π° користитС, Π·Π±ΠΎΠ³ Ρ‡Π΅Π³Π° ΠΈΡ… Π½Π΅ Π±ΠΈ Ρ‚Ρ€Π΅Π±Π°Π»ΠΎ користити Π·Π° ΠΎΠ΄Π°Π±ΠΈΡ€ ΠΏΠΎΠ΄ΠΎΠ²Π°.

Као ΠΊΠΎΠ½Ρ‚Ρ€Π°-ΠΏΡ€ΠΈΠΌΠ΅Ρ€, слСдСћа ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° ΡƒΠΊΡ™ΡƒΡ‡ΡƒΡ˜Π΅ свС ИП адрСсС ΠΈ стога Π΄ΠΎΠ·Π²ΠΎΡ™Π°Π²Π° приступ свим осталим ΠΏΠΎΠ΄ΠΎΠ²ΠΈΠΌΠ°:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: egress-any
  namespace: default
spec:
  podSelector: {}
  policyTypes:
  - Egress
  egress:
  - to:
    - ipBlock:
        cidr: 0.0.0.0/0

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚Π²ΠΎΡ€ΠΈΡ‚ΠΈ приступ само спољним ИП адрСсама, ΠΈΡΠΊΡ™ΡƒΡ‡ΡƒΡ˜ΡƒΡ›ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅ ИП адрСсС ΠΏΠΎΠ΄ΠΎΠ²Π°. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π°ΠΊΠΎ јС ΠΏΠΎΠ΄ΠΌΡ€Π΅ΠΆΠ° вашСг ΠΌΠΎΠ΄ΡƒΠ»Π° 10.16.0.0/14:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: egress-any
  namespace: default
spec:
  podSelector: {}
  policyTypes:
  - Egress
  egress:
  - to:
    - ipBlock:
        cidr: 0.0.0.0/0
        except:
        - 10.16.0.0/14

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

ΠŸΠΎΡ€Ρ‚ΠΎΠ²ΠΈ ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΈ

Подови ΠΎΠ±ΠΈΡ‡Π½ΠΎ ΡΠ»ΡƒΡˆΠ°Ρ˜Ρƒ јСдан ΠΏΠΎΡ€Ρ‚. Π’ΠΎ Π·Π½Π°Ρ‡ΠΈ Π΄Π° Ρ˜Π΅Π΄Π½ΠΎΡΡ‚Π°Π²Π½ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ навСсти Π±Ρ€ΠΎΡ˜Π΅Π²Π΅ ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π° Ρƒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°ΠΌΠ° ΠΈ оставити свС ΠΊΠ°ΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½ΠΎ. ΠœΠ΅Ρ’ΡƒΡ‚ΠΈΠΌ, ΠΏΡ€Π΅ΠΏΠΎΡ€ΡƒΡ‡ΡƒΡ˜Π΅ сС Π΄Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π±ΡƒΠ΄Ρƒ ΡˆΡ‚ΠΎ Ρ€Π΅ΡΡ‚Ρ€ΠΈΠΊΡ‚ΠΈΠ²Π½ΠΈΡ˜Π΅, Ρ‚Π°ΠΊΠΎ Π΄Π° Ρƒ Π½Π΅ΠΊΠΈΠΌ ΡΠ»ΡƒΡ‡Π°Ρ˜Π΅Π²ΠΈΠΌΠ° ΠΈ Π΄Π°Ρ™Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°Π²Π΅Π΄Π΅Ρ‚Π΅ ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π΅:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.postgres
  namespace: default
spec:
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: indexer
    - podSelector:
        matchLabels:
          app: admin
    ports:             # <<<
      - port: 443      # <<<
        protocol: TCP  # <<<
      - port: 80       # <<<
        protocol: TCP  # <<<
  podSelector:
    matchLabels:
      app: postgres
  policyTypes:
  - Ingress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

Π˜ΠΌΠ°Ρ˜Ρ‚Π΅ Π½Π° ΡƒΠΌΡƒ Π΄Π° сСлСктор ports односи сС Π½Π° свС Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π΅ Ρƒ Π±Π»ΠΎΠΊΡƒ to ΠΈΠ»ΠΈ from, који садрТи. Π”Π° бистС Π½Π°Π²Π΅Π»ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΡ‚Π΅ ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π΅ Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΡ‚Π΅ скуповС Π΅Π»Π΅ΠΌΠ΅Π½Π°Ρ‚Π°, ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ ingress ΠΈΠ»ΠΈ egress Π½Π° Π½Π΅ΠΊΠΎΠ»ΠΈΠΊΠΎ ΠΏΠΎΠ΄ΡΠ΅ΠΊΡ†ΠΈΡ˜Π° са to ΠΈΠ»ΠΈ from ΠΈ Ρƒ сваком рСгистру ваши ΠΏΠΎΡ€Ρ‚ΠΎΠ²ΠΈ:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default.postgres
  namespace: default
spec:
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: indexer
    ports:             # <<<
     - port: 443       # <<<
       protocol: TCP   # <<<
  - from:
    - podSelector:
        matchLabels:
          app: admin
    ports:             # <<<
     - port: 80        # <<<
       protocol: TCP   # <<<
  podSelector:
    matchLabels:
      app: postgres
  policyTypes:
  - Ingress

Π£Π²ΠΎΠ΄ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Π·Π° профСсионалцС Ρƒ области бСзбСдности

ΠŸΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ˜Π° ΠΏΠΎΡ€Ρ‚Π°:

  • Ако ΠΏΠΎΡ‚ΠΏΡƒΠ½ΠΎ изоставитС Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ†ΠΈΡ˜Ρƒ ΠΏΠΎΡ€Ρ‚Π° (ports), ΠΎΠ²ΠΎ Π·Π½Π°Ρ‡ΠΈ свС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ ΠΈ свС ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π΅;
  • Ако изоставитС Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ†ΠΈΡ˜Ρƒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° (protocol), Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈ ВЦП;
  • Ако изоставитС Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ†ΠΈΡ˜Ρƒ ΠΏΠΎΡ€Ρ‚Π° (port), ΠΎΠ²ΠΎ Π·Π½Π°Ρ‡ΠΈ свС ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π΅.

ΠΠ°Ρ˜Π±ΠΎΡ™Π° пракса: НС ΠΎΡΠ»Π°ΡšΠ°Ρ˜Ρ‚Π΅ сС Π½Π° ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½Π΅ врСдности, Сксплицитно Π½Π°Π²Π΅Π΄ΠΈΡ‚Π΅ ΡˆΡ‚Π° Π²Π°ΠΌ јС ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎ.

Π˜ΠΌΠ°Ρ˜Ρ‚Π΅ Π½Π° ΡƒΠΌΡƒ Π΄Π° ΠΌΠΎΡ€Π°Ρ‚Π΅ користити ΠΏΠΎΠ΄ ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π΅, Π° Π½Π΅ сСрвиснС ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π΅ (вишС ΠΎ Ρ‚ΠΎΠΌΠ΅ Ρƒ слСдСћСм ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„Ρƒ).

Π”Π° Π»ΠΈ су ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ дСфинисанС Π·Π° ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΈΠ»ΠΈ услугС?

Π’ΠΈΠΏΠΈΡ‡Π½ΠΎ, ΠΏΠΎΠ΄ΠΎΠ²ΠΈ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ-Ρƒ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ˜Ρƒ јСдни Π΄Ρ€ΡƒΠ³ΠΈΠΌΠ° ΠΏΡ€Π΅ΠΊΠΎ услугС - Π²ΠΈΡ€Ρ‚ΡƒΠ΅Π»Π½ΠΎΠ³ балансСра ΠΎΠΏΡ‚Π΅Ρ€Π΅Ρ›Π΅ΡšΠ° који прСусмСрава ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ Π½Π° ΠΏΠΎΠ΄ΠΎΠ²Π΅ који ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Ρ˜Ρƒ услугу. МоТда мислитС Π΄Π° ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡˆΡƒ приступ услугама, Π°Π»ΠΈ Ρ‚ΠΎ нијС ΡΠ»ΡƒΡ‡Π°Ρ˜. ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ смСрницС Ρ€Π°Π΄Π΅ Π½Π° ΠΏΠΎΡ€Ρ‚ΠΎΠ²ΠΈΠΌΠ° Π·Π° ΠΏΠΎΠ΄, Π° Π½Π΅ Π½Π° сСрвисним ΠΏΠΎΡ€Ρ‚ΠΎΠ²ΠΈΠΌΠ°.

На ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π°ΠΊΠΎ услуга ΡΠ»ΡƒΡˆΠ° ΠΏΠΎΡ€Ρ‚ 80, Π°Π»ΠΈ прСусмСрава ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ Π½Π° ΠΏΠΎΡ€Ρ‚ 8080 ΡΠ²ΠΎΡ˜ΠΈΡ… ΠΏΠΎΠ΄ΠΎΠ²Π°, ΠΌΠΎΡ€Π°Ρ‚Π΅ Π΄Π° Π½Π°Π²Π΅Π΄Π΅Ρ‚Π΅ Ρ‚Π°Ρ‡Π½ΠΎ 8080 Ρƒ ΠΌΡ€Π΅ΠΆΠ½ΠΎΡ˜ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΡ†ΠΈ.

Π’Π°ΠΊΠ°Π² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·Π°ΠΌ Ρ‚Ρ€Π΅Π±Π° сматрати Π½Π΅ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π½ΠΈΠΌ: Π°ΠΊΠΎ сС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ ΡƒΠ½ΡƒΡ‚Ρ€Π°ΡˆΡšΠ° структура услугС (Ρ‡ΠΈΡ˜ΠΈ ΠΏΠΎΡ€Ρ‚ΠΎΠ²ΠΈ ΡΠ»ΡƒΡˆΠ°Ρ˜Ρƒ), ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Ρ›Π΅ ΠΌΠΎΡ€Π°Ρ‚ΠΈ Π΄Π° сС Π°ΠΆΡƒΡ€ΠΈΡ€Π°Ρ˜Ρƒ.

Нови архитСктонски приступ користСћи Π‘Π΅Ρ€Π²ΠΈΡ†Π΅ ΠœΠ΅ΡΡ… (Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠ³Π»Π΅Π΄Π°Ρ˜Ρ‚Π΅ ΠΎ Π˜ΡΡ‚ΠΈΠΎ испод – ΠΏΡ€ΠΈΠ±Π». ΠΏΡ€Π΅Π²ΠΎΠ΄) ΠΎΠΌΠΎΠ³ΡƒΡ›Π°Π²Π° Π²Π°ΠΌ Π΄Π° сС носитС са ΠΎΠ²ΠΈΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΌ.

Π”Π° Π»ΠΈ јС ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎ рСгистровати ΠΈ Π˜Π½Π³Ρ€Π΅ΡΡ ΠΈ ЕгрСсс?

ΠšΡ€Π°Ρ‚Π°ΠΊ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡ€ јС Π΄Π°, Π΄Π° Π±ΠΈ ΠΏΠΎΠ΄ А ΠΌΠΎΠ³Π°ΠΎ Π΄Π° ΠΊΠΎΠΌΡƒΠ½ΠΈΡ†ΠΈΡ€Π° са ΠΌΠΎΠ΄ΡƒΠ»ΠΎΠΌ Π‘, ΠΌΠΎΡ€Π° ΠΌΡƒ Π±ΠΈΡ‚ΠΈ Π΄ΠΎΠ·Π²ΠΎΡ™Π΅Π½ΠΎ Π΄Π° ΠΊΡ€Π΅ΠΈΡ€Π° ΠΎΠ΄Π»Π°Π·Π½Ρƒ Π²Π΅Π·Ρƒ (Π·Π° ΠΎΠ²ΠΎ ΠΌΠΎΡ€Π°Ρ‚Π΅ Π΄Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡˆΠ΅Ρ‚Π΅ ΠΈΠ·Π»Π°Π·Π½Ρƒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ), Π° ΠΏΠΎΠ΄ Π‘ ΠΌΠΎΡ€Π° Π±ΠΈΡ‚ΠΈ Ρƒ ΡΡ‚Π°ΡšΡƒ Π΄Π° ΠΏΡ€ΠΈΡ…Π²Π°Ρ‚ΠΈ Π΄ΠΎΠ»Π°Π·Π½Ρƒ Π²Π΅Π·Ρƒ ( Π·Π° ΠΎΠ²ΠΎ Π²Π°ΠΌ јС, сходно Ρ‚ΠΎΠΌΠ΅, ΠΏΠΎΡ‚Ρ€Π΅Π±Π½Π° ΡƒΠ»Π°Π·Π½Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°).ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°).

ΠœΠ΅Ρ’ΡƒΡ‚ΠΈΠΌ, Ρƒ пракси сС ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ослонити Π½Π° ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½Ρƒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ Π΄Π° бистС Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΈ Π²Π΅Π·Π΅ Ρƒ јСдном ΠΈΠ»ΠΈ ΠΎΠ±Π° смСра.

Ако Π½Π΅ΠΊΠΈ ΠΏΠΎΠ΄-ΠΈΠ·Π²ΠΎΡ€ Ρ›Π΅ Π±ΠΈΡ‚ΠΈ ΠΈΠ·Π°Π±Ρ€Π°Π½ ΠΎΠ΄ странС јСдног ΠΈΠ»ΠΈ вишС ΡšΠΈΡ… ΠΈΠ·Π»Π°Π·Π°ΠΊ-ΠΏΠΎΠ»ΠΈΡ‚ΠΈΡ‡Π°Ρ€ΠΈ, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅ΡšΠ° која су јој Π½Π°ΠΌΠ΅Ρ‚Π½ΡƒΡ‚Π° Π±ΠΈΡ›Π΅ ΠΎΠ΄Ρ€Π΅Ρ’Π΅Π½Π° ΡšΠΈΡ…ΠΎΠ²ΠΎΠΌ Π΄ΠΈΡΡ˜ΡƒΠ½ΠΊΡ†ΠΈΡ˜ΠΎΠΌ. Π£ ΠΎΠ²ΠΎΠΌ ΡΠ»ΡƒΡ‡Π°Ρ˜Ρƒ, ΠΌΠΎΡ€Π°Ρ›Π΅Ρ‚Π΅ Сксплицитно Π΄Π° Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚Π΅ Π²Π΅Π·Ρƒ са ΠΏΠΎΠ΄ΠΎΠΌ -адрСсату. Ако ΠΏΠΎΠ΄ нијС ΠΈΠ·Π°Π±Ρ€Π°Π½Π° нијСдна смСрница, њСн ΠΎΠ΄Π»Π°Π·Π½ΠΈ (ΠΈΠ·Π»Π°Π·Π½ΠΈ) ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ јС ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½ΠΎ Π΄ΠΎΠ·Π²ΠΎΡ™Π΅Π½.

Π‘Π»ΠΈΡ‡Π½ΠΎ, судбина ΠΌΠ°Ρ…ΡƒΠ½Π° Ρ˜Π΅Π°Π΄Ρ€Π΅ΡΠ°, ΠΈΠ·Π°Π±Ρ€Π°Π½ ΠΎΠ΄ странС јСдног ΠΈΠ»ΠΈ вишС ΡšΠΈΡ… ΡƒΠ»Π°Π·Π°ΠΊ-ΠΏΠΎΠ»ΠΈΡ‚ΠΈΡ‡Π°Ρ€Π΅, ΠΎΠ΄Ρ€Π΅Π΄ΠΈΡ›Π΅ ΡšΠΈΡ…ΠΎΠ²Π° Π΄ΠΈΡΡ˜ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°. Π£ ΠΎΠ²ΠΎΠΌ ΡΠ»ΡƒΡ‡Π°Ρ˜Ρƒ, ΠΌΠΎΡ€Π°Ρ‚Π΅ ΠΌΡƒ ΠΈΠ·Ρ€ΠΈΡ‡ΠΈΡ‚ΠΎ Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΠΈ Π΄Π° ΠΏΡ€ΠΈΠΌΠ° ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ ΠΈΠ· ΠΈΠ·Π²ΠΎΡ€Π½ΠΎΠ³ ΠΌΠΎΠ΄ΡƒΠ»Π°. Ако ΠΏΠΎΠ΄ нијС ΠΈΠ·Π°Π±Ρ€Π°Π½Π° нијСдна смСрница, сав ΡƒΠ»Π°Π·Π½ΠΈ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ Π·Π° њСга јС ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π½ΠΎ Π΄ΠΎΠ·Π²ΠΎΡ™Π΅Π½.

ΠŸΠΎΠ³Π»Π΅Π΄Π°Ρ˜Ρ‚Π΅ Π΄ΠΎΠ»Π΅ са статусом ΠΈΠ»ΠΈ Π±Π΅Π· дрТављанства.

Π”Π½Π΅Π²Π½ΠΈΡ†ΠΈ

ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ смСрницС Π½Π΅ ΠΌΠΎΠ³Ρƒ Π΄Π° Π΅Π²ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ€Π°Ρ˜Ρƒ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜. Ово ΠΎΡ‚Π΅ΠΆΠ°Π²Π° ΡƒΡ‚Π²Ρ€Ρ’ΠΈΠ²Π°ΡšΠ΅ Π΄Π° Π»ΠΈ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡˆΠ΅ ΠΊΠ°ΠΊΠΎ јС ΠΏΡ€Π΅Π΄Π²ΠΈΡ’Π΅Π½ΠΎ ΠΈ Ρƒ вСликој ΠΌΠ΅Ρ€ΠΈ ΠΊΠΎΠΌΠΏΠ»ΠΈΠΊΡƒΡ˜Π΅ бСзбСдносну Π°Π½Π°Π»ΠΈΠ·Ρƒ.

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π° ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜Π° ΠΊΠ° СкстСрним сСрвисима

ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ смСрницС Π²Π°ΠΌ Π½Π΅ Π΄ΠΎΠ·Π²ΠΎΡ™Π°Π²Π°Ρ˜Ρƒ Π΄Π° Π½Π°Π²Π΅Π΄Π΅Ρ‚Π΅ ΠΏΠΎΡ‚ΠΏΡƒΠ½ΠΎ ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΠΊΠΎΠ²Π°Π½ΠΎ ΠΈΠΌΠ΅ Π΄ΠΎΠΌΠ΅Π½Π° (ДНБ) Ρƒ ΠΈΠ·Π»Π°Π·Π½ΠΈΠΌ ΠΎΠ΄Π΅Ρ™Ρ†ΠΈΠΌΠ°. Ова Ρ‡ΠΈΡšΠ΅Π½ΠΈΡ†Π° Π΄ΠΎΠ²ΠΎΠ΄ΠΈ Π΄ΠΎ Π·Π½Π°Ρ‡Π°Ρ˜Π½ΠΈΡ… Π½Π΅ΠΏΡ€ΠΈΡ˜Π°Ρ‚Π½ΠΎΡΡ‚ΠΈ ΠΊΠ°Π΄Π° ΠΏΠΎΠΊΡƒΡˆΠ°Π²Π°Ρ‚Π΅ Π΄Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚Π΅ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜ Π½Π° спољнС Π΄Π΅ΡΡ‚ΠΈΠ½Π°Ρ†ΠΈΡ˜Π΅ којС Π½Π΅ΠΌΠ°Ρ˜Ρƒ фиксну ИП адрСсу (ΠΊΠ°ΠΎ ΡˆΡ‚ΠΎ јС авс.Ρ†ΠΎΠΌ).

ΠŸΡ€ΠΎΠ²Π΅Ρ€Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅

Π—Π°ΡˆΡ‚ΠΈΡ‚Π½ΠΈ Π·ΠΈΠ΄ΠΎΠ²ΠΈ Ρ›Π΅ вас ΡƒΠΏΠΎΠ·ΠΎΡ€ΠΈΡ‚ΠΈ ΠΈΠ»ΠΈ Ρ‡Π°ΠΊ ΠΎΠ΄Π±ΠΈΡ‚ΠΈ Π΄Π° ΠΏΡ€ΠΈΡ…Π²Π°Ρ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ³Ρ€Π΅ΡˆΠ½Ρƒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ. ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ Ρ‚Π°ΠΊΠΎΡ’Π΅ Π²Ρ€ΡˆΠΈ Π½Π΅ΠΊΡƒ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ˜Ρƒ. Када поставља ΠΌΡ€Π΅ΠΆΠ½Ρƒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ ΠΏΡ€Π΅ΠΊΠΎ ΠΊΡƒΠ±Π΅Ρ†Ρ‚Π»-Π°, ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΠΎΠΆΠ΅ ΠΈΠ·Ρ˜Π°Π²ΠΈΡ‚ΠΈ Π΄Π° јС Π½Π΅Ρ‚Π°Ρ‡Π½Π° ΠΈ ΠΎΠ΄Π±ΠΈΡ‚ΠΈ Π΄Π° јС ΠΏΡ€ΠΈΡ…Π²Π°Ρ‚ΠΈ. Π£ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΡΠ»ΡƒΡ‡Π°Ρ˜Π΅Π²ΠΈΠΌΠ°, ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ Ρ›Π΅ ΠΏΡ€Π΅ΡƒΠ·Π΅Ρ‚ΠΈ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ ΠΈ ΠΏΠΎΠΏΡƒΠ½ΠΈΡ‚ΠΈ јС Π΄Π΅Ρ‚Π°Ρ™ΠΈΠΌΠ° који Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ˜Ρƒ. ΠœΠΎΠ³Ρƒ сС Π²ΠΈΠ΄Π΅Ρ‚ΠΈ ΠΏΠΎΠΌΠΎΡ›Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄Π΅:

kubernetes get networkpolicy <policy-name> -o yaml

Π˜ΠΌΠ°Ρ˜Ρ‚Π΅ Π½Π° ΡƒΠΌΡƒ Π΄Π° ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ систСм Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΡ˜Π΅ нијС Π½Π΅ΠΏΠΎΠ³Ρ€Π΅ΡˆΠΈΠ² ΠΈ Π΄Π° ΠΌΠΎΠΆΠ΅ пропустити Π½Π΅ΠΊΠ΅ врстС Π³Ρ€Π΅ΡˆΠ°ΠΊΠ°.

Π˜Π·Π²Ρ€ΡˆΠ΅ΡšΠ΅

ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ Π½Π΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π° ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ сам ΠΏΠΎ сСби, Π²Π΅Ρ› јС само АПИ капија који Π΄Π΅Π»Π΅Π³ΠΈΡ€Π° Ρ‚Π΅Ρ€Π΅Ρ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ Π½Π° основни систСм који сС Π·ΠΎΠ²Π΅ Π¦ΠΎΠ½Ρ‚Π°ΠΈΠ½Π΅Ρ€ НСтворкинг Π˜Π½Ρ‚Π΅Ρ€Ρ„Π°Ρ†Π΅ (ЦНИ). ΠŸΠΎΡΡ‚Π°Π²Ρ™Π°ΡšΠ΅ смСрница Π½Π° ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ кластСру Π±Π΅Π· Π΄ΠΎΠ΄Π΅Ρ™ΠΈΠ²Π°ΡšΠ° ΠΎΠ΄Π³ΠΎΠ²Π°Ρ€Π°Ρ˜ΡƒΡ›Π΅Π³ ЦНИ јС исто ΠΊΠ°ΠΎ ΠΈ ΠΊΡ€Π΅ΠΈΡ€Π°ΡšΠ΅ смСрница Π½Π° сСрвСру Π·Π° ΡƒΠΏΡ€Π°Π²Ρ™Π°ΡšΠ΅ Π·Π°ΡˆΡ‚ΠΈΡ‚Π½ΠΈΠΌ Π·ΠΈΠ΄ΠΎΠΌ Π±Π΅Π· ΡšΠΈΡ…ΠΎΠ²ΠΎΠ³ Π·Π°Ρ‚ΠΈΠΌ ΠΈΠ½ΡΡ‚Π°Π»ΠΈΡ€Π°ΡšΠ° Π½Π° Π·Π°ΡˆΡ‚ΠΈΡ‚Π½Π΅ Π·ΠΈΠ΄ΠΎΠ²Π΅. На Π²Π°ΠΌΠ° јС Π΄Π° осигуратС Π΄Π° ΠΈΠΌΠ°Ρ‚Π΅ ΠΏΡ€ΠΈΡΡ‚ΠΎΡ˜Π°Π½ ЦНИ ΠΈΠ»ΠΈ, Ρƒ ΡΠ»ΡƒΡ‡Π°Ρ˜Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅, хостован Ρƒ ΠΎΠ±Π»Π°ΠΊΡƒ (ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΠΈ листу ΠΏΡ€ΠΎΠ²Π°Ρ˜Π΄Π΅Ρ€Π° ΠΎΠ²Π΄Π΅ β€” ΠΏΡ€ΠΈΠ±Π». транс.), ΠΎΠΌΠΎΠ³ΡƒΡ›ΠΈΡ‚Π΅ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ којС Ρ›Π΅ поставити ЦНИ Π·Π° вас.

Π˜ΠΌΠ°Ρ˜Ρ‚Π΅ Π½Π° ΡƒΠΌΡƒ Π΄Π° вас ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ Π½Π΅Ρ›Π΅ ΡƒΠΏΠΎΠ·ΠΎΡ€ΠΈΡ‚ΠΈ Π°ΠΊΠΎ поставитС ΠΌΡ€Π΅ΠΆΠ½Ρƒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ Π±Π΅Π· ΠΎΠ΄Π³ΠΎΠ²Π°Ρ€Π°Ρ˜ΡƒΡ›Π΅Π³ ΠΏΠΎΠΌΠΎΡ›Π½ΠΎΠ³ ЦНИ-Π°.

Π‘Π° дрТављанством ΠΈΠ»ΠΈ Π±Π΅Π· дрТављанства?

Π‘Π²ΠΈ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ЦНИ-ΠΎΠ²ΠΈ Π½Π° којС сам наишао су са ΡΡ‚Π°ΡšΠ΅ΠΌ (Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π¦Π°Π»ΠΈΡ†ΠΎ користи Π›ΠΈΠ½ΡƒΠΊ Ρ†ΠΎΠ½Π½Ρ‚Ρ€Π°Ρ†ΠΊ). Ово ΠΎΠΌΠΎΠ³ΡƒΡ›Π°Π²Π° ΠΌΠΎΠ΄ΡƒΠ»Ρƒ Π΄Π° ΠΏΡ€ΠΈΠΌΠ° ΠΎΠ΄Π³ΠΎΠ²ΠΎΡ€Π΅ Π½Π° ВЦП Π²Π΅Π·Ρƒ ΠΊΠΎΡ˜Ρƒ јС ΠΏΠΎΠΊΡ€Π΅Π½ΡƒΠΎ Π±Π΅Π· ΠΏΠΎΡ‚Ρ€Π΅Π±Π΅ Π΄Π° јС ΠΏΠΎΠ½ΠΎΠ²ΠΎ успоставља. ΠœΠ΅Ρ’ΡƒΡ‚ΠΈΠΌ, нисам ΡƒΠΏΠΎΠ·Π½Π°Ρ‚ са ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ стандардом који Π±ΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΎΠ²Π°ΠΎ Π·Π°Π΄Ρ€ΠΆΠ°Π²Π°ΡšΠ΅ ΡΡ‚Π°ΡšΠ°.

Π£ΠΏΡ€Π°Π²Ρ™Π°ΡšΠ΅ Π½Π°ΠΏΡ€Π΅Π΄Π½ΠΈΠΌ бСзбСдносним ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°ΠΌΠ°

Π•Π²ΠΎ Π½Π΅ΠΊΠΎΠ»ΠΈΠΊΠΎ Π½Π°Ρ‡ΠΈΠ½Π° Π΄Π° ΠΏΠΎΠ±ΠΎΡ™ΡˆΠ°Ρ‚Π΅ ΡΠΏΡ€ΠΎΠ²ΠΎΡ’Π΅ΡšΠ΅ бСзбСдноснС ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ-Ρƒ:

  1. АрхитСктонски ΠΎΠ±Ρ€Π°Π·Π°Ρ† Π‘Π΅Ρ€Π²ΠΈΡ†Π΅ ΠœΠ΅ΡΡ… користи ΠΊΠΎΠ½Ρ‚Π΅Ρ˜Π½Π΅Ρ€Π΅ с ΠΏΡ€ΠΈΠΊΠΎΠ»ΠΈΡ†ΠΎΠΌ Π΄Π° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ Π΄Π΅Ρ‚Π°Ρ™Π½Ρƒ Ρ‚Π΅Π»Π΅ΠΌΠ΅Ρ‚Ρ€ΠΈΡ˜Ρƒ ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Ρƒ ΡΠ°ΠΎΠ±Ρ€Π°Ρ›Π°Ρ˜Π° Π½Π° Π½ΠΈΠ²ΠΎΡƒ услугС. Као ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΌΠΎΠΆΠ΅ΠΌΠΎ ΡƒΠ·Π΅Ρ‚ΠΈ Π˜ΡΡ‚ΠΈΠΎ.
  2. НСки ΠΎΠ΄ Π΄ΠΎΠ±Π°Π²Ρ™Π°Ρ‡Π° ЦНИ-Π° ΠΏΡ€ΠΎΡˆΠΈΡ€ΠΈΠ»ΠΈ су својС Π°Π»Π°Ρ‚Π΅ Π΄Π° ΠΏΡ€Π΅Π²Π°Π·ΠΈΡ’Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅.
  3. Π’ΡƒΡ„ΠΈΠ½ ΠžΡ€Ρ†Π° ΠŸΡ€ΡƒΠΆΠ° видљивост ΠΈ Π°ΡƒΡ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡ˜Ρƒ ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½ΠΈΡ… ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°.

Π’ΡƒΡ„ΠΈΠ½ ΠžΡ€Ρ†Π° ΠΏΠ°ΠΊΠ΅Ρ‚ ΡƒΠΏΡ€Π°Π²Ρ™Π° ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½ΠΈΠΌ смСрницама (ΠΈ ΠΈΠ·Π²ΠΎΡ€ јС снимака Π΅ΠΊΡ€Π°Π½Π° ΠΈΠ·Π½Π°Π΄).

Π΄ΠΎΠ΄Π°Ρ‚Π½Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ˜Π΅

Π—Π°ΠΊΡ™ΡƒΡ‡Π°ΠΊ

ΠšΡƒΠ±Π΅Ρ€Π½Π΅Ρ‚Π΅Ρ ΠΌΡ€Π΅ΠΆΠ½Π΅ смСрницС Π½ΡƒΠ΄Π΅ Π΄ΠΎΠ±Π°Ρ€ скуп Π°Π»Π°Ρ‚Π° Π·Π° ΡΠ΅Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°ΡšΠ΅ кластСра, Π°Π»ΠΈ нису ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½Π΅ ΠΈ ΠΈΠΌΠ°Ρ˜Ρƒ ΠΌΠ½ΠΎΠ³ΠΎ суптилности. Π—Π±ΠΎΠ³ ΠΎΠ²Π΅ слоТСности, Π²Π΅Ρ€ΡƒΡ˜Π΅ΠΌ Π΄Π° су ΠΌΠ½ΠΎΠ³Π΅ ΠΏΠΎΡΡ‚ΠΎΡ˜Π΅Ρ›Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ кластСра ΠΏΠΎΠ³Ρ€Π΅ΡˆΠ½Π΅. ΠœΠΎΠ³ΡƒΡ›Π° Ρ€Π΅ΡˆΠ΅ΡšΠ° Π·Π° овај ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΡƒΠΊΡ™ΡƒΡ‡ΡƒΡ˜Ρƒ Π°ΡƒΡ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡ˜Ρƒ Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ†ΠΈΡ˜Π° ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ΅ ΠΈΠ»ΠΈ ΠΊΠΎΡ€ΠΈΡˆΡ›Π΅ΡšΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π°Π»Π°Ρ‚Π° Π·Π° ΡΠ΅Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Ρƒ.

Надам сС Π΄Π° Ρ›Π΅ Π²Π°ΠΌ овај Π²ΠΎΠ΄ΠΈΡ‡ ΠΏΠΎΠΌΠΎΡ›ΠΈ Π΄Π° Ρ€Π°Π·Ρ˜Π°ΡΠ½ΠΈΡ‚Π΅ Π½Π΅ΠΊΠ° ΠΏΠΈΡ‚Π°ΡšΠ° ΠΈ Ρ€Π΅ΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅ Π½Π° којС ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΈΡ›ΠΈ.

ПБ ΠΎΠ΄ ΠΏΡ€Π΅Π²ΠΎΠ΄ΠΈΠΎΡ†Π°

ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ˜Ρ‚Π΅ ΠΈ Π½Π° нашСм Π±Π»ΠΎΠ³Ρƒ:

Π˜Π·Π²ΠΎΡ€: Π²Π²Π².Ρ…Π°Π±Ρ€.Ρ†ΠΎΠΌ

Π”ΠΎΠ΄Π°Ρ˜ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€