Når du bruker flere operativsystemer, er det ideelt å alltid ha verktøy som lar oss opprettholde sentralisert og direkte kontroll over det. Et av de mest delikate problemene er utvilsomt sikkerheten og integriteten til filene, da dette garanterer tilgjengeligheten og påliteligheten til filene.
I dag vil Solvetic snakke om et praktisk verktøy kalt AIDE, der det vil være mulig å kontrollere integriteten til en fil eller katalog i de forskjellige Linux -distribusjonene og dermed være sikker på fullstendig pålitelighet av den valgte filen.
Hva er AIDEAIDE ((Advanced Intrusion Detection Environment) er en fil- og katalogintegritetskontroll i Linux -miljøer som lar oss som administratorer opprettholde spesifikk kontroll over dem.
Driften består av å opprette en database designet fra de vanlige uttrykksreglene som er tilgjengelige i konfigurasjonsfilene. Når denne databasen er initialisert, kan den brukes til å verifisere integriteten til de nødvendige filene.
AIDE -filattributterAIDE er ansvarlig for å bygge databasen fra filene som er angitt i aide.conf, som er AIDE -konfigurasjonsfilen. AIDE -databasen lagrer flere filattributter der vi har:
- filtype
- tillater
- bruker og gruppe
- filstørrelse
- mtime, ctime og atime
- vekststørrelse
- antall lenker og lenkenavn.
I tillegg oppretter AIDE en kryptografisk kontrollsum eller hash for hver fil ved hjelp av en eller en kombinasjon av følgende meldingsfordelingsalgoritmer: sha1, sha256, sha512, md5, rmd160, tiger, haval, crc32, og også acl -attributtene, xattr, selinux og e2fsattrs kan brukes når de eksplisitt er aktivert på kompileringstidspunktet.
AIDE har flere meldingsfordelingsalgoritmer som brukes til å bekrefte filens integritet. Alle de vanlige filattributtene kan også kontrolleres for inkonsekvenser i den. AIDE kan lese databaser med eldre eller nyere versjoner.
AIDE -funksjonerVed å bruke dette verktøyet har vi følgende egenskaper:
- Meldingsfordelte algoritmer som: md5, sha1, rmd160, tigger, crc32, sha256, sha512, boblebad (i tillegg med libmhash: gost, haval, crc32b)
- Filattributter som støttes: Filtype, Tillatelser, Inode, Uid, Gid, Linknavn, Størrelse, Blokknummer, Antall koblinger, Mtime, Ctime og Atime
- Den har støtte for Posix ACL, SELinux, XAttrs og utvidede filsystemattributter hvis støtten er samlet for ren tekst og databasekonfigurasjonsfiler
- Den har støtte for vanlig uttrykk for å selektivt inkludere eller ekskludere filer og kataloger for å bli overvåket
AIDE er inkludert i følgende UNIX -distribusjoner
- Debian
- Gentoo
- MacPorts
- FreeBSD
- CentOS / RedHat
- IPCop
- OpenSUSE
Det er viktig å presisere at AIDE ikke kan gi absolutt sikkerhet for endringen i en fil, siden som alle andre systemfiler, kan databasen og / eller binærene til AIDE også endres ved hjelp av passende verktøy.
1. Installere AIDE på Linux
AIDE er tilgjengelig i offisielle lagre for de mest populære Linux -distribusjonene, for dette kan vi installere det ved hjelp av en pakkebehandling i henhold til den valgte distroen slik:
apt install aide (Debian / Ubuntu) yum install aide CRHEL / CentOS) dnf install aide (Fedora) zypper install aide (OpenSUSE) emerge aide (Gentoo)
I dette tilfellet bruker vi Ubuntu. Der skriver vi inn bokstaven S for å godta nedlasting og installasjon av AIDE. Når den er installert, ser vi følgende:
Som vi kan se, er hovedkonfigurasjonsfilen /etc/aide/aide.conf. For å se den installerte versjonen, samt parametrene for kompileringstid, kan vi utføre følgende:
assistent -v
2. Tilgang til AIDE Linux -konfigurasjonsfilen
Vi får tilgang til AIDE -konfigurasjonsfilen ved å kjøre følgende linje med ønsket editor:
nano /etc/aide/aide.confVi vil se følgende:
I denne filen finner vi direktiver som definerer plasseringen av databasen, plasseringen av rapporten, standardreglene, katalogene eller filene som skal inkluderes i databasen, og mange flere.
3. Hvordan håndtere og forstå AIDE -regler
AIDE administrerer regler som:
sTillatelser - Tillatelser
nAntall lenker
eller= Bruker
gGrupper
sStørrelse (størrelse)
bBlokkertall
mmtime
tilen gang
cctime
selinuxSelinux sikkerhetskontekst
xattrsViser de utvidede attributtene til en fil
Fra disse reglene vil det være mulig å opprette tilpassede regler i AIDE -konfigurasjonsfilen. For eksempel kan vi lage følgende regel:
PERMS = p + u + g + acl + selinux + xattrsI dette tilfellet er PERMS -regelen implementert for tilgangskontroll, som vil oppdage eventuelle endringer i filen eller katalogene basert på fil- eller katalogtillatelser, bruker, gruppe, tilgangskontrolltillatelser, filattributter og mer.
En annen regel som vi kan implementere er en som bare sjekker innholdet i filen og den valgte filtypen, for eksempel:
INNHOLD = sha256 + ftypeHvis vi vil bekrefte det utvidede innholdet, filtypen og tilgangen, kan vi opprette en regel som:
CONTENT_EX = sha256 + ftype + p + u + g + n + acl + selinux + xattrsEn regel som hjelper oss med å oppdage endringer i katalogen bare på datanivå er:
DATAONLY = p + n + u + g + s + acl + selinux + xattrs + sha256Disse reglene må legges til nederst i AIDE -konfigurasjonsfilen:
Vi lagrer endringene med Ctrl + O -tastene og avslutter med Ctrl + X.
4. Hvordan definere regler for visning av AIDE -filer og kataloger
Med AIDE vil det også være mulig å lage regler for bestemte filer eller kataloger som skal analyseres. For dette får vi tilgang til /etc/aide/aide.conf banen igjen, og vi kan lage følgende regler:
/ root / \ … * PERMS (Denne regelen sjekker tillatelsene i rotkatalogen) / root / CONTENT_EX (Denne regelen sjekker alle filene i roten før eventuelle endringer) / etc / DATAONLY (Denne regelen lar oss oppdage eventuelle endringer i katalogen /etc)
Vi kan lagre endringene i AIDE -konfigurasjonsfilen.
5. Hvordan bruke AIDE til å bekrefte filer og katalogintegritet i Linux
Når reglene som skal brukes med AIDE er definert, vil neste trinn være å bygge databasen mot kontrollene som vil bli utført ved hjelp av parameteren --init.
Med følgende kommando opprettes en database som inneholder alle filene vi definerer i AIDE -konfigurasjonsfilen:
Hjelper -init
Når dette er gjort, fortsett å endre navnet på databasen til /var/lib/aide/aide.db.gz før du fortsetter, for dette kan vi bruke følgende kommando:
mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db.gzDet anbefales å flytte denne databasen til et trygt sted, men vi må sørge for å oppdatere konfigurasjonsfilen slik at den kan leses derfra.
Deretter må vi kompilere en ny Aide -konfigurasjonsfil. Vi utfører følgende kommando:
update-aide.confNå vil vi kopiere denne nye filen til / etc / aide -katalogen:
cp /var/lib/aide/aide.conf.autogenerated /etc/aide/aide.confEtter at databasen er opprettet, kan vi kontrollere integriteten til filene og katalogene ved å bruke -sjekk -flagget:
assistent -sjekk
6. Hvordan evaluere AIDE
For å teste driften av AIDE utfører vi følgende linjer:
mkdir / root / aide-test touch / root / aide-test / testsolvetic touch / root / aide-test / testsolvetic1Med dem lager vi en ny katalog og filer på systemet. Senere utfører vi følgende linje for validering og bekreftelse:
Hjelp -sjekkResultatet blir følgende:
Der kan vi se at det finnes en forskjell i filen og angir hvilken type handling det var, tillegg, sletting eller endring.
På denne måten er AIDE et nyttig verktøy for å bestemme endringene som har skjedd i systemet i sanntid.