Installere Osquery i Ubuntu
Osquery Pakker er ikke tilgjengelige i standard Ubuntu -depot, så før vi installerer det, må vi legge til Osquery APT -depot ved å kjøre følgende kommando i terminalen.
ubuntu@ubuntu: ~ $ ekko "Deb [arch = amd64] https: // pkg.Osquery.IO/Deb Main "|
sudo tee/etc/apt/kilder.liste.d/osquery.liste
Nå vil vi importere signeringsnøkkelen ved å kjøre følgende kommando i terminalen.
ubuntu@ubuntu: ~ $ sudo apt-key adv-keyServer keyserver.Ubuntu.com
--RECV-Keys 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B
Etter å ha importert signeringsnøkkelen, oppdater nå systemet ditt ved å kjøre følgende kommando i terminalen.
ubuntu@ubuntu: ~ $ sudo apt-get update
Nå installer Osquery Ved å kjøre følgende kommando
ubuntu@ubuntu: ~ $ sudo apt-get install osquery
Etter installasjon Osquery, Nå må vi sjekke om det er installert riktig ved å kjøre følgende kommando
ubuntu@ubuntu: ~ $ osqueryi --version
Hvis den gir følgende utdata, er den installert riktig
Bruke Osquery
Nå etter installasjonen er vi klare til å bruke Osquery. Kjør følgende kommando for å gå til Interactive Shell -ledeteksten
ubuntu@ubuntu: ~ $ osqueryi
Får hjelp
Nå kan vi kjøre SQL -baserte spørsmål for å få data fra operativsystemet. Vi kan få hjelp til Osquery Ved å kjøre følgende kommando i det interaktive skallet.
osquery> .hjelpFå alle bordene
Som nevnt tidligere, Osquery Eksponerer 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> .bordSom vi kan se at ved å kjøre kommandoen ovenfor kan vi få en haug med bord. Nå kan vi få data fra disse tabellene ved å kjøre SQL -baserte spørsmål.
Oppgi informasjon om alle brukerne
Vi kan se all informasjonen om brukere ved å kjøre følgende kommando i det interaktive skallet
Osquery> Velg * fra brukere;Kommandoen ovenfor vil vise 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 vil vise alle brukerne i systemet ditt
På samme måte kan vi få brukernavn sammen med katalogen som 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 dataene til spesifikke brukere. For eksempel ønsker vi å få all informasjonen om rotbrukeren. Vi kan få all informasjonen om rotbrukeren ved å kjøre følgende kommando.
Osquery> Velg * fra brukere der 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 der brukernavn = ”root”På denne måten kan vi spørre hva vi vil ha fra en tabell.
Liste over alle prosessene
Vi kan liste opp første fem prosesser som kjører i Ubuntu ved å kjøre følgende kommando i det interaktive skallet
osquery> velg * fra prosesser grense 5;Ettersom det er mange prosesser som kjører i systemet, har vi bare vist fem prosesser ved å bruke Limit Keyword.
Vi kan finne prosess -ID for en spesifikk prosess for eksempel vi ønsker å finne prosess -IDen til MongoDB, slik at vi kjører følgende kommando i det interaktive skallet
OSQUERY> Velg PID fra prosesser der name = "Mongod";Finne versjon av Ubuntu
Vi kan finne versjonen av Ubuntu -systemet vårt ved å kjøre følgende kommando i det interaktive skallet
osquery> velg * fra OS_VERSion;Det vil vise oss versjonen av operativsystemet vårt
Kontrollere nettverksgrensesnitt og IP -adresser
Vi kan sjekke IP -adressen, undernettmaske av nettverksgrensesnitt ved å kjøre følgende spørsmål i det interaktive skallet.
Osquery> Velg grensesnitt, adresse, maske fra grensesnitt_adresserSjekk innloggede brukere
Vi kan også sjekke innloggede brukere på systemet ditt ved å spørre data fra tabellen 'LOGGED_IN_USERS'. Kjør følgende kommando for å finne innloggede brukere.
osquery> velg bruker, vert, tid fra logget_in_usere der tty ikke liker '-';Kontrollerer systemminnet
Vi kan også sjekke totalt minne, hurtigminnet med gratis minne osv. Ved å kjøre en SQL -basert kommando i det interaktive skallet. For å sjekke totalminne Kjør følgende kommando. Dette vil gi oss totalt minne om systemet i byte.
OSQUERY> SELECT MEMORY_TOTAL FRA MEMORY_INFO;For å sjekke gratis minne om systemet ditt, kjør følgende spørsmål i det interaktive skallet
OSQUERY> SELECT MEMORY_FREE FRA MEMORY_INFO;Når vi kjører kommandoen ovenfor, vil det gi oss gratis minne tilgjengelig i systemet vårt
Vi kan også sjekke hurtigbufret minnet om systemet ved hjelp av Memory_info -tabellen ved å kjøre følgende spørsmål.
OSQUERY> Velg hurtigbufret fra Memory_Info;Liste opp 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 i systemet vårt ved å kjøre følgende kommando i det interaktive skallet
osquery> velg * fra lyting_ports;Vi kan også sjekke om en port lytter eller ikke ved å kjøre følgende kommando i det interaktive skallet
OSQUERY> Velg port, adresse fra lytter_port der port = 27017;Dette vil gi oss produksjon som vist i følgende figur
Konklusjon
Osquery er et veldig nyttig programvareverktøy for å finne noen form for 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, 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.