Очень часто у нас есть процессы в Linux, которые мы хотим всегда запускать в фоновом режиме при запуске. Это будут процессы, которые нам нужно запускать при загрузке и всегда быть для нас доступными. Если мы используем дистрибутив Linux с GUI (графическим пользовательским интерфейсом), например Kali или Ubuntu, нам нужно, чтобы процесс X11 был запущен постоянно. Если мы используем Linux в качестве веб-сервера, мы, вероятно, всегда хотим, чтобы Apache и, возможно, MySQL запускались при загрузке и всегда работали. В даной статье рассмотрим использование сценариев запуска в Linux.
Для начала нам нужно изучить процесс загрузки Linux. В Linux процесс загрузки начинается с BIOS (базовая система ввода-вывода), затем MBR (основная загрузочная запись) выполняет GRUB (GRand Unified Bootloader), затем ядро выполняет инициализацию (инициализацию или первый процесс), и затем, наконец, программа уровня запуска выполняется из /etc/rc.d.
Как вы, наверное, уже знаете, Linux можно запускать на нескольких уровнях запуска, а именно:
Наша Kali, будучи дистрибутивом Linux на основе Debian, обычно загружается на уровне выполнения 2.
Init — самый первый процесс. Это предок всех процессов Linux и всегда имеет идентификатор процесса 1. Как вы можете видеть на снимке экрана ниже, init имеет PID 1.
kali > ps aux | grep init
Затем этот процесс инициализации передает процессы загрузки демону rc.d.
Здесь важно отметить, что разные дистрибутивы Linux немного по-разному обрабатывают процесс запуска демона. Как правило, все они используют процесс инициализации в качестве первого процесса, но то, как они переходят к сценариям запуска, немного отличается. В этом случае мы будем смотреть конкретно на нашу Kali Linux, которая использует ту же процедуру, что и другие системы Linux на основе Debian.
Теперь, когда у нас есть общее представление о процессе загрузки в Linux, давайте посмотрим, сможем ли мы добавить Snort к процессу загрузки в нашей Kali.
kali > cd /etc/init.d
kali > ls -l
Как видите, это файлы, которые могут быть запущены init при загрузке. Обратите внимание, например, на apache2. Если мы пройдем немного дальше по странице, мы должны найти rc.local.
Теперь давайте откроем в любом текстовом редакторе rc.local, который содержит скрипт для запуска необходимых процессов в фоновом режиме при загрузке системы. Я буду использовать Leafpad здесь.
kali > leafpad /etc/init.d/rc.local
Теперь мы посмотрим, сможем ли мы использовать то, что узнали, чтобы заставить Snort IDS всегда запускаться при загрузке. Если Snort еще не установлен, сделайте это сейчас. Для этого вы можете ввести:
kali > ls -l
Как видите, Snort поместил сценарий запуска в каталог /etc/init.d. Теперь все, что нам нужно сделать, это выполнять этот скрипт каждый раз при запуске системы.
Если вы скомпилировали Snort из исходного кода, у вас может не быть этого скрипта. В этом случае просто создайте файл с именем «snort» и сохраните его в каталоге /etc/init.d. В этом файле поместите команду для запуска Snort, например:
/usr/sbin/snort -D -c /etc/snort/snort.conf -l /var/log/snort
Убедитесь, что у этого скрипта есть права на выполнение (755).
Есть много способов заставить скрипт запускаться при запуске, но, вероятно, самым простым является использование файла rc.local. Как мы видели выше, файл rc.local содержит скрипт для запуска различных служб при загрузке. Теперь все, что нам нужно сделать, это добавить в этот файл команды для запуска Snort.
Давайте откроем этот файл с помощью Leafpad и добавим две строки в конец файла: [1] убедитесь, что правильный интерфейс включен и находится в неразборчивом режиме (ifconfig eth0 up -arp) и [2] выполните скрипт, который пакет Snort помещается в каталог init.d (/etc/init.d/snort start).
Теперь при каждом запуске вашей системы Snort всегда будет запускаться в фоновом режиме. Давайте проверим это. Перезагрузите свою систему Kali и посмотрим, запустится ли Snort автоматически.
Теперь, когда наша система перезагрузилась, давайте проверим, работает ли Snort, набрав:
kali > ps aux | grep snort
Теперь наша сеть всегда защищена Snort, когда бы мы ни запускали нашу систему.
В этом руководстве мы рассмотрели, как Linux запускает процессы при загрузке, и настроили Snort, наиболее широко используемую в мире IDS (систему обнаружения вторжений), для автоматического запуска при загрузке, чтобы она была доступна для защиты нашей сети без какого-либо взаимодействия с пользователем.
Чтобы взломать сеть Wi-Fi с помощью Kali Linux, вам нужна беспроводная карта, поддерживающая режим мониторинга…
Работа с консолью считается более эффективной, чем работа с графическим интерфейсом по нескольким причинам.Во-первых, ввод…
Конечно, вы также можете приобрести подписку на соответствующую услугу, но наличие SSH-доступа к компьютеру с…
С тех пор как ChatGPT вышел на арену, возросла потребность в поддержке чата на базе…
Если вы когда-нибудь окажетесь в ситуации, когда вам нужно взглянуть на спектр беспроводной связи, будь…
Elastic Security стремится превзойти противников в инновациях и обеспечить защиту от новейших технологий злоумышленников. В…