TCP Wrappers

Узоры

Язык управления доступом реализует следующие шаблоны:

Wildcards

Язык управления доступом поддерживает явные подстановочные знаки:
ВСЕ Универсальный шаблон, всегда совпадает.
МЕСТНЫЙ Соответствует любому хосту, имя которого не содержит символ точки.
НЕИЗВЕСТНЫЙ Соответствует любому пользователю, имя которого неизвестно, и соответствует любому хосту, имя или адрес которого неизвестны. Этот шаблон следует использовать с осторожностью: имена хостов могут быть недоступны из-за временных проблем с сервером имен. Сетевой адрес будет недоступен, когда программное обеспечение не может определить, к какому типу сети оно обращается.
ИЗВЕСТНЫЙ Соответствует любому пользователю, имя которого известно, и соответствует любому хосту, имя и адрес которого известны. Этот шаблон следует использовать с осторожностью: имена хостов могут быть недоступны из-за временных проблем с сервером имен. Сетевой адрес будет недоступен, когда программное обеспечение не может определить, к какому типу сети оно обращается.
PARANOID Соответствует любому хосту, имя которого не совпадает с его адресом. Когда tcpd создается с параметром -DPARANOID (режим по умолчанию), он отбрасывает запросы от таких клиентов даже перед просмотром таблиц контроля доступа. Сборка без -DPARANOID, когда вы хотите больше контроля над такими запросами.

операторы

ИСКЛЮЧЕНИЕ Предполагаемое использование имеет вид: 'list_1 EXCEPT list_2'; эта конструкция соответствует всему, что соответствует list_1, если не соответствует list_2. Оператор EXCEPT может использоваться в daemon_lists и client_lists. Оператор EXCEPT может быть вложенным: если язык управления разрешит использование скобок, то 'EXCEPT b EXCEPT c' будет анализироваться как '(EXCEPT (b EXCEPT c))'.

Команды оболочки

Если первое согласованное правило контроля доступа содержит команду оболочки, эта команда подвергается% замены (см. следующий раздел). Результат выполняется дочерним процессом /bin/sh со стандартным вводом, выводом и ошибкой, связанной с /dev/null. Укажите «&» в конце команды, если вы не хотите ждать, пока она не завершится.

Команды оболочки не должны полагаться на параметр PATH в inetd. Вместо этого им следует использовать абсолютные пути или начинать с явного выражения PATH = что угодно.

% Расширения

В командах оболочки доступны следующие расширения:
%a (%A) Адрес хоста клиента (сервера).
Информация о клиенте: user@host, user@address, имя хоста или просто адрес, в зависимости от объема доступной информации.
%d Имя процесса демона (значение argv[0]).
%h (%H) Имя или адрес хоста клиента (сервера), если имя хоста недоступно.
%n (%N) Имя хоста клиента (сервера) (или «неизвестно», или «параноик»).
%p Идентификатор процесса демона.
%s Информация о сервере: daemon@host, daemon@address или просто имя демона, в зависимости от объема доступной информации.
%u Имя пользователя клиента (или «неизвестно»).
%% Расширяется до одного%? персонаж.
Символы в%расширениях, которые могут запутать оболочку, заменяются символами подчеркивания.