### vzory

Jazyk kontroly prístupu implementuje nasledujúce vzory:

- Reťazec, ktorý začína znakom „.“ charakteru. Názov hostiteľa sa zhoduje, ak sa posledné komponenty jeho názvu zhodujú so zadaným vzorom. Napríklad vzor „.tue.nl“ zodpovedá názvu hostiteľa „wzv.win.tue.nl“.
- Reťazec, ktorý končí znakom „.“ charakteru. Adresa hostiteľa sa zhoduje, ak sa jeho prvé číselné polia zhodujú s daným reťazcom. Napríklad vzor „131.155“. zodpovedá adrese (takmer) každého hostiteľa v sieti Eindhoven University (131.155.xx).
- Reťazec, ktorý začína znakom „@“, sa považuje za názov siete NIS (predtým YP). Názov hostiteľa sa zhoduje, ak je hostiteľom určenej sieťovej skupiny. Zhody Netgroup nie sú podporované pre názvy procesov démona ani pre užívateľské mená klientov.
- Výraz „nnnn / mmmm“ sa interpretuje ako pár „sieť / maska“. Adresa hostiteľa IPv4 sa spáruje, ak sa „net“ rovná bitovej A adresy a „masky“. Napríklad vzor sieť / maska „131.155.72.0/255.255.254.0“ zodpovedá každej adrese v rozsahu „131.155.72.0“ až „131.155.73.255“.
- Výraz „[n: n: n: n: n: n: n: n] / m“ sa interpretuje ako pár „[net]/prefixlen“. Hostiteľská adresa IPv6 sa spáruje, ak sa „prefixované“ bity „netu“ rovnajú „prefixovaným“ bitom adresy. Napríklad vzor [net]/predpona '[3ffe: 505: 2: 1 ::]/64' zodpovedá každej adrese v rozsahu '3ffe: 505: 2: 1:'? prostredníctvom '3ffe: 505: 2: 1: ffff: ffff: ffff: ffff'.
- Reťazec začínajúci znakom „/“ sa považuje za názov súboru. Názov hostiteľa alebo adresa sa zhodujú, ak sa zhodujú s akýmkoľvek názvom hostiteľa alebo vzorom adresy uvedeným v pomenovanom súbore. Formát súboru je nula alebo viac riadkov s nulovým alebo viacerými názvami hostiteľov alebo adresami oddelenými medzerou. Vzor názvu súboru sa dá použiť kdekoľvek, kde sa dá použiť názov hostiteľa alebo vzor adresy.
- Zástupné znaky „*“ a „?“ je možné použiť na priradenie názvov hostiteľov alebo IP adries. Túto metódu porovnania nie je možné použiť v spojení s porovnaním „net/mask“, porovnaním názvu hostiteľa počnúc „.“ alebo zhoda adresy IP končiaca na „.“.

### zástupné znaky

Jazyk kontroly prístupu podporuje explicitné zástupné znaky:

ALL | Univerzálny zástupný znak sa vždy zhoduje.
LOCAL | Zodpovedá každému hostiteľovi, ktorého meno neobsahuje bodkový znak.
NEZNÁMY | Zodpovedá každému používateľovi, ktorého meno nie je známe, a zhoduje sa s ľubovoľným hostiteľom, ktorého meno alebo adresa nie sú známe. Tento vzorec by sa mal používať opatrne: názvy hostiteľov môžu byť nedostupné z dôvodu dočasných problémov so serverom názvov. Sieťová adresa nebude k dispozícii, keď softvér nedokáže zistiť, s ktorou sieťou sa hovorí.
ZNÁME | Zodpovedá každému používateľovi, ktorého meno je známe, a zhoduje sa s každým hostiteľom, ktorého meno a adresa sú známe. Tento vzorec by sa mal používať opatrne: názvy hostiteľov môžu byť nedostupné z dôvodu dočasných problémov so serverom názvov. Sieťová adresa nebude k dispozícii, keď softvér nedokáže zistiť, s ktorou sieťou sa hovorí.
PARANOID | Zodpovedá každému hostiteľovi, ktorého meno sa nezhoduje s jeho adresou. Keď je tcpd postavený s -DPARANOID (predvolený režim), zruší požiadavky týchto klientov ešte predtým, ako sa pozrieme na tabuľky riadenia prístupu. Zostavte bez -DPARANOID, ak chcete mať väčšiu kontrolu nad takýmito požiadavkami.

### operátori

VÝNIMKA Účel použitia je vo forme: 'list_1 EXCEPT list_2'; tento konštrukt sa zhoduje so všetkým, čo zodpovedá zoznamu_1, pokiaľ sa nezhoduje so zoznamom_2. Operátor EXCEPT sa dá použiť v daemon_lists a client_lists. Operátor EXCEPT môže byť vnorený: ak by riadiaci jazyk umožnil použitie zátvoriek, „EXCEPT b EXCEPT c“ by sa analyzovalo ako „(EXCEPT (b EXCEPT c))“ “.

### Príkazy Shell

Ak pravidlo riadenia prístupu s prvou zhodou obsahuje príkaz shellu, tento príkaz podlieha% substitúcie (pozri nasledujúcu časť). Výsledok je vykonaný podriadeným procesom /bin/sh so štandardným vstupom, výstupom a chybou pripojenou k /dev/null. Ak nechcete čakať na dokončenie príkazu, na konci príkazu zadajte znak „&“.

Príkazy shellu by sa nemali spoliehať na nastavenie PATH inetd. Namiesto toho by mali používať absolútne názvy ciest, alebo by mali začínať výslovným príkazom PATH = vôbec.

### % Expanzií

V príkazoch shellu sú dostupné nasledujúce rozšírenia:

%a (%A) | Adresa hostiteľa klienta (servera).
%c | Informácie o klientovi: user@host, user@address, meno hostiteľa alebo iba adresa, v závislosti od toho, koľko informácií je k dispozícii.
%d | Názov procesu démona (hodnota argv[0]).
%h (%H) | Názov alebo adresa hostiteľa (servera) hostiteľa, ak názov hostiteľa nie je k dispozícii.
%n (%N) | Názov hostiteľa klienta (servera) (alebo „neznámy“ alebo „paranoidný“).
%p | ID démonského procesu.
%s | Informácie o serveri: démon @ host, démon @ adresa alebo iba názov démona, v závislosti od toho, koľko informácií je k dispozícii.
%u | Meno používateľa klienta (alebo „neznáme“).
%% | Rozšíri sa na jediné '%? charakteru.

Znaky v%expanziách, ktoré môžu mýliť shell, sú nahradené znakmi podčiarknutia.