Filloni me matricën, jo me sintaksën e firewall-it. Një tabelë me role nga njëra anë dhe shërbime nga ana tjetër mund të rishikohet nga pronari i një aplikacioni, të diskutohet nga pronari i sigurisë dhe të zbatohet nga kushdo që mban portën. Ai rishikim kushton më pak se korrigjimi i rregullave për të cilat askush nuk është marrë vesh.

Një orë shkrim kursen më vonë një javë arkeologji rregullash. Dizajni flet për atë se kush arrin në cilën shërbim, dhe pikërisht kjo pjesë i mbijeton rinumërimit.

Hapi 1: emërtoni rolet para rrjeteve

Filloni nga njerëzit, jo nga switch-i. Shkruani çdo grup që lidhet në distancë dhe fjalinë e vetme që përshkruan çfarë bën ai grup, për shembull personeli i magazinës që lexon nivelet e stokut ose një kontraktor që mirëmban një integrim. Nëse dy grupe do të merrnin të njëjtin akses, për këtë qëllim janë një rol.

Ndaleni këtu nëse një rol ekziston vetëm për shkak të një organigrame. Një rol pa nevojë të vetën për shërbim bëhet një rresht qelizash identike, dhe rreshtat identikë nxisin dikë më vonë të japë një nënrrjet të tërë për lehtësi. Ndani sipas asaj që bëjnë njerëzit, jo sipas kujt nënshkruan shpenzimet e tyre. Gjashtë role janë zakonisht shumë për një zyrë të vogël dhe tre shpesh janë të saktë.

Hapi 2: kthejeni çdo qelizë në një deklarim shërbimi

Një qelizë që thotë «Aplikacione» nuk është e verifikueshme. Një qelizë që thotë «HTTPS te hosti ERP në 443, nga grupi i personelit» është. Zëvendësoni çdo emër rrjeti me një destinacion, një protokoll dhe një portë, pastaj shtoni varësinë pa të cilën shërbimi nuk funksionon, si zgjidhësi i brendshëm ose ofruesi i identitetit.

CheckPasses whenStop if
Destination namedHost and port appear in the cellCell names a VLAN or a subnet
Direction statedInitiator and responder are both clearCell implies two-way access
Dependency listedDNS or identity path is explicitWhole infrastructure range is granted
Negative case writtenAt least one denied pair is recordedOnly allow rules exist

Kolona e drejtimit kap gabimet më të shtrenjta. Leja që personeli të hapë një aplikacion nuk nënkupton leje që serverat e aplikacionit të hapin lidhje kthimi te laptopët e personelit, dhe një rregull me gjendje që lejon drejtimin e parë shpesh lexohet sikur lejon të dytin.

Hapi 3: vendosni ku identiteti bëhet politikë

Dikush duhet të kthejë një sesion të vërtetuar në një rol që porta mund ta zbatojë. Opsionet e mbështetura përfshijnë politikën e grupit të dhënë nga backend-i i vërtetimit, atributet e besueshme të sesionit ose grupe adresash të veçanta për çdo rol. Të tre funksionojnë; një etiketë e dërguar nga klienti jo. Zgjidhni mekanizmin që dokumenton porta juaj, jo atë që përshkruan një postim në forum.

Caktimi i një adrese që thjesht duket se i përket një VLAN është i njëjti mos-përgjigje në një kostum tjetër. Udhëzuesi i Netgate për rregullat e firewall-it të OpenVPN e bën të qartë ndarjen: lejimi që tuneli të ngrihet është një vendim tjetër nga lejimi që trafiku të kalojë përmes tij.

Shkruani cilin mekanizëm zgjodhët dhe ku është konfiguruar. Kur një rol ndryshon, ai shënim është ndryshimi midis një redaktimi dhe një gjuetie nëpër tre ndërfaqe. Ai i thotë gjithashtu një audituesi ku duhet të shohë së pari.

Hapi 4: vëzhgoni adresën burimore që sheh destinacioni

Politika e përcjelljes duhet të përputhet me burimin e vërtetë në kufi. Nëse porta përkthen klientët VPN në adresën e vet, çdo firewall në rrjedhën e poshtme sheh një burim të vetëm dhe humbet aftësinë për të vendosur sipas rolit. Nëse e ruan adresën e klientit, rruga e kthimit duhet të ekzistojë për atë grup.

Provoni të dy drejtimet para se të shkruani rregullat përfundimtare, pastaj shënoni burimin e vëzhguar pranë çdo qelize. Ekzekutoni të njëjtin kontroll nga dy role të ndryshme dhe krahasoni rezultatin. Nëse të dyja tregojnë adresën e portës, dallimi i roleve tashmë është humbur. Një matricë që supozon adresa të ruajtura ndërsa porta bën përkthim burimi dështon në ACL-në e parë të poshtme.

Hapi 5: provoni çdo qelizë para se ta publikoni

Kthejeni çdo qelizë të lejuar në një operacion përfaqësues dhe çdo qelizë të refuzuar në një rast negativ. Ekzekutoni të dyja nga një klient në rolin e vërtetë, jo nga konsola e portës, sepse konsola anashkalon rrugën që po provoni.

# allowed: staff role reaches the ERP endpoint
curl -sS -o /dev/null -w '%{http_code}\n' --max-time 5 https://erp.internal.example/health

# denied: the same role must not reach a management host
nc -vz -w 3 10.30.5.11 22

# observed source address at the destination
sudo tcpdump -ni any 'tcp port 443 and host 10.30.20.15'

Një rast negativ që lidhet është një gjetje, jo një rastësi, dhe vendi i tij është në matricë si një qelizë e dështuar derisa rregulli të korrigjohet. Mbani komandat e provës pranë tabelës, që rishikuesi tjetër t'i ekzekutojë përsëri në vend që ta rindërtojë arsyetimin.

Tabela e përfunduar mbijeton më shumë se porta për të cilën u shkrua. Rregullat ndryshojnë me firmware dhe furnizues, ndërsa rreshti që thotë se një kontraktor arrin në një shërbim projekti mbetet i vërtetë derisa ai punë të ndryshojë.

Artikuj të ngjashëm