GNU/Linux >> Znalost Linux >  >> Cent OS

Monitorování a detekce upravených souborů pomocí Tripwire na CentOS 7

Tripwire je bezplatný a otevřený zdroj Intrusion Detection System (IDS). Je to bezpečnostní nástroj pro sledování a upozornění na změny souborů v systému. Tripwire je výkonný IDS, který chrání váš systém před nechtěnými změnami. Můžete jej použít ke sledování vašich systémových souborů, včetně souborů webových stránek, takže když dojde k nechtěné změně souboru, Tripwire zkontroluje váš systém a pokud je správně nastaven, může vás upozornit e-mailem.

V tomto tutoriálu vám ukážeme, jak sledovat a detekovat jakékoli změny ve vašich systémových souborech jinak pomocí Tripwire na systému CentOS 7. Ukážeme vám, jak nainstalovat a nakonfigurovat Tripwire na CentOS 7, jak generovat soubory klíčů Tripwire, konfigurovat a přidávat zásady tripwire, kontrolovat systém a povolit e-mailová upozornění pro nastavení tripwire a cron.

Co uděláme

  1. Nainstalujte Tripwire na CentOS 7
  2. Nakonfigurujte zásady Tripwire pro CentOS 7
  3. Ověření konfigurace Tripwire
  4. Přidat nové pravidlo do zásad Tripwire
  5. Nastavte upozorňování na e-mail Tripwire a Cron

Předpoklady

  • Systém CentOS 7
  • Kořenová oprávnění

Krok 1 – Instalace Tripwire na CentOS 7

Prvním krokem, který musíme udělat, je nainstalovat Tripwire do systému. Ve výchozím nastavení je tripwire k dispozici v úložišti CentOS 7.

Přihlaste se na svůj server a aktualizujte všechny balíčky.

ssh [email protected]
sudo yum update -y

Nyní nainstalujte Tripwire pomocí yum.

yum -y install tripwire

Po instalaci musíme vygenerovat nové soubory klíčů.

Tripwire pracuje se 2 soubory klíčů.

  1. site-key:Používá se k zabezpečení konfigurace Tripwire. Jakékoli změny konfigurace tripwire se tedy neuplatní, dokud konfiguraci znovu nevygenerujeme, a k tomu budeme vyzváni k zadání hesla „site-key“.
  2. místní klíč:Používá se k ověření binárního kódu tripwire. Když chceme aktualizovat systémovou databázi tripwire, musíme spustit příkaz tripwire a budeme vyzváni k zadání přístupové fráze pro 'local-key'.

Vygenerujme nové soubory tripwire klíčů (site a local keys) pomocí příkazu níže.

sudo tripwire-setup-keyfiles

Příkaz vygeneruje dva soubory klíčů 'site-key' a 'local-key' a budete požádáni o heslo pro každý z nich.

Zadejte svůj vlastní 'site-key ' heslo a stiskněte Enter.

Zadejte svůj vlastní „místní klíč ' heslo a znovu stiskněte Enter.

Dále podepište konfiguraci tripwire pomocí 'site-key'.

Zadejte svůj 'site-key ' přístupová fráze.

A nyní pro podepsání zásad Tripwire zadejte svůj 'místní klíč ' přístupová fráze.

Tripwire byl nainstalován na CentOS 7 a nová konfigurace tripwire a klíče jsou umístěny v adresáři '/etc/tripwire'.

Krok 2 – Konfigurace zásad Tripwire pro CentOS 7

Po instalaci tripwire, o které jsme hovořili v prvním kroku, musíme inicializovat databázi tripwire a ujistit se, že tam není žádná chyba.

Inicializujte databázi tripwire pomocí příkazu tripwire níže.

sudo tripwire --init

Budete dotázáni na heslo 'místní klíč' a pravděpodobně se zobrazí chybová zpráva 'žádný takový adresář', jak je uvedeno níže.

Dostaneme chybu, protože systém nemá adresář a soubory, které jsou již definovány v konfiguraci tripwire. Abychom tuto chybu vyřešili, musíme upravit konfiguraci tripwire 'twpol.txt' a znovu podepsat konfiguraci tripwire.

Nyní vygenerujte chybu protokolu z tripwire pomocí příkazu níže.

sudo sh -c "tripwire --check | grep Filename > no-directory.txt"

Všechny adresáře a soubory, které v systému CentOS 7 neexistují, jsou uvedeny v souboru 'mo-directory.txt'

cat no-directory.txt

Upravte konfiguraci tripwire 'twpol.txt' pomocí následujícího bash skriptu – spusťte tento skript na svém terminálu.

for f in $(grep "Filename:" no-directory.txt | cut -f2 -d:); do
sed -i "s|\($f\) |#\\1|g" /etc/tripwire/twpol.txt
done

Po tom všem musíme znovu vygenerovat a znovu podepsat konfiguraci tripwire pomocí příkazu twadmin, jak je ukázáno níže.

sudo twadmin -m P /etc/tripwire/twpol.txt

Zadejte své přístupové heslo „site-key“.

Znovu inicializujte databázi tripwire a ujistěte se, že se neobjeví žádná chyba.

sudo tripwire --init

Znovu inicializujte databázi tripwire bez jakékoli chyby.

Krok 3 – Ověření konfigurace Tripwire a kontrola systému

Pro ověření konfigurace tripwire můžeme spustit příkaz system check, jak je uvedeno níže.

sudo tripwire --check

A měli byste získat výsledek podobný následujícímu.

To znamená, že v našem systému nebyla nalezena žádná chyba ani porušení systému.

Nyní se pokusíme přidat nový soubor do kořenového domovského adresáře a znovu zkontrolovat pomocí tripwire.

Přejděte do kořenového domovského adresáře a vytvořte nový soubor 'hakase-labs.txt'.

cd ~/
touch hakase-labs.txt

Nyní znovu zkontrolujte systém pomocí příkazu tripwire.

sudo tripwire --check

A dostanete výsledek nového porušení v systému se závažností 100, jak je uvedeno níže.

V této fázi je Tripwire nainstalován a nakonfigurován pro systém CentOS 7.

Krok 4 – Přidání nového pravidla do zásad Tripwire

V tomto kroku vám ukážeme, jak přidat nové pravidlo do konfigurace zásad tripwire 'twpol.txt'.

K provedení této práce potřebujeme definovat název pravidla, závažnost, adresář pro monitorování a typ souborů. V tomto kroku vytvoříme nové pravidlo s názvem 'Wordpress Data' pro naši instalaci WordPress v adresáři '/var/www/' se závažností 'HIGH/SIG_HI' a všechny soubory v tomto adresáři jsou kritické (oba jejich vlastnictví stejně jako zdrojový kód nelze změnit).

Přejděte do konfiguračního adresáře tripwire '/etc/tripwire' a upravte konfigurační soubor 'twpol.txt' pomocí vim.

cd /etc/tripwire/
vim twpol.txt

Přejděte na konec řádku a vložte tam následující pravidlo WordPress.

# Ruleset for Wordpress
(
  rulename = "Wordpress Data",
  severity= $(SIG_HI)
)
{
        /var/www        -> $(SEC_CRIT);
}

Uložte a ukončete.

Regenerujte a znovu podepište konfiguraci pomocí příkazu twadmin, jak je uvedeno níže.

sudo twadmin -m P /etc/tripwire/twpol.txt

Zadejte své přístupové heslo „site-key“.

Nyní musíme znovu obnovit databázi tripwire.

sudo tripwire --init

Zadejte heslo „local-key“.

Byla přidána nová sada pravidel a aplikována na konfiguraci zásad Tripwire.

Zkontrolujte svůj systém pomocí příkazu tripwire níže.

sudo tripwire --check

A měli byste dostat výsledek bez chyby a porušení.

Nyní přejděte do adresáře '/var/www/' a vytvořte v něm nový soubor.

cd /var/www/
touch hakase-labs.php

Znovu proveďte kontrolu systému pomocí tripwire.

sudo tripwire --check

A dostanete výsledek, který říká narušení systému v adresáři '/var/www/' s úrovní zabezpečení High 100.

Bylo přidáno nové pravidlo a aplikováno na konfiguraci Tripwire Policy.

Krok 5 – Nastavení e-mailového upozornění Tripwire a cronu

V tomto kroku nakonfigurujeme upozornění pro konkrétní zásady sady pravidel tripwire a nakonfigurujeme cronjob pro automatickou kontrolu systému. Hlášení o jakémkoli porušení pravidla 'Wordpress Data' zašleme na e-mailovou adresu '[email protected]'.

Pro upozornění e-mailem poskytuje tripwire v konfiguraci funkci 'emailto'. A ve výchozím nastavení tripwire používá Postfix nebo Sendmail k odeslání zprávy e-mailem.

Před konfigurací e-mailových upozornění otestujte funkci upozornění tripwire pomocí příkazu níže.

sudo tripwire --test --email [email protected]

Zkontrolujte svůj e-mail a měli byste dostat e-mailovou zprávu z vašeho serveru, jak je uvedeno níže.

Nyní přejděte do adresáře '/etc/tripwire' a upravte konfiguraci 'twpol.txt'.

cd /etc/tripwire/
vim twpol.txt

Přidejte nový řádek 'emailto' do pravidla 'Wordpress Data', jak je uvedeno níže.

# Ruleset for Wordpress
(
  rulename = "Wordpress Data",
  severity= $(SIG_HI),
  emailto = [email protected]
)
{
        /var/www        -> $(SEC_CRIT);
}

Uložte a ukončete.

Regenerujte a podepište konfiguraci pomocí příkazu twadmin.

sudo twadmin -m P /etc/tripwire/twpol.txt

Zadejte své přístupové heslo „site-key“.

A regenerujte databázi tripwire.

sudo tripwire --init

Zadejte svou přístupovou frázi tripwire 'místní klíč'.

Konfigurace pro oznámení e-mailem Tripwire byla dokončena.

Nyní proveďte test vytvořením nového souboru znovu v adresáři '/var/www/'.

cd /var/www/
touch hakase.txt

Zkontrolujte svůj systém znovu pomocí příkazu níže.

sudo tripwire --check --email-report

Poznámka:

  • --e-mail-report: Odeslat zprávu o systému na e-mailovou adresu definovanou v každém pravidle.

Zkontrolujte svůj e-mail a výsledek, jak je uvedeno níže, byste měli dostat na svůj e-mail.

E-mailové upozornění pro Tripwire bylo povoleno a použito.

Dále povolíme automatickou kontrolu systému Tripwire pomocí nastavení cronu. Za tímto účelem vytvořte nový cron skript pod uživatelem root pomocí příkazu crontab níže.

sudo crontab -e -u root

Vložte následující konfiguraci cronu.

0 0 * * * tripwire --check --email-report

Uložte a ukončete.

Poznámka:

  • - Skript cron bude denně kontrolovat systém tripwire.

Nyní restartujte službu crond na CentOS 7.

systemctl restart crond

Nyní budete denně dostávat upozornění na zprávy o tripwire na váš e-mail.

Tripwire byl nainstalován a nakonfigurován pro systém CentOS 7.


Cent OS
  1. Monitorování serveru pomocí Icinga 2 a Icingaweb 2 na CentOS 7

  2. Centos 4.8 a Glibc 2.5?

  3. Jak odesílat a stahovat soubory pomocí Rsync

  1. Použití ATA přes Ethernet (AoE) na CentOS 7 (iniciátor a cíl)

  2. Použití ATA přes Ethernet (AoE) na CentOS 6.3 (iniciátor a cíl)

  3. Nainstalujte Fsniper ( Directory Monitoring ) Tool do CentOS, RHEL a Fedora

  1. Jak nainstalovat a nakonfigurovat Fail2ban na CentOS 8?

  2. Jak extrahovat soubory RAR v CentOS/RHEL 7 a 8

  3. tcpdump – rotace zachycených souborů pomocí -G, -W a -C