GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare AIDE su CentOS 7

AIDE altrimenti chiamato come Advanced Intrusion Detection Environment. AIDE è uno degli strumenti più popolari per monitorare le modifiche al server in un sistema basato su LINUX. Viene utilizzato come controllo dell'integrità di file/cartelle. L'installazione di questo software è molto semplice. Questo è stato originariamente scritto da Rami Lehti e Pablo Virolainen nel 1999. Il controllo del sistema è inizializzato dal database. Questo database viene creato da regole di espressione regolare nei file di configurazione. Una volta che il database è stato inizializzato, può essere ulteriormente utilizzato per verificare l'integrità del server. Diversi algoritmi di digest sono incorporati per servire a questo scopo. Può essere utilizzato anche per verificare la presenza di incongruenze negli attributi del file.

Caratteristiche PRINCIPALI:

  • Supporta diversi algoritmi digest come md5, sha1, rmd160, tiger, crc32, sha256, sha512, whirlpool e molti altri
  • Supporta attributi di file come tipo di file, autorizzazioni, Inode, Uid, Gid, Nome collegamento, Dimensione, Conteggio blocchi, Numero di collegamenti, Mtime, Ctime e Atime
  • Supporta Posix ACL, SELinux, XAttrs e gli attributi di file system estesi
  • Supporta l'espressione regolare per includere o escludere file/directory in modo selettivo.
  • Supporta la compressione del database GZIP.
  • Binario statico autonomo per semplici configurazioni di monitoraggio client/server.

In questo articolo, sto discutendo dell'installazione e della configurazione dell'attuale versione stabile 0.15.1 di AIDE su un server CentOS 7. Esaminiamo le procedure.

Fase 1:installazione

Possiamo usare il comando yum per installare il software AIDE.

[root@server1 ~]# yum install aide
Loaded plugins: fastestmirror

Dependencies Resolved

===============================================================================================================================================
Package Arch Version Repository Size
===============================================================================================================================================
Installing:
aide x86_64 0.15.1-9.el7 base 129 k

Transaction Summary
===============================================================================================================================================
Install 1 Package

Total download size: 129 k
Installed size: 304 k

Fase 2:controlla e verifica la versione AIDE

Possiamo eseguire questo comando per confermare la versione AIDE e individuare il file di configurazione.

[root@server1 ~]# aide -v
Aide 0.15.1

Compiled with the following options:

WITH_MMAP
WITH_POSIX_ACL
WITH_SELINUX
WITH_PRELINK
WITH_XATTR
WITH_E2FSATTRS
WITH_LSTAT64
WITH_READDIR64
WITH_ZLIB
WITH_GCRYPT
WITH_AUDIT
CONFIG_FILE = "/etc/aide.conf"

Fase 3:crea il database

Una volta completata l'installazione di AIDE, dobbiamo creare il database primario che viene inizializzato dall'insieme di regole/espressioni nei file di configurazione.

[root@[root@server1 ~]# aide --init

AIDE, version 0.15.1

### AIDE database at /var/lib/aide/aide.db.new.gz initialized.
server1 ~]# aide --init

AIDE, version 0.15.1

### AIDE database at /var/lib/aide/aide.db.new.gz initialized.

Una volta creato il database, puoi spostarlo in quello originale rinominandolo per far funzionare l'AIDE.

root@server1 ~]# mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
[root@server1 ~]# cd /var/lib/aide
[root@server1 aide]# ls
aide.db.gz
[root@server1 aide]#
[root@server1 aide]#
[root@server1 aide]# ls -lt
total 2136
-rw------- 1 root root 2186673 Apr 1 04:09 aide.db.gz

Fase 4:esegui il controllo AIDE

[root@server1 aide]# aide --check

AIDE, version 0.15.1

### All files match AIDE database. Looks okay!

Fase 5:conferma la sua funzionalità e crea un database AIDE aggiornato

Crea un file binario manualmente e controlla se AIDE lo rileva.

root@server1 aide]# touch /usr/sbin/testbinary
[root@server1 aide]#
[root@server1 aide]#
[root@server1 aide]# aide --check
AIDE 0.15.1 found differences between database and filesystem!!
Start timestamp: 2016-04-01 04:14:10

Summary:
Total number of files: 23028
Added files: 1
Removed files: 0
Changed files: 1
---------------------------------------------------
Added files:
---------------------------------------------------

added: /usr/sbin/testbinary

---------------------------------------------------
Changed files:
---------------------------------------------------

changed: /usr/sbin

---------------------------------------------------
Detailed information about changes:
---------------------------------------------------
Directory: /usr/sbin
Mtime : 2016-04-01 03:42:47 , 2016-04-01 04:14:03
Ctime : 2016-04-01 03:42:47 , 2016-04-01 04:14:03

Possiamo verificare la presenza del nuovo file dai verbali di controllo dell'AIDE. Possiamo anche identificare eventuali modifiche agli attributi di file anche da questi controlli.
Dopo aver esaminato queste modifiche, è sempre meglio aggiornare il database dell'aide in modo che non venga riportato nuovamente al prossimo controllo dell'Aide.

[root@server1 aide]# aide --update
AIDE 0.15.1 found differences between database and filesystem!!
Start timestamp: 2016-04-01 04:15:21

Summary:
Total number of files: 23028
Added files: 1
Removed files: 0
Changed files: 1
---------------------------------------------------
Added files:
---------------------------------------------------

added: /usr/sbin/testbinary

---------------------------------------------------
Changed files:
---------------------------------------------------

changed: /usr/sbin

---------------------------------------------------
Detailed information about changes:
---------------------------------------------------

Si consiglia sempre di mantenere intatto il vecchio database AIDE e di rinominare il database aggiornato sulle basi quotidiane per tenerne traccia.

[root@server1 tmp]# cd /var/lib/aide/
root@server1 aide]# ls
aide.db.gz aide.db.new.gz
[root@server1 aide]# mv aide.db.gz aide.db.gz-Apr012016
[root@server1 aide]# mv aide.db.new.gz aide.db.gz

Questi processi sono piuttosto noiosi da controllare ogni volta e rinominare il database, possiamo utilizzare alcuni script per aggiornare queste impostazioni.

Passaggio 6:imposta cronjob per eseguire il controllo AIDE e il rapporto automaticamente

Creo un cron per avviare automaticamente il controllo AIDE per confermare l'integrità del mio server e segnalarmi su base giornaliera. Si prega di vedere i dettagli del mio script di seguito:

[root@server1 cron]# crontab -l
00 01 * * 0-6 /var/log/aide/aidechk.sh

[root@server1 cron]# systemctl restart crond.service
[root@server1 cron]#
[root@server1 cron]# systemctl status crond.service
crond.service - Command Scheduler
Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled)
Active: active (running) since Fri 2016-04-01 04:28:22 UTC; 8s ago
Main PID: 12378 (crond)
CGroup: /system.slice/crond.service
└─12378 /usr/sbin/crond -n

Apr 01 04:28:22 server1.centos7-test.com systemd[1]: Started Command Scheduler.
Apr 01 04:28:22 server1.centos7-test.com crond[12378]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 98% if used.)
Apr 01 04:28:22 server1.centos7-test.com crond[12378]: (CRON) INFO (running with inotify support)
Apr 01 04:28:22 server1.centos7-test.com crond[12378]: (CRON) INFO (@reboot jobs will be run at computer's startup.)
[root@server1 cron]#

root@server1 tmp]# cat /var/log/aide/aidechk.sh

#!/bin/sh
#aide check - SShameer
DATE=`date +%Y-%m-%d`
echo $DATE
REPORT="Aide-"$DATE.txt
echo $REPORT
echo "System check !! `date`" > /tmp/$REPORT
aide --check > /tmp/aidecheck.txt
cat /tmp/aidecheck.txt|/bin/grep -v failed >> /tmp/$REPORT
echo "**************************************" >> /tmp/$REPORT
tail -20 /tmp/aidecheck.txt >> /tmp/$REPORT
echo "****************DONE******************" >> /tmp/$REPORT
mail -s "$REPORT `date`" [email protected] < /tmp/$REPORT

Installa il comando mailx o le utilità di posta per migliorare l'invio di e-mail, se non è presente. Come da nostro script, il report verrà rigenerato su /tmp con il timestamp e ci verrà inviato via email quotidianamente. Si prega di vedere uno dei miei formati di report di esempio di seguito:

root@server1 tmp]# cat Aide-2016-04-01.txt
System check !! Fri Apr 1 05:04:40 UTC 2016
AIDE 0.15.1 found differences between database and filesystem!!
Start timestamp: 2016-04-01 05:04:40

Summary:
Total number of files: 23043
Added files: 15
Removed files: 0
Changed files: 4
---------------------------------------------------
Added files:
---------------------------------------------------

added: /etc/mail.rc
added: /usr/bin/Mail
added: /usr/bin/mail
added: /usr/bin/mailx
added: /usr/bin/nail
added: /usr/share/doc/mailx-12.5
added: /usr/share/doc/mailx-12.5/AUTHORS
added: /usr/share/doc/mailx-12.5/COPYING
added: /usr/share/doc/mailx-12.5/README
added: /usr/share/man/man1/Mail.1.gz
added: /usr/share/man/man1/mail.1.gz
added: /usr/share/man/man1/mailx.1.gz
added: /usr/share/man/man1/nail.1.gz
added: /var/log/aide/aidechk.sh
added: /var/spool/cron/root

---------------------------------------------------
Changed files:
---------------------------------------------------

changed: /root
changed: /usr/bin
changed: /usr/share/doc
changed: /usr/share/man/man1

---------------------------------------------------
Detailed information about changes:
---------------------------------------------------
Directory: /root
Mtime : 2014-07-07 21:41:51 , 2016-04-01 05:02:57
Ctime : 2014-07-07 21:41:51 , 2016-04-01 05:02:57

Directory: /usr/bin
Mtime : 2014-10-21 14:33:45 , 2016-04-01 05:04:29
Ctime : 2014-10-21 14:33:45 , 2016-04-01 05:04:29

Directory: /usr/share/doc
Mtime : 2016-04-01 03:42:47 , 2016-04-01 05:04:29
Ctime : 2016-04-01 03:42:47 , 2016-04-01 05:04:29
Linkcount: 240 , 241

Directory: /usr/share/man/man1
Mtime : 2016-04-01 03:42:47 , 2016-04-01 05:04:29
Ctime : 2016-04-01 03:42:47 , 2016-04-01 05:04:29
**************************************
Detailed information about changes:
---------------------------------------------------
Directory: /root
Mtime : 2014-07-07 21:41:51 , 2016-04-01 05:02:57
Ctime : 2014-07-07 21:41:51 , 2016-04-01 05:02:57

Directory: /usr/bin
Mtime : 2014-10-21 14:33:45 , 2016-04-01 05:04:29
Ctime : 2014-10-21 14:33:45 , 2016-04-01 05:04:29

Directory: /usr/share/doc
Mtime : 2016-04-01 03:42:47 , 2016-04-01 05:04:29
Ctime : 2016-04-01 03:42:47 , 2016-04-01 05:04:29
Linkcount: 240 , 241

Directory: /usr/share/man/man1
Mtime : 2016-04-01 03:42:47 , 2016-04-01 05:04:29
Ctime : 2016-04-01 03:42:47 , 2016-04-01 05:04:29
****************DONE******************

Possiamo anche modificare il file di configurazione AIDE /etc/aide.conf per impostazioni avanzate. Ma la configurazione predefinita vale quasi la pena e va bene.

Questo è il modo in cui possiamo utilizzare AIDE per comprendere le modifiche al server e identificare l'accesso non autorizzato al nostro server che può essere dovuto a contenuti dannosi o all'intervento umano. Spero che questo articolo ti sia utile! Consiglierei i tuoi preziosi suggerimenti e raccomandazioni su questo.

Grazie! Buona giornata :)


Cent OS
  1. Come installare wordpress su CentOS 6

  2. Come installare il server database MySQL 8 su CentOS 8

  3. Come installare Mediawiki su un server CentOS

  4. Come installare SpaceWalk su CentOS 7 / RHEL 7

  5. Come installare il server di database MySQL su CentOS

Come installare Cacti su CentOS 8 / RHEL 8

Come installare PostgreSQL in CentOS 8

Come installare PostgreSQL Database Server CentOS 8

Come installare Oracle Database 21C su CentOS 8

Come installare Moodle su CentOS 8

Come installare MariaDB su CentOS 9 Stream