Wrapper TCP

Patterns

Il linguaggio di controllo degli accessi implementa i seguenti schemi:

I caratteri jolly

Il linguaggio di controllo dell'accesso supporta caratteri jolly espliciti:
TUTTI Il carattere jolly universale corrisponde sempre.
LOCALE Corrisponde a qualsiasi host il cui nome non contiene un carattere punto.
SCONOSCIUTO Corrisponde a qualsiasi utente il cui nome è sconosciuto e corrisponde a qualsiasi host il cui nome o indirizzo sono sconosciuti. Questo modello deve essere usato con cura: i nomi host potrebbero non essere disponibili a causa di problemi temporanei del server dei nomi. Un indirizzo di rete non sarà disponibile quando il software non è in grado di capire con quale tipo di rete sta parlando.
CONOSCIUTO Corrisponde a qualsiasi utente il cui nome è noto e corrisponde a qualsiasi host il cui nome e indirizzo sono noti. Questo modello deve essere usato con cura: i nomi host potrebbero non essere disponibili a causa di problemi temporanei del server dei nomi. Un indirizzo di rete non sarà disponibile quando il software non è in grado di capire con quale tipo di rete sta parlando.
PARANOICO Corrisponde a qualsiasi host il cui nome non corrisponde al suo indirizzo. Quando tcpd è creato con -DPARANOID (modalità predefinita), elimina le richieste da tali client anche prima di guardare le tabelle di controllo degli accessi. Crea senza -DPARANOID quando desideri un maggiore controllo su tali richieste.

operatori

TRANNE L' uso previsto è nel formato: 'list_1 EXCEPT list_2'; questo costrutto corrisponde a tutto ciò che corrisponde a list_1 a meno che non corrisponda a list_2. L'operatore EXCEPT può essere utilizzato in daemon_lists e in client_lists. L'operatore EXCEPT può essere nidificato: se la lingua di controllo consentirebbe l'uso delle parentesi, "a EXCEPT b EXCEPT c" analizzerebbe come "(a EXCEPT (b EXCEPT c))".

Comandi Shell

Se la regola di controllo di accesso con prima corrispondenza contiene un comando shell, tale comando è soggetto a% sostituzioni (vedere la sezione successiva). Il risultato viene eseguito da un processo figlio /bin/sh con input, output ed errore standard collegati a /dev/null. Specificare un '&' alla fine del comando se non si desidera attendere fino al completamento.

I comandi della shell non devono fare affidamento sull'impostazione PATH di inetd. Invece, dovrebbero usare nomi di percorso assoluti o dovrebbero iniziare con un'istruzione esplicita PATH = what-ever.

% Espansioni

Le seguenti espansioni sono disponibili nei comandi shell:
%a (%A) L'indirizzo host del client (server).
%c Informazioni sul cliente: user@host, user@address, un nome host o solo un indirizzo, a seconda della quantità di informazioni disponibili.
%d Il nome del processo daemon (valore argv[0]).
%h (%H) Il nome host o l'indirizzo del client (server), se il nome host non è disponibile.
%n (%N) Il nome host del client (server) (o "sconosciuto" o "paranoico").
%p L'ID del processo daemon.
%s Informazioni sul server: daemon@host, daemon@address o solo un nome daemon, a seconda della quantità di informazioni disponibili.
%u Il nome utente del client (o "sconosciuto").
%% Si espande in un singolo '%? carattere.
I caratteri in%espansioni che possono confondere la shell sono sostituiti da caratteri di sottolineatura.