Instaliranje Osqueryja u Ubuntu
Osquery paketi nisu dostupni u zadanom Ubuntu spremištu, pa prije instalacije moramo dodati Osquery apt spremište pokretanjem sljedeće naredbe u terminalu.
[e-pošta zaštićena]: ~ $ echo "deb [arch = amd64] https: // pkg.osquery.io / deb deb glavni "|sudo tee / etc / apt / sources.popis.d / osquery.popis
Sada ćemo uvesti ključ za potpisivanje izvođenjem sljedeće naredbe u terminalu.
[zaštićena e-poštom]: ~ $ sudo apt-key adv --keyserver poslužitelj ključeva.ubuntu.com--tipke za popravak 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B
Nakon uvoza ključa za potpisivanje, sada ažurirajte svoj sustav izvođenjem sljedeće naredbe u terminalu.
[zaštićena e-poštom]: ~ $ sudo apt-get updateSada instalirajte Osquery pokretanjem sljedeće naredbe
[zaštićena e-poštom]: ~ $ sudo apt-get install osqueryNakon instalacije Osquery, sada moramo provjeriti je li ispravno instaliran pokretanjem sljedeće naredbe
[zaštićena e-poštom]: ~ $ osqueryi --versionAko daje sljedeći izlaz, onda je ispravno instaliran
Korištenje Osqueryja
Nakon instalacije, spremni smo za upotrebu Osquery. Pokrenite sljedeću naredbu da biste prešli u interaktivni redak ljuske
[e-pošta zaštićena]: ~ $ osqueryi
Dobivanje pomoći
Sada možemo pokretati upite temeljene na SQL-u da bismo dobili podatke iz operativnog sustava. Možemo potražiti pomoć oko Osquery izvođenjem sljedeće naredbe u interaktivnoj ljusci.
osquery> .Pomozite
Dobivanje svih tablica
Kao što je ranije spomenuto, Osquery izlaže podatke iz operativnog sustava kao relacijsku bazu podataka tako da ima sve podatke u obliku tablica. Sve tablice možemo dobiti pokretanjem sljedeće naredbe u interaktivnoj ljusci
osquery> .stolovi
Kao što vidimo da izvršavanjem gornje naredbe možemo dobiti hrpu tablica. Sada podatke iz ovih tablica možemo dobiti pokretanjem upita temeljenih na SQL-u.
Podaci o popisu O svim korisnicima
Sve informacije o korisnicima možemo vidjeti pokretanjem sljedeće naredbe u interaktivnoj ljusci
osquery> SELECT * FROM korisnika;Gornja naredba će prikazati gid, uid, opis itd. svih korisnika
Također možemo izdvojiti samo relevantne podatke o korisnicima, na primjer želimo vidjeti samo korisnike, a ne i druge podatke o korisnicima. Izvedite sljedeću naredbu u interaktivnoj ljusci da biste dobili korisnička imena
osquery> ODABERI korisničko ime OD korisnika;Gornja naredba prikazat će sve korisnike u vašem sustavu
Slično tome, do korisničkih imena možemo doći zajedno s direktorijom u kojem korisnik postoji pokretanjem sljedeće naredbe.
osquery> SELECT korisničko ime, direktorij FROM korisnika;
Slično tome, izvršavanjem sličnih naredbi možemo upiti onoliko polja koliko želimo.
Također možemo dobiti sve podatke određenih korisnika. Na primjer, želimo dobiti sve informacije o root korisniku. Sve informacije o root korisniku možemo dobiti pokretanjem sljedeće naredbe.
osquery> ODABERI * OD korisnika WHERE korisničko ime = "root";
Također možemo dobiti određene podatke iz određenih polja (stupaca). Na primjer, želimo dobiti ID grupe i korisničko ime korijenskog korisnika. Pokrenite sljedeću naredbu da biste dobili ove podatke.
osquery> ODABERI korisničko ime, gid OD korisnika WHERE korisničko ime = ”root”
Na taj način možemo upitati sve što želimo iz tablice.
Popis svih procesa
Možemo navesti prvih pet procesa koji se izvode u ubuntuu pokretanjem sljedeće naredbe u interaktivnoj ljusci
osquery> SELECT * FROM procesi LIMIT 5;
Kako se u sustavu izvodi mnogo procesa, tako smo pomoću ključne riječi LIMIT prikazali samo pet procesa.
Možemo pronaći ID procesa određenog procesa, na primjer želimo pronaći ID procesa mongodb, pa ćemo pokrenuti sljedeću naredbu u interaktivnoj ljusci
osquery> SELECT pid FROM procesi WHERE name = "mongod";
Traženje verzije Ubuntu-a
Verziju našeg Ubuntu sustava možemo pronaći pokretanjem sljedeće naredbe u interaktivnoj ljusci
osquery> SELECT * FROM os_version;Pokazat će nam verziju našeg operativnog sustava
Provjera mrežnog sučelja i IP adresa
IP adresu, Maska podmreže mrežnih sučelja možemo provjeriti izvođenjem sljedećeg upita u interaktivnoj ljusci.
osquery> ODABERI sučelje, adresu, masku IZ sučelja_adreseGDJE sučelje NIJE KAO '% lo%';
Provjera prijavljenih korisnika
Također možemo provjeriti prijavljene korisnike u vašem sustavu postavljanjem upita iz tablice 'prijavljeni_u_korisnicima'. Pokrenite sljedeću naredbu da biste pronašli prijavljene korisnike.
osquery> ODABERI korisnika, domaćina, vrijeme IZ logged_in_users WHERE tty NOT LIKE '-';
Provjera memorije sustava
Također možemo provjeriti ukupnu memoriju, slobodnu memoriju predmemorirane memorije itd. pokretanjem neke SQL naredbe u interaktivnoj ljusci. Da biste provjerili ukupnu memoriju, pokrenite sljedeću naredbu. To će nam dati ukupnu memoriju sustava u bajtovima.
osquery> ODABERI memory_total FROM memory_info;
Da biste provjerili slobodnu memoriju vašeg sustava, pokrenite sljedeći upit u interaktivnoj ljusci
osquery> ODABERI memoriju_bez FROM memory_info;Kada pokrenemo gornju naredbu, dobit će nam slobodnu memoriju dostupnu u našem sustavu
Također možemo provjeriti predmemoriranu memoriju sustava pomoću tablice memory_info pokretanjem sljedećeg upita.
osquery> odaberite predmemorirano iz memory_info;
Popis grupa
Sve grupe u vašem sustavu možemo pronaći pokretanjem sljedećeg upita u interaktivnoj ljusci
osquery> SELECT * FROM grupe;
Prikaz portova za slušanje
Izvođenjem sljedeće naredbe u interaktivnoj ljusci možemo prikazati sve priključke za slušanje našeg sustava
osquery> SELECT * FROM listen_ports;
Također možemo provjeriti sluša li port ili ne tako što ćemo pokrenuti sljedeću naredbu u interaktivnoj ljusci
osquery> SELECT port, adresa FROM liste slušanja WHERE port = 27017;To će nam dati izlaz kao što je prikazano na sljedećoj slici
Zaključak
Osquery je vrlo koristan softverski uslužni program za pronalaženje bilo kakvih informacija o vašem sustavu. Ako ste već upoznati s upitima temeljenim na SQL-u, tada je vrlo jednostavan za vas ili ako niste svjesni upita temeljenih na SQL-u, onda sam se potrudio pokazati vam neke glavne upite korisne za pronalaženje podataka. Pokretanjem sličnih upita možete pronaći bilo koju vrstu podataka iz bilo koje tablice.