Главная

Использование сценариев запуска в Linux

Очень часто у нас есть процессы в Linux, которые мы хотим всегда запускать в фоновом режиме при запуске. Это будут процессы, которые нам нужно запускать при загрузке и всегда быть для нас доступными. Если мы используем дистрибутив Linux с GUI (графическим пользовательским интерфейсом), например Kali или Ubuntu, нам нужно, чтобы процесс X11 был запущен постоянно. Если мы используем Linux в качестве веб-сервера, мы, вероятно, всегда хотим, чтобы Apache и, возможно, MySQL запускались при загрузке и всегда работали. В даной статье рассмотрим использование сценариев запуска в Linux.

Процесс загрузки Linux

Для начала нам нужно изучить процесс загрузки Linux. В Linux процесс загрузки начинается с BIOS (базовая система ввода-вывода), затем MBR (основная загрузочная запись) выполняет GRUB (GRand Unified Bootloader), затем ядро ​​выполняет инициализацию (инициализацию или первый процесс), и затем, наконец, программа уровня запуска выполняется из /etc/rc.d.

Как вы, наверное, уже знаете, Linux можно запускать на нескольких уровнях запуска, а именно:

      • 0 — остановить систему
      • 1 — однопользовательский режим (минимум сервисов)
      • 2 — многопользовательские режимы
      • 3 — многопользовательский режим
      • 4 — многопользовательский режим
      • 5 — многопользовательский режим
      • 6 — перезагрузить систему

Наша Kali, будучи дистрибутивом Linux на основе Debian, обычно загружается на уровне выполнения 2.

Процесс Init.d

Init — самый первый процесс. Это предок всех процессов Linux и всегда имеет идентификатор процесса 1. Как вы можете видеть на снимке экрана ниже, init имеет PID 1.

kali > ps aux | grep init

Затем этот процесс инициализации передает процессы загрузки демону rc.d.

Здесь важно отметить, что разные дистрибутивы Linux немного по-разному обрабатывают процесс запуска демона. Как правило, все они используют процесс инициализации в качестве первого процесса, но то, как они переходят к сценариям запуска, немного отличается. В этом случае мы будем смотреть конкретно на нашу Kali Linux, которая использует ту же процедуру, что и другие системы Linux на основе Debian.

Список каталога init.d

Теперь, когда у нас есть общее представление о процессе загрузки в Linux, давайте посмотрим, сможем ли мы добавить Snort к процессу загрузки в нашей Kali.

kali > cd /etc/init.d
kali > ls -l

Как видите, это файлы, которые могут быть запущены init при загрузке. Обратите внимание, например, на apache2. Если мы пройдем немного дальше по странице, мы должны найти rc.local.

Открытие rc.local с помощью текстового редактора.

Теперь давайте откроем в любом текстовом редакторе rc.local, который содержит скрипт для запуска необходимых процессов в фоновом режиме при загрузке системы. Я буду использовать Leafpad здесь.

kali > leafpad /etc/init.d/rc.local

Установка Snort

Теперь мы посмотрим, сможем ли мы использовать то, что узнали, чтобы заставить 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).

Strat Snort от rc.local

Есть много способов заставить скрипт запускаться при запуске, но, вероятно, самым простым является использование файла 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 (систему обнаружения вторжений), для автоматического запуска при загрузке, чтобы она была доступна для защиты нашей сети без какого-либо взаимодействия с пользователем.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Click to rate this post!
[Total: 0 Average: 0]
faza

Recent Posts

Лучший адаптер беспроводной сети для взлома Wi-Fi

Чтобы взломать сеть Wi-Fi с помощью Kali Linux, вам нужна беспроводная карта, поддерживающая режим мониторинга…

4 месяца ago

Как пользоваться инструментом FFmpeg

Работа с консолью считается более эффективной, чем работа с графическим интерфейсом по нескольким причинам.Во-первых, ввод…

5 месяцев ago

Как создать собственный VPN-сервис

Конечно, вы также можете приобрести подписку на соответствующую услугу, но наличие SSH-доступа к компьютеру с…

5 месяцев ago

ChatGPT против HIX Chat: какой чат-бот с искусственным интеллектом лучше?

С тех пор как ChatGPT вышел на арену, возросла потребность в поддержке чата на базе…

5 месяцев ago

Разведка по Wi-Fi и GPS с помощью Sparrow-wifi

Если вы когда-нибудь окажетесь в ситуации, когда вам нужно взглянуть на спектр беспроводной связи, будь…

5 месяцев ago

Как обнаружить угрозы в памяти

Elastic Security стремится превзойти противников в инновациях и обеспечить защиту от новейших технологий злоумышленников. В…

5 месяцев ago