Uživatelské nástroje

Nástroje pro tento web


it:sec:acl

Access Control List (ACL)

Access Control List (ACL), v českém překladu seznam řízení přístupu, je stěžejní bezpečnostní mechanismus používaný napříč informačními technologiemi. Jedná se o sekvenční seznam pravidel, která exaktně definují, jaký subjekt (např. uživatel, proces, nebo IP adresa) má oprávnění přistupovat k určitému objektu (soubor, složka, síťové rozhraní) a jakou akci s ním smí provést.

Koncept ACL se historicky rozdělil do dvou technologicky odlišných, ale logicky příbuzných větví: Síťové ACL (filtrování síťového provozu) a Souborové ACL (řízení přístupu k datům v operačním systému).

1. Síťové ACL (Network ACL)

V kontextu počítačových sítí fungují ACL jako primitivní bezstavové firewally. Konfigurují se nejčastěji na směrovačích (routerech) nebo přepínačích (switchech) a slouží k filtrování procházejících síťových paketů.

Princip fungování

Při aplikaci síťového ACL na rozhraní routeru je každý příchozí nebo odchozí paket analyzován a porovnáván se seznamem pravidel. Tento proces má dvě naprosto kritické vlastnosti:

  • Sekvenční zpracování (Top-Down): Router čte pravidla přísně shora dolů (od prvního k poslednímu). Jakmile paket splní podmínky některého pravidla, router okamžitě provede akci (paket propustí - Permit, nebo zahodí - Deny) a zbytek seznamu již nečte. Na pořadí pravidel tedy fatálně záleží.
  • Implicitní zamítnutí (Implicit Deny): Na úplném konci každého ACL se nachází neviditelné pravidlo, které zablokuje veškerý provoz. Pokud paket neprojde ani jedním z definovaných „Permit“ pravidel, je na konci seznamu nemilosrdně zahozen.

Typy síťových ACL (příklady dle Cisco standardu)

  • Standardní ACL: Jsou velmi jednoduchá, ale omezená. Filtrují provoz výhradně na základě zdrojové IP adresy paketu. Nezajímá je, kam paket směřuje, ani jaký protokol (HTTP, FTP) využívá. Z důvodu této nepřesnosti se umisťují co nejblíže k cílové destinaci.
  • Rozšířená ACL (Extended ACL): Poskytují granulární kontrolu. Dokáží analyzovat zdrojovou IP adresu, cílovou IP adresu, použitý protokol (TCP, UDP, ICMP) a dokonce i konkrétní zdrojové a cílové porty (např. port 80 pro webový provoz). Umisťují se co nejblíže ke zdroji provozu, aby se šetřila propustnost sítě.

2. Souborové ACL (Filesystem ACL)

V operačních systémech (Windows, Linux, macOS) řeší ACL práva k souborům a složkám. Standardní POSIX práva v systémech Unix/Linux umožňují definovat přístup pouze pro tři entity: vlastníka (User), skupinu (Group) a všechny ostatní (Others).

Tento klasický model selhává v komplexním firemním prostředí, kdy potřebujete dát práva ke čtení konkrétnímu uživateli A a uživateli B, práva k zápisu uživateli C, a to vše bez vytváření zbytečných dedikovaných skupin. Právě zde nastupuje souborové ACL, které umožňuje k jednomu souboru připojit nekonečně dlouhý seznam konkrétních uživatelů a jejich specifických oprávnění.

Implementace v OS

  • Windows (NTFS / ReFS): ACL je absolutním základem zabezpečení celého systému Windows. Každý objekt (soubor, složka, klíč v registrech) má svůj DACL (Discretionary Access Control List), který určuje, kdo má přístup, a SACL (System Access Control List), který určuje, jaké pokusy o přístup se mají auditovat do bezpečnostního logu.
  • Linux (ext4 / XFS): Rozšířené atributy filesystému. Konfigurují se pomocí terminálových příkazů `setfacl` a `getfacl`.

Výhody a nevýhody používání ACL

Výhody

  • Vysoká bezpečnost a kontrola: Umožňují mikromanagement přístupů a implementaci principu nejnižších nutných oprávnění (Principle of Least Privilege).
  • Nízká hardwarová náročnost: Na routerech fungují díky hardwarové akceleraci obvykle rychlostí linky, bez prodlení.
  • Standardizace: Osvědčená technologie s předvídatelným chováním napříč průmyslem.

Nevýhody

  • Extrémní náročnost na správu: Dlouhé seznamy stovek pravidel se rychle stávají nepřehlednými. Zjišťování chyby (troubleshooting) ve špatně navrženém síťovém ACL je „noční můrou“ administrátorů.
  • Statická povaha síťových ACL: Klasické ACL nedokáže reagovat na dynamické hrozby (nevidí obsah paketu ani nezná stav TCP spojení, pouze čte hlavičky). Tento problém dnes řeší moderní stavové firewally (Stateful Inspection).

Srovnání standardních a rozšířených síťových ACL

Parametr Standardní ACL Rozšířené ACL (Extended)
Kritéria pro filtraci Pouze zdrojová IP adresa Zdrojová a cílová IP, porty, protokoly
Přesnost (Granularita) Velmi nízká (blokuje celý přístup ze zdroje) Extrémně vysoká (lze povolit web, ale zakázat poštu)
Optimální umístění v síti Co nejblíže k cíli (Destination) Co nejblíže ke zdroji (Source)
Číslování (Cisco IOS) 1 - 99, 1300 - 1999 100 - 199, 2000 - 2699
it/sec/acl.txt · Poslední úprava: autor: admin