26 апреля, 2024

Основы Linux. Часть 25 (супер-демон Inetd)

Содержание:

С возвращением, мои хакеры!

Мы настойчиво пытаемся познакомить вас с Linux, ведь почти все взломы делаются именно с его помощью, поэтому каждый хакер должен его знать и использовать. Сегодня мы рассмотрим довольно непонятный, но мощный процесс. В Linux существует один суперпроцесс, который называется inetd или xinetd или rlinetd. Знаем, знаем… это сбивает с толку, но вы уж потерпите немножко.

Прежде чем мы начнем обсуждать процесс inetd, мы хотим напомнить, что в Linux и Unix процессы, работающие в фоновом режиме, называются daemon (дэмон). Некоторые называют их demon (демон), но это неверно. Daemon — это дух, который влияет на чей-то характер или личность. Они не являются представителями добра или зла, а скорее поддерживают независимую мысль и волю. Тем не менее, в настоящей статье мы будем использовать общепринятую русскую транскрипцию слова daemon — «демон».

Теперь вернемся к inetd. В начале (ну, по крайней мере, в начале Unix) все демоны запускались во время загрузки и выполнялись непрерывно. Это означало, что процессы, которые не использовались, потребляли ресурсы системы, и постепенно это приводило к снижению ее производительности. Это был очень неэффективный способ делать бизнес.

По мере того, как операционные системы приобретали все больше и больше сервисов, стало очевидно, что с этим нужно что-то делать. В результате программист из института Беркли решил, что лучше всего создать демона, который будет контролировать других демонов, своего рода супер-демона. Таким образом появился inetd, или Интернет-демон.

Inetd всегда работает в фоновом режиме, а затем решает, когда запускать или останавливать работу других демонов. Таким образом, если вызов поступает в 21-й порт для службы FTP, inetd запускает демона FTP. Когда вызов поступает на 80-й порт для HTTP-сервисов, то inetd запускает службы HTTP и т.д. Таким образом, inetd сохраняет ресурсы системы и улучшает ее общую производительность.

Читать также:  Как сгенерировать страницу для кликджекинг-атаки с помощью Burp Suite

В конце концов, хакеры нашли в этом супер-демоне уязвимость и использовали ее несколькими способами. Мы знаем, о чем вы сейчас подумали: «Если я могу использовать супер-демона, который контролирует других демонов, то я могу управлять всей системой. По крайней мере, если я могу контролировать супер-демона, то уж во всяком случае, могу положить всю систему». Это именно то, что и произошло, а в результате у нас появился новый и улучшенный супер-демон под названием xinetd.

Xinetd был разработан для решения некоторых уязвимостей в безопасности inetd и был довольно быстро принят коммерческими дистрибутивами Linux — Red Hat и SUSE. Debian и Ubuntu, которые являются базовыми дистрибутивами для Kali Linux и BackTrack, соответственно, остались вначале со старым inetd. Но теперь Debian перешел к более новой версии inetd, названной как rlinetd.

Найдите rlinetd

Мы можем найти rlinetd в нашей системе Kali, набрав в консоли следующее:

kali > locate rlinetd

В верхней части списка мы видим конфигурационный файл rlinetd и сам файл демона.

Файл-справка по rlinetd

Как мы упоминали в предыдущих статьях, всякий раз, когда нам нужно узнать что-то о конкретной команде в Linux, мы можем, конечно, погуглить наш вопрос. Однако в качестве альтернативного способа мы можем использовать команду man (от слова manual — руководство). Просто вводим в консоли команду «man» перед интересующей нас командой, и система подтягивает файл справки. Давайте посмотрим справку по rlinetd.

kali > man rlinetd

Посмотрите на содержание файла rlinetd.conf

Наконец, давайте посмотрим на файл конфигурации rlinetd. Откроем его с помощью редактора Leafpad или любого другого текстового редактора, который вам нравится.

kali> leadpad rlinetd

Мы можем сделать систему Linux более защищенной, если установим в файле rlinetd.conf некоторые значения по умолчанию. Например, если наша система используется только для служб FTP, то логично предположить, что запускать какую-либо другую службу — не только неэффективно, но и небезопасно. Например, если хакер попытается использовать HTTP, а HTTP отключен в rlinetd.conf, то ему не повезло.

Читать также:  Metasploit для начинающего хакера. Часть 11 (пост-эксплуатация с Mimikatz)

Мы также могли бы изменить rlinetd.conf таким образом, чтобы по мере необходимости запускались только FTP-службы и ничего более. Если вы хотите, чтобы ваша система была доступна только для IP-адресов из определенного списка или только для вашей внутренней сети, то вы также можете настроить такой доступ в файле rlinetd.conf.

Поскольку вы новичок в Linux, мы пока не рекомендуем вносить какие-либо изменения в rlinetd, так как вы можете сломать вашу систему. Хотя вы и знаете теперь, что такое inetd. По мере роста ваших навыков системного администратора вы сможете управлять этим супер-демоном и сделаете систему более безопасной и эффективной.

Не путайте inetd с init.d

Новички в Linux часто путают init.d и inetd. Init.d — это демон инициализации, который запускается при запуске системы. Он определяет уровень запуска (runlevel) и тех демонов, которые должны активироваться при запуске системы. Когда компьютер включен, ядро ​​запускает системный init.d, который всегда имеет идентификатор процесса (PID), равный 1.

Процесс init запускает целый ряд скриптов, которые готовят систему к использованию. Это такие вещи, как проверка файловой системы, а затем ее монтирование, это запуск тех системных демонов, работа которых необходима. Эти скрипты часто называются rc-файлами, потому что все они начинаются с «rc». (от слов run command — команда запуска). Мы расскажем больше об init.d в следующей статье, но сейчас мы хотели убедиться, что это отличие вам понятно.

Обязательно возвращайтесь, мои дорогие хакеры! Мы подробно рассмотрим все внутреннее устройство Linux и сделаем из вас профессионалов!

Предыдущие статьи ( 1, 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24).

Читать также:  Тонкая настройка Ubuntu. Часть 4 (Аудит, антивирусы и мониторинг)

Добавить комментарий