Как да инсталирате OSSEC HIDS на сървър CentOS 7

Въведение

OSSEC е система за откриване на проникване, базирана на хост, с отворен код (HIDS), която извършва анализ на регистрационни файлове, проверка на целостта, наблюдение на системния регистър на Windows, откриване на руткит, базирано на времето предупреждение и активен отговор. Това е задължително приложение за сигурност на всеки сървър.

OSSEC може да бъде инсталиран за наблюдение само на сървъра, на който е инсталиран (локална инсталация), или да бъде инсталиран като сървър за наблюдение на един или повече агенти. В този урок ще научите как да инсталирате OSSEC за наблюдение на CentOS 7 като локална инсталация.

Предпоставки

  • Сървър CentOS 7 за предпочитане е настроен със SSH ключове и персонализиран чрез Първоначална настройка на CentOS 7 сървър . Влезте в сървъра, като използвате стандартния потребителски акаунт. Да приемем, че потребителското име е joe .

    ssh -l joe server-ip-address
    

Стъпка 1: Инсталирайте необходимите пакети

OSSEC ще бъде компилиран от източник, така че имате нужда от компилатор, за да направите това възможно. Той също така изисква допълнителен пакет за известия. Инсталирайте ги, като напишете:

sudo yum install -y gcc inotify-tools

Стъпка 2 - Изтеглете и потвърдете OSSEC

OSSEC се доставя като компресиран tarball, който трябва да бъде изтеглен от уебсайта на проекта. Файлът с контролната сума, който ще се използва, за да се провери дали архивът не е бил подправен, също трябва да бъде изтеглен. Към момента на тази публикация най-новата версия на OSSEC е 2.8.2. Проверете страницата за изтегляне на проекта и изтеглете каквато и да е най-новата версия.

За да изтеглите tarball, въведете:

wget -U ossec http://www.ossec.net/files/ossec-hids-2.8.2.tar.gz

За файла с контролната сума въведете:

wget -U ossec http://www.ossec.net/files/ossec-hids-2.8.2-checksum.txt

След като и двата файла са изтеглени, следващата стъпка е да проверите контролните суми MD5 и SHA1 на tarball-а. За MD5sum въведете:

md5sum -c ossec-hids-2.8.2-checksum.txt

Очакваният изход е:

ossec-hids-2.8.2.tar.gz: OK
md5sum: WARNING: 1 line is improperly formatted

За да проверите SHA1 хеша, въведете:

sha1sum -c ossec-hids-2.8.2-checksum.txt

И очакваният му изход е:

ossec-hids-2.8.2.tar.gz: OK
sha1sum: WARNING: 1 line is improperly formatted

Стъпка 3: Определете вашия SMTP сървър

По време на процеса на инсталиране на OSSEC, ще бъдете подканени да посочите SMTP сървър за вашия имейл адрес. Ако не знаете какво е това, най-лесният метод да разберете е като издадете тази команда от вашата локална машина (заменете фалшивия имейл адрес с истинския):

dig -t mx you@example.com

Съответният раздел в изхода е показан в този кодов блок. В този примерен изход SMTP сървърът за запитания имейл адрес е в края на реда - mail.vivaldi.net. . Имайте предвид, че точката в края е включена.

;; ANSWER SECTION:
vivaldi.net.        300 IN  MX  10 mail.vivaldi.net.

Стъпка 4: Инсталирайте OSSEC

За да инсталирате OSSEC, първо трябва да разопаковате tarball-а, което правите, като напишете:

tar xf ossec-hids-2.8.2.tar.gz

Той ще бъде разопакован в директория, която носи името и версията на програмата. Променете или cdв него. OSSEC 2.8.2, версията, инсталирана за тази статия, има незначителна грешка, която трябва да бъде отстранена преди стартиране на инсталацията. Докато бъде пусната следващата стабилна версия, която трябва да бъде OSSEC 2.9, това не би трябвало да е необходимо, тъй като корекцията вече е в главния клон. Поправянето му за OSSEC 2.8.2 означава просто редактиране на един файл, който се намира в active-responseдиректорията. Файлът е hosts-deny.sh, така че го отворете, като използвате:

nano active-response/hosts-deny.sh

Към края на файла потърсете този блок код:

# Deleting from hosts.deny
elif [ "x$" = "xdelete" ]; then
   lock;
   TMP_FILE = `mktemp /var/ossec/ossec-hosts.XXXXXXXXXX`
   if [ "X$" = "X" ]; then
      # Cheap fake tmpfile, but should be harder then no random data
      TMP_FILE = "/var/ossec/ossec-hosts.`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -1 `"
   fi

На редовете, които започват с TMP_FILE , изтрийте интервалите около знака = . След като премахнете интервалите, тази част от файла трябва да бъде както е показано в блока с код по-долу. Запазете и затворете файла.

# Deleting from hosts.deny
elif [ "x$" = "xdelete" ]; then
   lock;
   TMP_FILE=`mktemp /var/ossec/ossec-hosts.XXXXXXXXXX`
   if [ "X$" = "X" ]; then
      # Cheap fake tmpfile, but should be harder then no random data
      TMP_FILE="/var/ossec/ossec-hosts.`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -1 `"
   fi

Сега, когато корекцията е вътре, можем да започнем процеса на инсталиране, който правите, като напишете:

sudo ./install.sh

По време на процеса на инсталиране ще бъдете подканени да предоставите някои данни. В повечето случаи трябва само да натиснете ENTER, за да приемете по подразбиране. Първо, ще бъдете подканени да изберете езика за инсталиране, който по подразбиране е английски (en). Така че натиснете ENTER, ако това е вашият предпочитан език. В противен случай въведете 2-те букви от списъка с поддържани езици. След това отново натиснете ENTER .

Първият въпрос ще ви попита какъв тип инсталация искате. Тук въведете local .

1- What kind of installation do you want (server, agent, local, hybrid or help)? local

За следващите въпроси натиснете ENTER, за да приемете по подразбиране. Въпрос 3.1 ще ви подкани за вашия имейл адрес и след това ще поиска вашия SMTP сървър. За този въпрос въведете валиден имейл адрес и SMTP сървъра, който сте определили в стъпка 3.

3- Configuring the OSSEC HIDS.

   3.1- Do you want e-mail notification? (y/n) [y]: 
      - What's your e-mail address? you@example.com
      - What's your SMTP server ip/host?

Ако инсталацията е успешна, трябва да видите този изход:

- Configuration finished properly.

...

    More information can be found at http://www.ossec.net

    ---  Press ENTER to finish (maybe more information below). ---

Натиснете ENTER, за да завършите инсталацията.

Стъпка 5: Стартирайте OSSEC

OSSEC е инсталиран, но не е стартиран. За да го стартирате, първо преминете към root акаунта.

sudo su

След това го стартирайте, като издадете следната команда.

/var/ossec/bin/ossec-control start

След това проверете входящата си кутия. Трябва да има сигнал от OSSEC, който да ви информира, че е започнал. С това вече знаете, че OSSEC е инсталиран и ще изпраща сигнали при необходимост.

Стъпка 6: Персонализирайте OSSEC

Конфигурацията по подразбиране на OSSEC работи добре, но има настройки, които можете да настроите, за да защитите по-добре вашия сървър. Първият файл за персонализиране е основният конфигурационен файл - ossec.conf, който ще намерите в /var/ossec/etcдиректорията. Отворете файла:

nano /var/ossec/etc/ossec.conf

Първият елемент, който трябва да проверите, е настройка за имейл, която ще намерите в глобалната секция на файла:

<global>
   <email_notification>yes</email_notification>
   <email_to>finid@vivaldi.net</email_to>
   <smtp_server>mail.vivaldi.net.</smtp_server>
   <email_from>ossecm@vultr.guest</email_from>
</global>

Уверете се, че email_from адресът е валиден имейл. В противен случай SMTP сървърите на някой доставчик на имейл ще маркират сигналите от OSSEC като спам. Ако FQDN на сървъра не е зададено, частта на домейна на имейла е зададена на името на хоста на сървъра, така че това е настройка, която наистина искате да имате валиден имейл адрес.

Друга настройка, която искате да персонализирате, особено при тестване на системата, е честотата, с която OSSEC извършва своите одити. Тази настройка е в секцията syscheck и по подразбиране се изпълнява на всеки 22 часа. За да тествате функциите за предупреждение на OSSEC, може да искате да я зададете на по-ниска стойност, но след това да я нулирате до стойността по подразбиране.

<syscheck>
   <!-- Frequency that syscheck is executed - default to every 22 hours -->
   <frequency>79200</frequency>

По подразбиране OSSEC не предупреждава, когато към сървъра се добави нов файл. За да промените това, добавете нов етикет точно под маркера <честота > . Когато приключи, разделът трябва да съдържа:

<syscheck>
   <!-- Frequency that syscheck is executed - default to every 22 hours -->
   <frequency>79200</frequency>

   <alert_new_files>yes</alert_new_files>

Една последна настройка, която е добре да се промени, е в списъка с директории, които OSSEC трябва да провери. Ще ги намерите веднага след предишната настройка. По подразбиране директориите се показват като:

<!-- Directories to check  (perform all possible verifications) -->
   <directories check_all="yes">/etc,/usr/bin,/usr/sbin</directories>
   <directories check_all="yes">/bin,/sbin</directories>

Променете двата реда, за да направите промени в отчета на OSSEC в реално време. Когато свършат, те трябва да четат:

<directories report_changes="yes" realtime="yes" check_all="yes">/etc,/usr/bin,/usr/sbin</directories>
<directories report_changes="yes" realtime="yes" check_all="yes">/bin,/sbin</directories>

Запазете и затворете файла.

Следващият файл, който ще трябва да модифицираме, е local_rules.xmlв /var/ossec/rulesдиректорията. И така cdв тази директория:

cd /var/ossec/rules

Тази директория съдържа файловете с правила на OSSEC, нито един от които не трябва да се променя, освен local_rules.xmlфайла. В този файл добавяме персонализирани правила. Правилото, което трябва да добавим, е това, което се задейства, когато се добави нов файл. Това правило, номерирано 554 , не задейства сигнал по подразбиране. Това е така, защото OSSEC не изпраща сигнали, когато се задейства правило с ниво, зададено на нула.

Ето как изглежда правило 554 по подразбиране.

 <rule id="554" level="0">
    <category>ossec</category>
    <decoded_as>syscheck_new_entry</decoded_as>
    <description>File added to the system.</description>
    <group>syscheck,</group>
 </rule>

Трябва да добавим модифицирана версия на това правило във local_rules.xmlфайла. Тази модифицирана версия е дадена в блока с код по-долу. Копирайте и го добавете в долната част на файла точно преди затварящия маркер.

 <rule id="554" level="7" overwrite="yes">
    <category>ossec</category>
    <decoded_as>syscheck_new_entry</decoded_as>
    <description>File added to the system.</description>
    <group>syscheck,</group>
 </rule>

Запазете и затворете файла, след което рестартирайте OSSEC.

/var/ossec/bin/ossec-control restart

Повече информация

OSSEC е много мощен софтуер и тази статия просто засегна основите. Ще намерите повече настройки за персонализиране в официалната документация .

Оставете коментар

Възходът на машините: Реални приложения на AI

Възходът на машините: Реални приложения на AI

Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.

DDOS атаки: кратък преглед

DDOS атаки: кратък преглед

Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.

Чудили ли сте се как хакерите печелят пари?

Чудили ли сте се как хакерите печелят пари?

Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.

Революционни изобретения на Google, които ще улеснят живота ви.

Революционни изобретения на Google, които ще улеснят живота ви.

Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.

Функционалности на референтните архитектурни слоеве за големи данни

Функционалности на референтните архитектурни слоеве за големи данни

Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.

Еволюция на съхранението на данни – инфографика

Еволюция на съхранението на данни – инфографика

Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече