Интерактивная система просмотра системных руководств (man-ов)
xinetd (8)
>> xinetd (8) ( Русские man: Команды системного администрирования )
xinetd (8) ( Linux man: Команды системного администрирования )
ИМЯ
xinetd - продвинутый демон служб Интернет
ОБЗОР
xinetd
[опции]
ОПИСАНИЕ
xinetd выполняет такие же функции как и inetd: запускает
программы, которые предоставляют службы Интенрет. Вместо того, чтобы
запускать серверы этих служб при начальной загрузке системы, ожидается
поступление запроса на соединение, xinetd слушает порты всех служб,
которые перечислены в его файле настройки и просто производит запуск
соответствующего сервера при поступлении запроса. Поскольку xinetd
предоставляет способ управления серверами, его (как и inetd) также
называют суперсервером.
Службы, перечисленные в файле с настройками xinetd могут быть разделены
на две группы. Службы в первой группе называются
multi-threaded
(многопоточными) и они требуют разветвления (forking) нового серверного
процесса для каждого нового запроса на соединение. Далее соединением управляет
новый сервер. Для таких служб, xinetd продолжает слушать порты для
приема новых запросов, чтобы вызвать новые серверы. В противолоположность
первой, вторая группа включает службы, у которых демон службы отвечает
за управление всеми запросами на соединение. Такие службы называются
single-threaded
(однопоточными) и для них xinetd не будет управлять новыми запросами
пока сервер не завершит свою работу. Службы в этой группе обычно основаны
на передаче данных через датаграммы (UDP).
Таким образом, единственная причина, по которой был создан расширенный
суперсервер состоит в том, чтобы сохранить системные ресурсы через
недопущение разветвления огромного числа процессов, которые могут
бездействовать в течении большей части времени своей работы. В то же время
выполненяя эту функцию, xinetd работает согласно идее суперсервера,
предоставляя такие особенности, как управление доступом и протоколирование.
Кроме того, xinetd не ограничивается обслуживанием служб, перечисленных
в
/etc/services.
Поэтому, любой может использовать xinetd для запуска серверов
специального назначения.
ОПЦИИ
-d
Разрешает режим отладки. Указание этой опции приводит к большому количеству
отладочных сообщений, которые делают возможным использование отладчика на
xinetd.
-syslog syslog_facility
Данная опция разрешает протоколирование создаваемых xinetd сообщений
через syslog с заданным syslog facility.
Поддерживаются следующие имена facility:
daemon,auth,user,local[0-7]
(посмотрите syslog.conf(5) для того, чтобы понять их назначение).
Данная опция неэффективна в режиме отладки, так как все необходимые
сообщения отправляются на терминал.
-filelog файл_журнала
Сообщения создаваемые xinetd будут помещаться в указанный файл.
Сообщения вседя добавляются к уже существующему файлу. Если файл не существует,
то он будет создан.
Данная опция неэффективна в режиме отладки, так как все необходимые
сообщения отправляются на терминал.
-f файл_настроек
Задает файл, который xinetd использует для настройки. По умолчанию это
/etc/xinetd.conf.
-pidfile pid_файл
В этот файл записывается идентификатор процесса. Данная опция неэффективна в
режиме отладки.
-stayalive
Говорит xinetd оставаться запущенным, даже если не задано никаких служб.
-loop rate
Данная опция устанавливает верхнюю величну цикла, по которой определяется,
что служба работает с ошибками и по которой она отключается. Величина цикла
задается в терминах количества серверов в секунду, которое может быть
запущено в обработку (fork). Для этой опции, корректное значние определяется
скоростью вашей машины. По умолчанию оно равно 10.
-reuse
Если используется эта опция, xinetd будет устанавливать опцию сокета
SO_REUSEADDR перед привязкой сокета службы к какому-либо Интернет
адресу. Это позволяет привязать адрес, даже если есть программа, которая
уже использует его, например в том случае, если некоторые серверы были
запущены во время предыдущего запуска xinetd и еще не завершили свою
работу. Данная опция не оказывает влияния на службы
RPC.
-limit proc_limit
Данная опция устанавливает ограничение на количество одновременно запущенных
процессов, которые может запустить
xinetd.
Ее назначение предотвращать переполнение таблицы процессов.
-logprocs limit
Данная опция устанавливает ограничение на количество одновременно запущенных
серверов на один идентификатор удаленного пользователя.
-shutdownprocs limit
Данная опция устанавливает ограничение на количество одновременно запущенных
серверов для завершения работы службы (разветвление, когда используется опция
RECORD
).
-cc interval
Данная опция говорит
xinetd
выполнять периодеческие проверки своего внутреннего состояния каждые
interval
секунд.
Опции syslog и filelog являются взаимно исключающими.
Если ни одна из них не задана, то по умолчанию используется syslog с
daemon
facility.
Вы не должны путать сообщения xinetd с сообщениями, которые создаются
службами. Последние протоколируются только если это задано в файле с
настройками.
УПРАВЛЕНИЕ XINETD
Когда xinetd получает определенные сигналы, он выполняет определенные
действия. Эти действия зависят от заданных сигналов и могут быть переопределены
путем правки файла config.h и перекомпиляции.
SIGUSR2
Заставляет выполнить жесткую перенастройку, которая означает, что xinetd
перечитает файл с настройками и завершит работу серверов для тех служб,
которые больше не доступны. Управление доступом выыполняется снова на
уже запущенные сервера через проверку удаленных подключений, времени доступа
и копий сереров. Если количество копий серверов уменьшается, то некоторые
произвольно выбранные сервера будут убиты, чтобы соблюсти ограничение;
это случится после завершения работы тех серверов, которые попадают
под ограничение доступа с удаленных адресов или ограничение времни доступа.
Также, если флаг
INTERCEPT
был сброшен и происходит его установка, то будет завершена работа любых
запущенных серверов для служб с этим флагом.
цель такого поведения - убедиться, что после жесткой перенастройки
не будет запущено северов, которые могут принимать пакеты с тех адресов,
которые не соответвуют криетриями управления доступом.
SIGQUIT
Приводит к завершению работы.
SIGTERM
Завершает работу всех запущенных серверов перед завершением работы xinetd.
SIGHUP
Приводит к снятию дампа внутреннего состояния (по умолчанию файл дампа это
/var/run/xinetd.dump;
чтобы изменить данное имя файла нужна правка config.h и перекопиляция).
SIGIOT
Производит внутреннюю проверку того, что структуры данных, используемые
программой не повреждены. Когда проверка завершится
xinetd
сгенерирует сообщение, которое скажет успешно прошла проверка или нет.
При перенастройке файлы журналов закрываются и переоткрываются. Это позволяет
удалить старые файлы журналов.