Uvod
Preduvjeti
Korak 1: Instalirajte potrebne pakete
Korak 2 - Preuzmite i potvrdite OSSEC
Korak 3: Odredite svoj SMTP poslužitelj
Korak 4: Instalirajte OSSEC
Korak 5: Pokrenite OSSEC
Korak 6: Prilagodite OSSEC
Više informacija
Uvod
OSSEC je sustav za otkrivanje upada otvorenog koda baziran na hostu (HIDS) koji obavlja analizu dnevnika, provjeru integriteta, praćenje Windows registra, otkrivanje rootkita, upozorenje temeljeno na vremenu i aktivni odgovor. To je sigurnosna aplikacija koju morate imati na bilo kojem poslužitelju.
OSSEC se može instalirati za praćenje samo poslužitelja na kojem je instaliran (lokalna instalacija) ili se može instalirati kao poslužitelj za praćenje jednog ili više agenata. U ovom vodiču naučit ćete kako instalirati OSSEC za nadgledanje CentOS 7 kao lokalne instalacije.
Preduvjeti
Poslužitelj CentOS 7 po mogućnosti postavljen sa SSH ključevima i prilagođen korištenjem Početne postavke poslužitelja CentOS 7 . Prijavite se na poslužitelj koristeći standardni korisnički račun. Pretpostavimo da je korisničko ime joe .
ssh -l joe server-ip-address
Korak 1: Instalirajte potrebne pakete
OSSEC će biti preveden iz izvora, tako da vam je potreban kompajler da bi to bilo moguće. Također zahtijeva dodatni paket za obavijesti. Instalirajte ih upisivanjem:
sudo yum install -y gcc inotify-tools
Korak 2 - Preuzmite i potvrdite OSSEC
OSSEC se isporučuje kao komprimirani tarball koji se mora preuzeti s web stranice projekta. Datoteka kontrolnog zbroja, koja će se koristiti za provjeru da tarball nije neovlaštena, također se mora preuzeti. U vrijeme ove publikacije, najnovija verzija OSSEC-a je 2.8.2. Provjerite stranicu za preuzimanje projekta i preuzmite bilo koju najnoviju verziju.
Da preuzmete tarball, upišite:
wget -U ossec http://www.ossec.net/files/ossec-hids-2.8.2.tar.gz
Za datoteku kontrolnog zbroja upišite:
wget -U ossec http://www.ossec.net/files/ossec-hids-2.8.2-checksum.txt
Uz preuzete obje datoteke, sljedeći korak je provjera MD5 i SHA1 kontrolnih zbroja tarball-a. Za zbroj MD5 upišite:
md5sum -c ossec-hids-2.8.2-checksum.txt
Očekivani izlaz je:
ossec-hids-2.8.2.tar.gz: OK
md5sum: WARNING: 1 line is improperly formatted
Da biste potvrdili SHA1 hash, upišite:
sha1sum -c ossec-hids-2.8.2-checksum.txt
A njegov očekivani učinak je:
ossec-hids-2.8.2.tar.gz: OK
sha1sum: WARNING: 1 line is improperly formatted
Korak 3: Odredite svoj SMTP poslužitelj
Tijekom procesa instalacije OSSEC-a, od vas će se tražiti da navedete SMTP poslužitelj za svoju adresu e-pošte. Ako ne znate što je to, najlakši način da saznate je izdavanjem ove naredbe s vašeg lokalnog računala (zamijenite lažnu adresu e-pošte svojom pravom):
dig -t mx you@example.com
Relevantni odjeljak u izlazu prikazan je u ovom bloku koda. U ovom uzorku izlaza, SMTP poslužitelj za traženu adresu e-pošte nalazi se na kraju retka - mail.vivaldi.net. . Imajte na umu da je točka na kraju uključena.
;; ANSWER SECTION:
vivaldi.net. 300 IN MX 10 mail.vivaldi.net.
Korak 4: Instalirajte OSSEC
Da biste instalirali OSSEC, prvo morate raspakirati tarball, što ćete učiniti tako da upišete:
tar xf ossec-hids-2.8.2.tar.gz
Bit će raspakiran u direktorij koji nosi naziv i verziju programa. Promijenite ili cdu njega. OSSEC 2.8.2, verzija instalirana za ovaj članak, ima manju grešku koju je potrebno popraviti prije početka instalacije. Do objave sljedeće stabilne verzije, koja bi trebala biti OSSEC 2.9, to ne bi trebalo biti potrebno jer je popravak već u glavnoj grani. Popraviti ga za OSSEC 2.8.2 samo znači uređivanje jedne datoteke koja se nalazi u active-responsedirektoriju. Datoteka je hosts-deny.sh, stoga je otvorite koristeći:
nano active-response/hosts-deny.sh
Pred kraj datoteke potražite ovaj blok koda:
# 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
U recima koji počinju s TMP_FILE izbrišite razmake oko znaka = . Nakon uklanjanja razmaka, taj dio datoteke trebao bi biti kao što je prikazano u bloku koda u nastavku. Spremite i zatvorite datoteku.
# 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
Sada kada je popravak ušao, možemo započeti proces instalacije, što činite tako da upišete:
sudo ./install.sh
Tijekom procesa instalacije od vas će se tražiti da unesete neke podatke. U većini slučajeva trebate samo pritisnuti ENTER da biste prihvatili zadano. Prvo, od vas će se tražiti da odaberete jezik instalacije, koji je prema zadanim postavkama engleski (en). Stoga pritisnite ENTER ako je to vaš željeni jezik. U suprotnom, unesite 2 slova s popisa podržanih jezika. Nakon toga ponovno pritisnite ENTER .
Prvo pitanje će vas pitati koju vrstu instalacije želite. Ovdje unesite lokalno .
1- What kind of installation do you want (server, agent, local, hybrid or help)? local
Za sljedeća pitanja pritisnite ENTER kako biste prihvatili zadano. Pitanje 3.1 će od vas zatražiti vašu adresu e-pošte, a zatim zatražiti vaš SMTP poslužitelj. Za to pitanje unesite valjanu adresu e-pošte i SMTP poslužitelj koji ste odredili u 3. koraku.
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?
Ako je instalacija uspješna, trebali biste vidjeti ovaj izlaz:
- Configuration finished properly.
...
More information can be found at http://www.ossec.net
--- Press ENTER to finish (maybe more information below). ---
Pritisnite ENTER za završetak instalacije.
Korak 5: Pokrenite OSSEC
OSSEC je instaliran, ali nije pokrenut. Da biste ga pokrenuli, prvo se prebacite na root račun.
sudo su
Zatim ga pokrenite izdavanjem sljedeće naredbe.
/var/ossec/bin/ossec-control start
Nakon toga provjerite svoju pristiglu poštu. Trebalo bi doći do upozorenja od OSSEC-a da vas obavještava da je pokrenut. Uz to, sada znate da je OSSEC instaliran i da će po potrebi slati upozorenja.
Korak 6: Prilagodite OSSEC
Zadana konfiguracija OSSEC-a radi dobro, ali postoje postavke koje možete podesiti kako bi bolje zaštitio svoj poslužitelj. Prva datoteka koju treba prilagoditi je glavna konfiguracijska datoteka - ossec.conf, koju ćete pronaći u /var/ossec/etcdirektoriju. Otvorite datoteku:
nano /var/ossec/etc/ossec.conf
Prva stavka koju treba provjeriti je postavka e-pošte koju ćete pronaći u globalnom odjeljku datoteke:
<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>
Provjerite je li email_from adresa valjana e-pošta. Inače, SMTP poslužitelji nekog davatelja e-pošte označit će upozorenja iz OSSEC-a kao neželjenu poštu. Ako FQDN poslužitelja nije postavljen, dio domene e-pošte postavlja se na ime hosta poslužitelja, tako da je ovo postavka za koju stvarno želite imati valjanu adresu e-pošte.
Još jedna postavka koju želite prilagoditi, posebno tijekom testiranja sustava, je učestalost kojom OSSEC provodi svoje revizije. Ta se postavka nalazi u odjeljku syscheck i, prema zadanim postavkama, pokreće se svaka 22 sata. Da biste testirali OSSEC-ove značajke upozorenja, možda biste je željeli postaviti na nižu vrijednost, ali je nakon toga vratite na zadane vrijednosti.
<syscheck>
<!-- Frequency that syscheck is executed - default to every 22 hours -->
<frequency>79200</frequency>
Prema zadanim postavkama, OSSEC ne upozorava kada se nova datoteka doda na poslužitelj. Da biste to promijenili, dodajte novu oznaku odmah ispod oznake <frekvencija > . Kada je dovršen, odjeljak sada treba sadržavati:
<syscheck>
<!-- Frequency that syscheck is executed - default to every 22 hours -->
<frequency>79200</frequency>
<alert_new_files>yes</alert_new_files>
Posljednja postavka koju je dobro promijeniti je na popisu direktorija koje bi OSSEC trebao provjeriti. Pronaći ćete ih odmah nakon prethodne postavke. Prema zadanim postavkama, imenici su prikazani kao:
<!-- Directories to check (perform all possible verifications) -->
<directories check_all="yes">/etc,/usr/bin,/usr/sbin</directories>
<directories check_all="yes">/bin,/sbin</directories>
Izmijenite oba retka kako biste izvršili promjene izvješća OSSEC-a u stvarnom vremenu. Kada završe, trebali bi pročitati:
<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>
Spremite i zatvorite datoteku.
Sljedeća datoteka koju ćemo morati izmijeniti nalazi se local_rules.xmlu /var/ossec/rulesdirektoriju. Dakle cdu taj direktorij:
cd /var/ossec/rules
Taj direktorij sadrži OSSEC-ove datoteke pravila, od kojih se nijedna ne smije mijenjati, osim local_rules.xmldatoteke. U tu datoteku dodajemo prilagođena pravila. Pravilo koje trebamo dodati je ono koje se aktivira kada se doda nova datoteka. To pravilo, označeno brojem 554 , prema zadanim postavkama ne pokreće upozorenje. To je zato što OSSEC ne šalje upozorenja kada se pokrene pravilo s razinom postavljenom na nulu.
Evo kako pravilo 554 izgleda prema zadanim postavkama.
<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>
Moramo dodati izmijenjenu verziju tog pravila u local_rules.xmldatoteku. Ta je modificirana verzija navedena u bloku koda ispod. Kopirajte i dodajte na dno datoteke neposredno prije završne oznake.
<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>
Spremite i zatvorite datoteku, a zatim ponovno pokrenite OSSEC.
/var/ossec/bin/ossec-control restart
OSSEC je vrlo moćan komad softvera, a ovaj se članak dotaknuo samo osnova. Više postavki prilagodbe pronaći ćete u službenoj dokumentaciji .