ксинетд
Разработчик(и) | Роб Браун |
---|---|
Финальный выпуск | 2.3.15
/ 9 мая 2012 г |
Репозиторий | github |
Написано в | С , оболочка [ 1 ] |
Операционная система | Unix-подобный |
Тип | Демон |
Лицензия | с открытым исходным кодом [ 2 ] |
Веб-сайт | сеть |
В компьютерных сетях xinetd ( Extended Internet Service Daemon ) — это с открытым исходным кодом суперсервера демон , который работает во многих Unix-подобных системах и управляет Интернету . подключением к [ 3 ]
Он предлагает более безопасную альтернативу более старому inetd («интернет-демону»), который в большинстве современных дистрибутивов Linux . считается устаревшим [ 4 ]
Описание
[ редактировать ]xinetd прослушивает входящие запросы по сети и запускает соответствующую службу для этого запроса. [ 5 ] Запросы выполняются с использованием номеров портов в качестве идентификаторов, и xinetd обычно запускает другой демон для обработки запроса. [ 6 ] Его можно использовать для запуска служб как с привилегированными, так и с непривилегированными номерами портов.
xinetd имеет механизмы контроля доступа, такие как доступом TCP Wrapper списки управления , расширенные возможности ведения журналов и возможность делать службы доступными в зависимости от времени. Он может устанавливать ограничения на количество серверов , которые может запустить система, и имеет, развертываемые защитные механизмы для защиты от сканеров портов среди прочего, .
В некоторых реализациях Mac OS X этот демон запускает и поддерживает различные службы, связанные с Интернетом, включая FTP и telnet . Будучи расширенной формой inetd, он обеспечивает повышенную безопасность. Он заменил inetd в Mac OS X v10.3 , а впоследствии launchd его заменил в Mac OS X v10.4 . Однако Apple сохранила inetd в целях совместимости.
Конфигурация
[ редактировать ]Конфигурация xinetd находится в файле конфигурации по умолчанию /etc/xinetd.conf, а конфигурация поддерживаемых им служб находится в файлах конфигурации, хранящихся в каталоге /etc/xinetd.d. Конфигурация каждой службы обычно включает переключатель, определяющий, должен ли xinetd включать или отключать службу.
Пример файла конфигурации для сервера времени RFC 868 :
# default: off # description: An RFC 868 time server. This protocol provides a # site-independent, machine readable date and time. The Time service sends back # to the originating source the time in seconds since midnight on January first # 1900. # This is the tcp version. service time { disable = yes type = INTERNAL id = time-stream socket_type = stream protocol = tcp user = root wait = no } # This is the udp version. service time { disable = yes type = INTERNAL id = time-dgram socket_type = dgram protocol = udp user = root wait = yes }
Строки с символом «#» в начале являются комментариями, не влияющими на сервис. Существует две версии сервиса: первая основана на протоколе управления передачей (TCP), вторая — на протоколе пользовательских датаграмм (UDP). Тип и планируемое использование службы определяют необходимый базовый протокол. Проще говоря, UDP не может обрабатывать огромные объемы данных, поскольку ему не хватает возможности переупорядочивать пакеты в заданном порядке или гарантировать их целостность, но он быстрее, чем TCP. TCP имеет эти функции, но он медленнее. В каждой версии внутри фигурных скобок есть два столбца. Первый — это тип опции, второй — применяемая переменная.
Опция отключения — это переключатель запускать службу или нет. В большинстве случаев состояние по умолчанию — да . Чтобы активировать услугу, измените ее на no .
Есть три типа услуг. Тип - INTERNAL , если служба предоставляется xinetd, RPC , если она основана на удаленном вызове процедуры (обычно указан в файле /etc/rpc), или может быть UNLISTED, если служба отсутствует ни в /etc/services, ни в файлы /etc/rpc.
Идентификатор — это уникальный идентификатор службы.
Тип_сокета . определяет способ передачи данных через сервис Существует три типа: поток , dgram и raw . Последнее полезно, когда мы хотим создать службу на основе нестандартного протокола.
С помощью параметра «Пользователь» можно выбрать пользователя, который будет владельцем работающей службы. По соображениям безопасности настоятельно рекомендуется выбрать пользователя без полномочий root .
Когда ожидание включено . , xinetd не получит запрос на службу, если у него есть соединение Итак, количество подключений ограничено одним. Он обеспечивает очень хорошую защиту, когда мы хотим установить только одно соединение за раз.
Для xinetd доступно множество других опций. В большинстве дистрибутивов Linux полный список возможных опций и их описание доступны с помощью команды «man xinetd.conf».
Чтобы применить новую конфигурацию, процессу xinetd необходимо отправить сигнал SIGHUP , чтобы заставить его перечитать файлы конфигурации. Этого можно добиться с помощью следующей команды: kill -SIGHUP "PID"
. PID — это фактический номер идентификатора процесса xinetd, который можно получить с помощью команды pgrep xinetd
. [ 7 ] [ 8 ]
Ссылки
[ редактировать ]- ^ «xinetd-org/xinetd» . Гитхаб . Проверено 10 июля 2014 г.
- ^ «АВТОРСКОЕ ПРАВО» . Гитхаб . 19 февраля 2003 г. Проверено 10 июля 2014 г.
- ^
Уэллс, Николас (2000). «4: Использование простых сетевых служб». Руководство по установке и администрированию Linux . Том. 1. Бостон, Массачусетс: Cengage Learning EMEA. п. 167. ИСБН 9780619000974 . Проверено 3 июля 2017 г.
[...] суперсервер (также называемый метасервером) [...] прослушивает несколько сетевых портов и запускает соответствующую службу, когда клиентское соединение поступает на этот порт. Наиболее широко используемая программа-суперсервер называется inetd для демона Интернета. Еще один суперсервер, который набирает популярность, — это xinetd для расширенного демона Интернета [...].
- ^ Смит, Родерик В. (2001). «Сеть» . Учебное пособие по Linux . Сайбекс Пресс. п. 365 . ISBN 0-7821-2939-0 .
- ^ Негус, К. (2002). «Запуск сетевых служб». Red Hat Linux 8 Библия . Wiley Publishing Inc. с. 1007. ИСБН 0-7645-4968-5 .
- ^ «Страница руководства Ubuntu: xinetd — демон расширенных интернет-служб» . Убунту . 14 июня 2001 г. Архивировано из оригинала 23 сентября 2019 г. Проверено 21 апреля 2020 г.
Из-за особенностей работы xinetd (как и inetd) также называют суперсервером. (...) До сих пор единственной причиной существования суперсервера была экономия системных ресурсов за счет предотвращения разветвления множества процессов, которые могли быть бездействующими большую часть своей жизни.
- ^ Справочная страница Linux: xinetd.conf(5) http://linux.die.net/man/5/xinetd.conf
- ^ Пере, Ласло (2005). «Сетевые службы». Эксплуатация систем GNU/Linux II . Кискапу Кфт. (Венгрия). стр. 107–136. ISBN 963-9301-98-1 .
Внешние ссылки
[ редактировать ]- Форк openSUSE , содержащий все патчи из нескольких дистрибутивов: openSUSE, Debian, Fedora, Gentoo,...