Debian

Slik installerer du Osquery på Debian 10

Slik installerer du Osquery på Debian 10
I denne Osquery-opplæringen vil vi starte med å diskutere hva Osquery er, hvordan det fungerer, hvordan du installerer det på Debian, en rask introduksjon til SQL, og til slutt bygge et prosjekt som beskriver hvordan du integrerer Osquery med ELK Stack.

For å holde denne veiledningen kortfattet, vil vi ikke dykke dypt inn i "hva" og "hvordan" i ELK-stakken. I stedet diskuterer vi raskt og greit hvordan du bruker det med Osquery. Vi vil også anta at du har en fungerende kunnskap om SQL - veiledningen til tross for det).

Hva er Osquery?

Osquery er utviklet av Facebook, og er et plattform-open source-verktøy som brukes til å spørre og overvåke systemer ved hjelp av SQL-baserte spørsmål.

Osquery kan samhandle med systemet og samle detaljert informasjon som minnebruk, kjørende prosesser, lastede kjernemoduler, maskinvarehendelser, nettverkstilkoblinger osv. Verktøyet kjører på alle systemer, inkludert Windows, Linux, Mac og BSD.

Ved å bruke Osquery kan du opprette SQL-spørringer som viser informasjon om systemet og bruke denne informasjonen til å overvåke og analysere dataene som er samlet inn.

Hvordan installere Osquery på Debian Systems

Det er veldig enkelt å installere Osquery på Debian-systemer, og selv om det ikke er tilgjengelig i de viktigste Debian-reposene, er det ganske greit å legge til det.

La oss se på den første metoden du kan bruke til å installere Osquery på Debian:

Det første og enkleste trinnet er å laste ned deb-installasjonsprogrammet fra hovedsiden:

https: // pkg.osquery.io / deb / osquery_4.6.0-1.linux_amd64.deb

wget https: // pkg.osquery.io / deb / osquery_4.6.0-1.linux_amd64.deb
sudo dpkg -i osquery_4.6.0-1.linux_amd64.deb

Vi anbefaler metoden ovenfor, da deb-pakkene har svært få avhengigheter av de fleste Debian-distribusjoner. Imidlertid, hvis du ønsker å legge til apt, bruk neste metode.

Skriv inn følgende kommandoer for å installere Osquery fra repositoriene.

eksporter OSQUERY_KEY = 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B
sudo apt-key adv --keyserver hkp: // keyserver.ubuntu.com: 80 - rekv-nøkler $ OSQUERY_KEY
sudo add-apt-repository 'deb [arch = amd64] https: // pkg.osquery.io / deb deb hoved '
sudo apt-get oppdatering
sudo apt-get install osquery

Hvordan bruke Osquery på Debian 10

Før vi dykker dypt i å bygge automatiserte skript og arbeider med ELK-stakken, la oss diskutere noen enkle Osquery-bruk på det lokale systemet.

Osquery har tre hovedkomponenter du kan bruke til å samhandle med API.

Osquery: Den første komponenten er osqueryi, en interaktiv skalløkt. Osqueryi-modusen er helt frittstående og krever ikke interaksjon med Osquery-Osquery-demonen. Ved å bruke osqueryi-modus kan du interagere med SQL-spørsmål og utforske det nåværende systemet som ligner på et SQL-skall.

MERK: Osquery respekterer brukerområder, og hvis du kjører skallet som en vanlig brukermodus, vil du ikke ha tilgang til privilegerte tabeller.

Osqueryd: Den andre komponenten er osqueryd, Osquery-demonen som brukes til å planlegge spørsmål og registrere tilstandsendringer i bakgrunnen. Daemon fungerer ved å samle spørreresultater utført over en bestemt tidsramme og genererer logger som brukes til å sammenligne hvert spørres tilstandsendringer.

Osqueryctl: Den tredje komponenten er Osqueryctl, et hjelpeskript som brukes til å teste distribusjonskonfigurasjon. Du kan også bruke den som en Osquery serviceleder, slik at du kan starte og stoppe tjenesten.

Ut av esken er Osquery ikke annet enn et enkelt verktøy for å spørre informasjon om systemet. Men når du kombinerer spørringene for å bygge godt sorterte og aggregerte data, blir det mer enn et søkeverktøy.

For å komme i gang, la oss begynne med det grunnleggende for å forstå hvordan det fungerer:

Det første trinnet er å få hjelp med kommandoen:

sudo osqueryd - hjelp

Denne kommandoen viser Osquery-demonhjelpen, med en liste over argumenter du kan bruke i skallet.

Den neste, og den enkleste måten å samhandle med Osquery på, er å bruke osqueryi-økten. Hvis du for eksempel utfører kommandoen osqueryi uten argument, vil du falle inn i et SQL-lignende skall:

sudo osqueryi

Inne i osqueryi-skallet kan du utføre kommandoer og SQL-syntaks for å velge spesifikk informasjon om systemet.

For å se hjelpemodus inne i osqueryi-skallet, bruk kommandoen:

osquery> .hjelp

Å utføre denne kommandoen skal vise hjelp angående Osquery-økten.

Siden Osquery er en relasjonell databasekartlegger for systemet ditt, har den en liste over tabeller du kan bruke til å velge informasjon fra ved hjelp av SQLite Queries.

MERK: Osquery-spørsmål er SQLite-baserte. Du kan se i dokumentasjonen hvis Osquery ikke gir nok informasjon:

https: // www.sqlite.org / indeks.html

Inne i osqueryi-skallet, bruk kommandoen:

osquery> .bord

Denne kommandoen viser de tilgjengelige tabellene som inneholder systeminformasjon.

Derfra kan du velge informasjon fra tilgjengelige skjemaer. Se for eksempel informasjonen om DNS-oppløsere.

VELG * FRA dns_resolvers;

Avhengig av skjemaet du spør, får du en båtmengde med informasjon, og det kan hende du må bruke en kombinasjon av SQL-spørsmål for å få mening om det.

Du kan lære mer om Osquery-tabeller og skjemaer fra følgende ressurs:

https: // osquery.io / skjema / 4.6.0 /

En grunnleggende SQL-guide

Osquery fungerer ved å bruke SQLite-syntaksforespørsler for å samle informasjon om et system. Jeg aner ikke hvorfor Facebook valgte denne ruten, men det fungerer.

Denne enkle opplæringen vil diskutere grunnleggende om SQLite for å forklare hvordan du kan bruke den til å samhandle med Osquery.

MERK: Dette er på ingen måte ment å være en guide for SQL eller relaterte språk. For mer språkspesifikke guider, se den primære dokumentasjonen.

Velge spesifikke oppføringer fra en tabell

Ved hjelp av grunnleggende SQLite-syntaks kan vi velge spesifikk informasjon fra en tabell ved hjelp av SELECT-setningen som vist:

VELG pid, navn, bane FRA prosesser;

Legge til SQL-funksjoner

Osquery støtter også SQL-funksjoner, slik at du kan utføre forskjellige handlinger med data samlet fra spørringene.

For eksempel kan tellefunksjonen tillate deg å se antall brukere i systemet ditt.

VELG TELL (*) FRA brukere;

Denne kommandoen returnerer det totale antallet brukere i systemet.

Muligheten for Osquery å bruke SQL-syntaks er en stor fordel som kan hjelpe deg med å bygge komplekse datasett som kan gi deg en mer inngående analyse av et system. Det skaper også en bro som SQL-utviklere som bruker motorer som PostgreSQL, MySQL og andre, kan bruke til å tilpasse seg enkelt.

https: // osquery.readthedocs.io / no / stabil / introduksjon / sql /

Et morsomt sideprosjekt

Når du utforsker Osquery videre og eksperimenterer med det, vil du oppdage at det er et omfattende og kraftig verktøy som gjør det enkelt å lage prosjekter spesielt tilpasset for å overvåke systemene dine.

På grunn av omfanget av denne veiledningen, og for å unngå forvirrende nybegynnere, vil vi ikke fordype oss i komplekse prosjekter. Som nevnt, her er noen verktøy du kan bygge ved hjelp av Osquery:

https: // osquery.readthedocs.io / no / stabil / distribusjon / loggaggregasjon /
https: // www.elastisk.co / guide / no / beats / filebeat / 7.10 / filebeat-module-osquery.html
https: // github.com / fleetdm / fleet

Konklusjon

I denne opplæringen så vi på det grunnleggende om Osquery, inkludert hvordan du bruker den til å samle systeminformasjon.

Selv om den ikke er omfattende, hadde denne veiledningen til hensikt å gi deg en rask og grei introduksjon til Osquery; på ingen måte var det en referanseguide.

Bruk gjerne andre ressurser for å få en dypere forståelse av de forskjellige konseptene vi har diskutert i denne opplæringen.

Beste spillkonsollemulatorer for Linux
Denne artikkelen vil liste opp populære programvare for spillkonsollemulering tilgjengelig for Linux. Emulation er et programvarekompatibilitetslag so...
Beste Linux Distros for spill i 2021
Linux-operativsystemet har kommet langt fra det originale, enkle, serverbaserte utseendet. Dette operativsystemet har forbedret seg enormt de siste år...
Hvordan fange opp og streame spilløkten din på Linux
Tidligere ble spill bare ansett som en hobby, men med tiden så spillindustrien en enorm vekst når det gjelder teknologi og antall spillere. Spillpubli...