Du klausimai susimaišo, kai privati paslauga atveriama nuotoliniams naudotojams. Pirmasis – kokį vardą turėtų naudoti klientai; antrasis – kokius šaltinius paslauga turėtų priimti. Atsakykite jais šia tvarka, nes teisingas vardas už neteisingos prieigos taisyklės vis tiek nepavyksta, o teisinga taisyklė už vardo, kuris neišsprendžiamas, niekada netestuojama.

Pirmoji sąlyga: kokį rezolverio kelią turi klientai?

Privatus vardas veikia tik tada, kai kliento rezolveris gali į jį atsakyti. Tai reiškia, kad įgaliotas nuotolinis klientas turi pasiekti DNS serverį, laikantį zoną, arba per tunelį, arba per rezolverį, kurį organizacija jau valdo nuotoliniams naudotojams. Tunelis yra transportas, o ne katalogas. Jis suteikia klientui kelią iki rezolverio ir nepasako, kokios zonos klausti.

resolvectl query files.corp.example
dig @10.20.30.10 +short files.corp.example

Viešas rezolveris neišmoks privačios zonos vien todėl, kad nešiojamasis kompiuteris prisijungė prie VPN.

Priesaga nusipelno tokio pat dėmesio. Naudokite organizacijos kontroliuojamo domeno subdomeną, kad nuosavybė ir sertifikatų planavimas išliktų aiškūs. Venkite .local: multicast DNS specifikacija sieja šią priesagą su link-local sprendimu, o maršrutizuotas tunelis šio elgesio už jus neatkuria.

Antroji sąlyga: kokį šaltinį gauna paslauga?

Prieigos taisyklės rašomos adresų atžvilgiu, tad naudingas klausimas – kokį adresą paslauga mato po maršrutizavimo ir vertimo. Pavyzdinei paslaugai adresu 10.20.30.40 biuro klientai ateina iš 10.20.30.0/24, o nuotoliniai klientai – iš atskiro baseino, pavyzdžiui, 10.99.0.0/24.

Jei tinklų sietuvas verčia nuotolinį baseiną, paslauga mato vertėją, ir taisyklė, parašyta 10.99.0.0/24, nesutaps.

Skaitykite tai iš paslaugos pusės, o ne iš kliento pusės. Klausytojo žurnalas arba paketų užfiksavimas paslaugos hoste parodo šaltinį, kuris iš tikrųjų atėjo; paties kliento adresas tėra spėjimas apie tai, kas išliko kelyje.

Trečioji sąlyga: ar vardas susietas su paslauga, ar su hostu?

Vardas, nurodantis vienos mašinos adresą, pririša kiekvieną klientą prie tos mašinos. Vardas, nurodantis apkrovos balansuotoją arba stabilų paslaugos adresą, išgyvena už jo esančio hosto pakeitimą. Rinkitės sąmoningai, nes pakeisti tai vėliau reiškia pakeisti kiekvieno kliento žymes ir kiekvieno sertifikato subjektą.

Vienai vidinei paslaugai tiesioginis įrašas paprastai yra tinkamas ir lengviau apgalvojamas.

Viskam, kas bus pakeista, perstatyta ar išplėsta, stabilus priekis vertas papildomos konfigūracijos. Testas paprastas: jei galite pakeisti užpakalinę dalį nepranešę naudotojams, vardas susietas su paslauga; jei negalite, jis susietas su hostu.

Išbandykite du sprendimus atskirai

Pirmiausia išspręskite, tada prisijunkite. Sprendimo testas, grąžinantis laukiamą adresą, įrodo vardo kelią ir nieko nesako apie prieigą. Ryšio testas įrodo kelią ir taisyklę kartu, todėl paleiskite jį tik po sėkmingo sprendimo.

curl -sv --max-time 5 https://files.corp.example/health

Tada vieną kartą išbandykite uždraustą šaltinį ir užrašykite rezultatą.

Laikykite du įrašus atskirai savo dokumentacijoje: vardą ir jo zoną, priimtus šaltinius ir taisyklės savininką. Kai vienas pasikeičia, kitas neturi.

Kur sprendimas paprastai suklysta

Dažnas gedimas – paslauga, paskelbta vardu, kuris išsprendžiamas tik biuro tinkle, su prieigos taisykle, priimančia tik biuro diapazoną. Tada nuotoliniai naudotojai praneša apie sugedusią paslaugą, kuri iš tikrųjų yra du atskiri praleidimai. Antras dažnas gedimas yra priešingas: plati prieigos taisyklė, pridėta norint pašalinti vardo problemą, palieka paslaugą pasiekiamą iš šaltinių, kurių niekas neketino. Abi yra konfigūracijos praleidimai, ir nuo naudotojo kėdės jos atrodo vienodai.

Nė viena klaida nematoma iš vieno sėkmingo testo. Todėl du sprendimai nusipelno atskirų įrašų ir atskirų testų, net kai juos priima tas pats žmogus.

Užrašykite abu prieš paslaugai pradedant veikti, nes kitą pakeitimą bus lengviau apgalvoti. Įrašas trumpas: viena eilutė vardui ir jo zonai, viena eilutė priimtiems šaltiniams ir taisyklės savininkui.

Susiję straipsniai