Jak skonfigurować zewnętrzne IPS Usługa w Kubernetes

Jak skonfigurować zewnętrzne IPS Usługa w Kubernetes

Możesz napotkać problem podczas konfigurowania klastra Kubernetes, gdy wiesz, jak używać Nodeport, aby udostępnić usługę Kubernetes przez Internet. Podczas stosowania typu usługi Nodeport zostanie przypisany wysoki numer portu i musisz zezwolić na połączenia z tymi portumi w regule zapory. Jest to szkodliwe dla Twojej infrastruktury, szczególnie jeśli serwer jest dostępny za pośrednictwem otwartego Internetu. Możesz przypisać blok adresów IP poza klastrem jako administrator klastra, który może tam przesyłać ruch do usług. Właśnie o tym będziemy porozmawiać w tym artykule: Aby znaleźć wszystkie kluczowe informacje na temat konfigurowania zewnętrznych IPS Service WEFRESE W Kubernetes.

Co to jest zewnętrzna usługa IP?

Jeden z punktów końcowych usługi odbędzie ruch, który wchodzi do klastra za pomocą zewnętrznego adresu IP (jako docelowego IP) i portu serwisowego. Kubernetes nie ponosi odpowiedzialności za zarządzanie zewnętrznym IP.

Upewnienie, który IP jest wykorzystywany do dostępu do klastra Kubernetes, ma kluczowe znaczenie w tej sytuacji. Korzystając z zewnętrznego typu usługi IP, możemy powiązać usługę z adresem IP używanym do dostępu do klastra.

Fakt, że sieć Kubernetes wchodzi w interakcje z siecią nakładki, jest ważne, aby zrozumieć tę sytuację. Oznacza to, że możesz uzyskać dostęp do praktycznie każdego węzła w klastrze, gdy dotrzesz do dowolnego węzłów (węzłów mistrzowskich lub roboczych).

Sieć jest pokazana w ten sposób:


Oba węzły 1 i 2 na schemacie udostępniają pojedynczy adres IP. Prawdziwy kapsułek żyje w węźle 1, ale adres IP 1.2.3.6 jest związany z usługą Nginx w węźle 1. Adres IP węzła 1, 1.2.3.4, jest związany z usługą HTTPD, a faktyczna kapsułka Node 2.

Jest to możliwe dzięki podstawom sieci nakładki. Kiedy zwijamy adres IP 1.2.3.4, usługa HTTPD powinna odpowiedzieć; Kiedy zwinamy 1.2.3.5, usługa Nginx powinna odpowiedzieć.

Korzystne i wady zewnętrznego IP

Oto zalety i wady zewnętrznego IP:

Korzystanie z zewnętrznego IP jest korzystne, ponieważ:

    • Twój adres IP jest całkowicie pod kontrolą. Zamiast korzystać z ASN dostawcy chmur, możesz użyć IP, który należy do własnego ASN.

Wady zewnętrznego adresu IP obejmują:

    • Prosta konfiguracja, przez którą teraz przejdziemy, nie jest bardzo łatwo dostępna. Oznacza to, że jeśli węzeł się nie powiedzie, usługa nie będzie już dostępna i będziesz musiał rozwiązać problem ręcznie.
    • Aby obsłużyć IPS, wymagana jest znaczna praca ludzka. Ponieważ IPS nie są dla ciebie dynamicznie przydzielane, musisz to zrobić ręcznie.

Co to jest domyślne, odmawiaj/zezwalaj na zachowanie?

„„Zezwalaj na domyślne"oznacza, że ​​cały ruch jest domyślnie dozwolony. O ile nie dozwolone, cały ruch jest domyślnie odrzucony podczas korzystania z terminu „Domyślnie odmówić.”Z wyjątkiem sytuacji, gdy określono zasady sieciowe.

    • Cały ruch do i z kapsuły jest dozwolony, jeśli dla tego kapsuły nie obowiązują żadne zasady sieciowe.
    • Jeśli jedna lub więcej zasad sieciowych obowiązuje w przypadku kapsułki wnikania typu, dopuszcza to, że wnikanie ruchu wyraźnie jest dozwolone.
    • Gdy jedna lub więcej zasad sieciowych ma zastosowanie do kapsułki wyjścia, wówczas dozwolony jest tylko ruch wyjścia dozwolony przez te zasady.

Domyślne ustawienie dla innych typów punktów końcowych (wirtualne interfejsy) jest blokowanie ruchu. Dozwolony jest tylko ruch, który jest specjalnie dozwolony przez zasady sieciowe, nawet jeśli do punktu końcowego nie ma zastosowania żadne zasady sieciowe.

Najlepsza praktyka: domyślna polityka odmowa

Musisz skonfigurować domyślne zasady odmowy utworzone dla swoich kapsułek Kubernetes. To zapewnia, że ​​niechciany ruch jest automatycznie blokowany. Pamiętaj, że domyślna domyślna zaprzecza zasadom zawsze wchodzą w życie; Jeśli jakiekolwiek inne zasady pozwalają na ruch, odmowa nie ma zastosowania. Zaprzeczenie jest wdrażane dopiero po rozważeniu wszystkich innych zasad.

Jak utworzyć domyślne zasady dotyczące zasad Kubernetes Pods?

Radzimy wykorzystać globalną zasady sieciowe, nawet jeśli którekolwiek z następujących zasad można wykorzystać do skonstruowania domyślnej zasady dla Kubernetes Pods. Globalne zasady sieci są stosowane do wszystkich obciążeń (maszyny wirtualne i kontenery) we wszystkich przestrzeni nazw i hostów. Globalna polityka sieciowa zachęca do ostrożnego podejścia do bezpieczeństwa, jednocześnie obrony zasobów.

    • Umożliwić domyślnie odmówić globalnej polityki sieciowej, nie-wymienionych
    • Umożliwić domyślnie zaprzeczenie zasad sieciowych, nazwanych nazwami
    • Włącz domyślnie, aby odmówić zasad Kubernetes, nazwanych nazwami

Co to jest blok IP?

Dzięki temu wybrane są określone zakresy IP CIDR. Biorąc pod uwagę, że IP POD są przejściowe i nieprzewidywalne, powinny to być przesłuchanie klasterowe.

Źródło lub docelowe IP pakietów należy często przepisywać podczas korzystania z metod wejścia do klastra i wyjścia. W zależności od konkretnej wtyczki sieciowej (dostawca usług w chmurze, implementacja usług itp.), który jest wykorzystywany, zachowanie może się zmienić.

Dotyczy to Ingress i oznacza to, że w niektórych przypadkach należy filtrować pakiety przychodzące, które są oparte na rzeczywistej IP źródłowej. Z drugiej strony „źródłowy adres IP”, na którym działa NetworkPolicy, może być IP loadbalancer lub nawet węzła kapsuła itp.

To pokazuje, że połączenia między POD i IPS serwisowymi, które są przepisywane na IPS klasterowe, mogą być poddane ograniczeniom opartym na IPBlock pod względem wyjścia.

Jakie są domyślne zasady?

Cały ruch wnikowy i wyjściowy do i z kapsułów w przestrzeni nazw jest domyślnie dozwolony, jeśli nie ma kontroli dla tej przestrzeni nazwowej. Możesz zmienić domyślne zachowanie przestrzeni nazw, używając następujących przykładów.

Domyślnie odmówię całego ruchu wnikania

Tworząc zasady sieciowe, które wybierają wszystkie kapsuły, ale nie zawiera żadnego przychodzącego ruchu do tych strąków, możesz zbudować „domyślne” zasady izolacji wnikania i to dotyczy przestrzeni nazw.


Zapewnia to, że wszystkie kapsuły, niezależnie od tego, czy wybiera je jakakolwiek inna Policy, są odizolowane w celu wejścia. Ta zasada nie dotyczy izolacji w celu wychodzenia z jakiejkolwiek kapsuły.

Domyślnie odmów wszystkiego ruchu wyjściowego

Kiedy tworzysz Policy Network, która wybiera wszystkie kapsuły, ale zabrania ruchu z tych strąków, możesz zbudować „domyślne” zasady izolacji wychodzenia, a także dla przestrzeni nazw.

Wniosek

Ten przewodnik polegał na wykorzystaniu denyserviceExternalips. Zaprojektowaliśmy również reprezentację schematyczną, aby nasi użytkownicy zrozumieli, że działa. Dostarliśmy również przykładowe konfiguracje.