Nebula svjetionički filteri naspram firewall-a: šta svaki blokira
Popisi dopuštenja na svjetioniku biraju koje underlay endpointe peer oglašava ili pokušava. Firewall pravila uređuju saobraćaj unutar overlaya nakon handshakea.
Pogledajte Nebula handshake s pogrešne strane i dva mehanizma izgledaju zamjenjivo. Jedan odlučuje koje adrese čvor saopćava svjetioniku i koje udaljene adrese će pokušati; drugi odlučuje šta može proći kada tunel postoji. Filter može zaustaviti vezu prije nego što se ocijeni bilo koje firewall pravilo, a firewall pravilo ne može oživjeti endpoint koji je otkrivanje uklonilo. Dva sloja odgovaraju na različita pitanja, a redoslijed kojim djeluju je ključ.
Pratite jednu vezu kroz četiri faze: lokalna adresa koja se oglašava, udaljeni endpoint koji se razmatra, handshake i overlay saobraćaj. Svaka faza ima svoju konfiguraciju i svoj potpis kvara.
Počnite od lokalne adrese koju čvor oglašava
local_allow_list filtrira lokalne adrese ovog hosta prije nego što se prijave svjetionicima. Unosi mogu biti rasponi adresa, a konfiguracija podržava i obrasce imena interfejsa. To je korisno kada host ima kontejnerske mostove ili dodatne tunelske interfejse koji ne treba da postanu peer endpointi.
Prođite kroz interfejse hosta i pitajte do kojih udaljeni peer zaista može doći. Adresa Docker mosta lokalna je za taj host i beskorisna za peer u drugoj mreži. Oglašavanje te adrese troši otkrivanje i može poslati peer prema adresi koja nikada ne odgovara. Sve do čega peer ne može rutati šum je u odgovoru svjetionika.
Uzak popis dopuštenja ovdje je sigurniji od širokog popisa zabrana. Ako postoje samo unosi dopuštenja, nespecificirani ostatak se isključuje; dodavanje unosa zabrane kasnije mijenja zadanu logiku i traži vlastiti pregled. Ta promjena zaslužuje drugi pogled na zadanu vrijednost.
Zatim gledajte odabir udaljenog endpointa
remote_allow_list filtrira adrese koje će ovaj host razmatrati za udaljeni peer tokom handshakea. Primjenjuje se na underlay adresu, ne na overlay adresu koju će peer koristiti nakon što tunel bude podignut.
Privatni raspon može biti potpuno upotrebljiv u dijeljenoj uredskoj mreži i besmislen kada dva hosta sjede u nepovezanim mrežama koje obje koriste 10.0.0.0/8. Filter vam omogućava da preferirate rutabilnu putanju i zanemarite slučajnost.
Kada se peer ne može povezati, uporedite adresu koja se pokušava s pravilom koje joj odgovara. Uključite handshake logove i pročitajte odabranu udaljenu adresu; linija loga imenuje endpoint koji je preživio filtriranje, što je korisnije od popisa adresa koje peer posjeduje.
Filter imena interfejsa na strani oglašavanja može ukloniti endpoint prije nego što ga strana primanja uopće vidi. Provjerite oba čvora kada ne uspijeva samo jedan smjer.
Nakon handshakea primjenjuju se overlay pravila pristupa
Nebula firewall pravila djeluju unutar overlaya, nakon što je tunel uspostavljen. Ona uparuju hostove, grupe, portove i protokole i odlučuju smije li paket ući u lokalni host ili ga napustiti. Ona ne biraju underlay endpoint.
Ovo razdvajanje objašnjava čestu pogrešnu dijagnozu. Operater doda firewall pravilo za port i dalje se ne može povezati, jer je filter svjetionika uklonio jedini dostupni endpoint. Drugi operater otvori filter adresa i dalje ne može doći do usluge, jer overlay firewall odbija port.
Čitajte kvar na pravom sloju. Handshake koji se nikada ne završi upućuje na otkrivanje, filtriranje endpointa ili mrežnu putanju. Završen handshake nakon kojeg slijedi odbijena ili odbačena veza prema usluzi upućuje na overlay firewall ili aplikaciju.
Čitajte zadanu vrijednost kada miješate dopuštenje i zabranu
Konfiguracija svjetionika podržava popise samo-dopuštenja, samo-zabrane i miješane, a zadana vrijednost za nespecificirani ostatak razlikuje se među tim oblicima. Miješani popis traži eksplicitnu zadanu vrijednost za porodicu adresa; pretpostavka da se ostatak ponaša kao prethodna konfiguracija put je kojim radni endpoint tiho nestaje.
lighthouse:
local_allow_list:
interfaces:
docker0: false
remote_allow_list:
192.168.0.0/16: true
default: false
Tretirajte zadanu vrijednost kao dio pravila, ne kao šablonski tekst. Ako je zadana vrijednost porodice zabrana, svaka adresa koja nije navedena isključuje se, uključujući novi uredski raspon dodan nakon što je konfiguracija napisana.
Zabilježite koje su adrese trebale biti dostupne i testirajte s obje strane. Filter koji radi za jedan par peerova može zakazati za drugi par čija jedina zajednička putanja koristi adresu koju popis isključuje.
Koristite relay kada nijedan direktni endpoint nije dostupan
Ako je svaki kandidat endpoint filtriran ili nedostupan, odgovor nije širi popis dopuštenja koji ponovo prima adrese kojima ne vjerujete. Nebula relay konfiguracija pruža alternativnu peer putanju kada direktna povezanost nije izvediva.
Relay rješava transport i otkrivanje, ne autorizaciju, i ne proširuje firewall. Overlay firewall i dalje odlučuje koje se usluge smiju koristiti, a relay ne pretvara filtriranje svjetionika u mehanizam kontrole pristupa.
Testirajte relay putanju s isključenim direktnim endpointima i potvrdite da namjeravana usluga još radi, a nenamjeravana ne. Taj jedan test odvaja transportnu popravku od promjene politike i drži dva sloja iskrenim.