Ubuntu

Hvordan installere og bruke Osquery i Ubuntu

Hvordan installere og bruke Osquery i Ubuntu
Osquery er et programvareverktøy med åpen kildekode og plattform som kan brukes til å avsløre et operativsystem som en relasjonsdatabase. Vi kan få data fra operativsystemet ved å kjøre SQL-baserte spørsmål. I denne bloggen vil vi se hvordan du installerer Osquery i Ubuntu og hvordan du bruker den til å hente data fra operativsystemet.

Installere Osquery i Ubuntu

Osquery pakker er ikke tilgjengelig i standard Ubuntu-lageret, så før vi installerer det, må vi legge til Osquery apt repository ved å kjøre følgende kommando i terminalen.

[e-postbeskyttet]: ~ $ echo "deb [arch = amd64] https: // pkg.osquery.io / deb deb main "|
sudo tee / etc / apt / sources.liste.d / osquery.liste

Nå vil vi importere signeringsnøkkelen ved å kjøre følgende kommando i terminalen.

[e-postbeskyttet]: ~ $ sudo apt-key adv --keyserver keyserver.ubuntu.com
--recv-nøkler 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B

Etter å ha importert signeringsnøkkelen, oppdater nå systemet ditt ved å kjøre følgende kommando i terminalen.

[e-postbeskyttet]: ~ $ sudo apt-get oppdatering

Installer nå Osquery ved å kjøre følgende kommando

[e-postbeskyttet]: ~ $ sudo apt-get install osquery

Etter installasjon Osquery, nå må vi sjekke om den er installert riktig ved å kjøre følgende kommando

[e-postbeskyttet]: ~ $ osqueryi --versjon

Hvis det gir følgende utgang, er den riktig installert

Bruke Osquery

Nå etter installasjon er vi klar til bruk Osquery. Kjør følgende kommando for å gå til interaktiv shell-ledetekst

[e-postbeskyttet]: ~ $ osqueryi

Får hjelp

Nå kan vi kjøre SQL-baserte spørsmål for å få data fra operativsystemet. Vi kan få hjelp om Osquery ved å kjøre følgende kommando i det interaktive skallet.

osquery> .hjelp

Få alle bordene

Som nevnt tidligere, Osquery avslører data fra operativsystemet som en relasjonsdatabase, slik at den har alle dataene i form av tabeller. Vi kan få alle tabellene ved å kjøre følgende kommando i det interaktive skallet

osquery> .bord

Som vi kan se at ved å kjøre kommandoen ovenfor kan vi få en haug med tabeller. Nå kan vi få data fra disse tabellene ved å kjøre SQL-baserte spørsmål.

Oppføringsinformasjon om alle brukerne

Vi kan se all informasjon om brukere ved å kjøre følgende kommando i det interaktive skallet

osquery> VELG * FRA brukere;

Ovennevnte kommando viser gid, uid, beskrivelse osv. av alle brukerne

Vi kan også trekke ut bare relevante data om brukere, for eksempel vil vi bare se brukerne og ikke annen informasjon om brukere. Kjør følgende kommando i det interaktive skallet for å få brukernavnene

osquery> VELG brukernavn FRA brukere;

Kommandoen ovenfor viser alle brukerne i systemet ditt

På samme måte kan vi få brukernavn sammen med katalogen der brukeren eksisterer ved å kjøre følgende kommando.

osquery> VELG brukernavn, katalog FRA brukere;

På samme måte kan vi spørre så mange felt som vi vil ved å kjøre lignende kommandoer.

Vi kan også få alle data fra spesifikke brukere. For eksempel ønsker vi å få all informasjon om rotbrukeren. Vi kan få all informasjon om rotbrukeren ved å kjøre følgende kommando.

osquery> VELG * FRA brukere WHERE brukernavn = "root";

Vi kan også få spesifikke data fra spesifikke felt (kolonner). For eksempel ønsker vi å få gruppe-ID og brukernavn til rotbrukeren. Kjør følgende kommando for å få disse dataene.

osquery> VELG brukernavn, gid FRA brukere WHERE brukernavn = ”root”

På denne måten kan vi spørre hva vi vil fra et bord.

Oppføring av alle prosessene

Vi kan liste opp de fem første prosessene som kjører i ubuntu ved å kjøre følgende kommando i det interaktive skallet

osquery> VELG * FRA prosesser GRENSE 5;

Siden det er mange prosesser som kjører i systemet, har vi bare vist fem prosesser ved å bruke LIMIT nøkkelord.

Vi kan finne prosess-ID-en til en bestemt prosess, for eksempel vil vi finne prosess-ID-en til mongodb, så vi vil kjøre følgende kommando i det interaktive skallet

osquery> VELG pid FRA prosesser WHERE name = "mongod";

Finne versjon av Ubuntu

Vi finner versjonen av Ubuntu-systemet vårt ved å kjøre følgende kommando i det interaktive skallet

osquery> VELG * FRA os_version;

Det viser oss versjonen av operativsystemet vårt

Kontrollere nettverksgrensesnitt og IP-adresser

Vi kan sjekke IP-adressen, nettverksmasken til nettverksgrensesnittene ved å kjøre følgende spørsmål i det interaktive skallet.

osquery> VELG grensesnitt, adresse, maske FRA grensesnitt_adresser
HVOR grensesnitt IKKE LIKER '% lo%';

Kontrollere påloggede brukere

Vi kan også sjekke påloggede brukere på systemet ditt ved å spørre om data fra tabellen 'innlogget_in_brukere'. Kjør følgende kommando for å finne påloggede brukere.

osquery> VELG bruker, vert, tid FRA logget_in_brukere HVOR tty IKKE LIKE '-';

Kontrollere systemminnet

Vi kan også sjekke totalt minne, ledig minne hurtigbufret minne osv. ved å kjøre noen SQL-basert kommando i det interaktive skallet. Kjør følgende kommando for å sjekke totalt minne. Dette vil gi oss totalt minne om systemet i byte.

osquery> SELECT memory_total FROM memory_info;

For å sjekke ledig minne på systemet ditt, kjør følgende spørsmål i det interaktive skallet

osquery> VELG minne_fri FRA minne_info;

Når vi kjører kommandoen ovenfor, vil den gi oss ledig minne tilgjengelig i systemet vårt

Vi kan også sjekke hurtigbufret minne til systemet ved å bruke tabellen memory_info ved å kjøre følgende spørsmål.

osquery> velg hurtigbufret fra memory_info;

Oppføring av gruppene

Vi kan finne alle gruppene i systemet ditt ved å kjøre følgende spørsmål i det interaktive skallet

osquery> VELG * FRA grupper;

Viser lytteporter

Vi kan vise alle lytteportene til systemet vårt ved å kjøre følgende kommando i det interaktive skallet

osquery> VELG * FRA lytterportene;

Vi kan også sjekke om en port lytter eller ikke ved å kjøre følgende kommando i det interaktive skallet

osquery> SELECT port, address FROM listening_ports WHERE port = 27017;

Dette vil gi oss produksjon som vist i følgende figur

Konklusjon

Osquery er et veldig nyttig programvareverktøy for å finne all slags informasjon om systemet ditt. Hvis du allerede er klar over SQL-baserte spørsmål, er det veldig enkelt å bruke for deg, eller hvis du ikke er klar over SQL-baserte spørsmål, så har jeg prøvd mitt beste for å vise deg noen store spørsmål som er nyttige for å finne data. Du kan finne alle slags data fra hvilken som helst tabell ved å kjøre lignende spørsmål.

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...
Beste spill å spille med håndsporing
Oculus Quest introduserte nylig den gode ideen om håndsporing uten kontrollere. Med et stadig økende antall spill og aktiviteter som utfører støtte en...