Selle õpetuse kokkuvõtlikuks hoidmiseks ei sukeldu me sügavalt ELK-i virna “mida” ja “kuidas”. Selle asemel arutame kiiresti ja otse, kuidas seda Osqueryga kasutada. Eeldame ka, et teil on SQL-i kasutamise alased teadmised - hoolimata lisatud juhendist).
Mis on Osquery?
Facebooki välja töötatud Osquery on platvormidevaheline avatud lähtekoodiga tööriist, mida kasutatakse SQL-põhiste päringute abil süsteemide päringuteks ja jälgimiseks.
Osquery saab süsteemiga suhelda ja koguda üksikasjalikku teavet, näiteks mälukasutust, töötavaid protsesse, laaditud kernelmooduleid, riistvarasündmusi, võrguühendusi jne. Tööriist töötab kõikides süsteemides, sealhulgas Windows, Linux, Mac ja BSD.
Osquery abil saate luua SQL-päringuid, mis kuvavad teavet süsteemi kohta, ja kasutada seda teavet kogutud andmete jälgimiseks ja analüüsimiseks.
Kuidas installida Osquery Debiani süsteemidesse
Osquery installimine Debiani süsteemidesse on väga lihtne ja kuigi see pole Debiani peamistes repodes saadaval, on selle lisamine üsna lihtne.
Vaatame esimest meetodit, mida saate Osquery installimiseks Debianisse kasutada:
Esimene ja kõige lihtsam samm on deb installeri laadimine allaheküljelt:
https: // pkg.võnkumine.io / deb / osquery_4.6.0-1.linux_amd64.deb
wget https: // pkg.võnkumine.io / deb / osquery_4.6.0-1.linux_amd64.debsudo dpkg -i osquery_4.6.0-1.linux_amd64.deb
Soovitame ülaltoodud meetodit, kuna deb-paketid sõltuvad enamikust Debiani jaotustest väga vähe. Kui soovite siiski apt-ile lisada, kasutage järgmist meetodit.
Osquery installimiseks hoidlatest sisestage järgmised käsud.
eksportida OSQUERY_KEY = 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80Bsudo apt-key adv - võtmeserver hkp: // võtmeserver.ubuntu.com: 80 - recv-keys $ OSQUERY_KEY
sudo add-apt-repository 'deb [arch = amd64] https: // pkg.võnkumine.io / deb deb main '
sudo apt-get värskendus
sudo apt-get install osquery
Kuidas Osqueryd Debian 10-s kasutada
Enne kui sukeldute sügavale automatiseeritud skriptide ehitamisse ja töötate ELK-i virnaga, arutleme mõne lihtsa Osquery kasutamise üle kohalikus süsteemis.
Osqueryl on kolm põhikomponenti, mida saate kasutada API-ga suhtlemiseks.
Osquery: Esimene komponent on interaktiivne shelliseanss osqueryi. Osqueryi režiim on täiesti eraldiseisev ega vaja suhtlemist Osquery-Osquery deemoniga. Osqueryi režiimi abil saate interaktiivselt käivitada SQL-päringuid ja uurida praegust süsteemi, mis sarnaneb SQL-i kestaga.
MÄRGE: Osquery austab kasutajaruume ja kui käivitate kesta tavalise kasutajarežiimina, pole teil juurdepääsu privilegeeritud tabelitele.
Osqueryd: Teine komponent on osqueryd, Osquery deemon, mida kasutatakse päringute ajastamiseks ja olekumuutuste salvestamiseks taustal. Deemon töötab, koondades kindlas ajavahemikus täidetud päringu tulemused ja genereerib logisid, mida kasutatakse iga päringu olekumuutuste võrdlemiseks.
Osqueryctl: Kolmas komponent on abikript Osqueryctl, mida kasutatakse juurutamise konfiguratsiooni testimiseks. Võite seda kasutada ka Osquery teenusehaldurina, mis võimaldab teil teenust käivitada ja peatada.
Karbist väljas pole Osquery midagi muud kui lihtne tööriist süsteemi kohta teabe pärimiseks. Kui aga kombineerite päringud hästi sorteeritud ja koondatud andmete loomiseks, saab see enamat kui päringutööriist.
Uuenduse saamiseks alustame põhitõdedest, et mõista, kuidas see töötab:
Esimene samm on käsu abil abi hankimine:
sudo osqueryd --helpSee käsk kuvab Osquery deemoni spikri koos loendis argumentidega, mida saate kestas kasutada.
Järgmine ja lihtsaim viis Osqueryga suhtlemiseks on osqueryi seansi kasutamine. Näiteks kui käivitate käsu osqueryi ilma argumendita, langete SQL-i sarnasesse kestasse:
sudo osqueryiOsqueryi kestas saate süsteemi kohta konkreetse teabe valimiseks käivitada käsud ja SQL-i süntaks.
Abirežiimi kuvamiseks osqueryi kestas kasutage käsku:
võnkumine> .abiSelle käsu täitmine peaks kuvama abi Osquery seansi kohta.
Kuna Osquery on teie süsteemi jaoks relatsiooniline andmebaasikaardistaja, on sellel tabelite loend, mida saate kasutada teabe valimiseks SQLite päringute abil.
MÄRGE: Osquery päringud on SQLite-põhised. Kui Osquery ei anna piisavalt teavet, võite viidata selle dokumentatsioonile:
https: // www.sqlite.org / register.HTML
Osqueryi kestas kasutage käsku:
võnkumine> .tabelidSee käsk loetleb olemasolevad süsteemiteavet sisaldavad tabelid.
Sealt saate teavet saadaolevate skeemide hulgast valida. Näiteks vaadake teavet DNS-i lahendajate kohta.
VALI * FROM dns_resolvers;Sõltuvalt teie küsitavast skeemist saate paaditäie teavet ja selle mõistmiseks peate võib-olla kasutama SQL-i päringute kombinatsiooni.
Osquery tabelite ja skeemide kohta saate lisateavet järgmisest ressursist:
https: // võnkumine.io / skeem / 4.6.0 /
Põhiline SQL-i juhend
Osquery töötab süsteemi kohta teabe kogumiseks SQLite süntaksipäringute abil. Mul pole aimugi, miks Facebook selle marsruudi valis, aga see töötab.
Selles lihtsas õpetuses käsitletakse SQLite'i põhitõdesid, et selgitada, kuidas saate seda kasutada Osqueryga suhtlemiseks.
MÄRGE: See ei ole mingil juhul mõeldud juhiseks SQL-ile või seotud keeltele. Keelespetsiifiliste juhendite saamiseks lugege esmast dokumentatsiooni.
Konkreetsete kirjete valimine tabelist
SQLite põhisüntaksit kasutades saame SELECT-lause abil tabelist valida konkreetse teabe, nagu näidatud:
SELECT pid, nimi, tee FROM protsessidest;SQL-funktsioonide lisamine
Osquery toetab ka SQL-funktsioone, võimaldades teil päringutest kogutud andmetega teha erinevaid toiminguid.
Näiteks loendamisfunktsioon võimaldab teil vaadata oma süsteemi kasutajate arvu.
VALI kasutajate hulgast COUNT (*);See käsk tagastab süsteemi kasutajate koguarvu.
Osquery võime kasutada SQL-süntaksit on tohutu eelis, mis aitab teil luua keerukaid andmekogumeid, mis võimaldavad teil süsteemi põhjalikumalt analüüsida. See loob ka silla, mida SQL-i arendajad, kasutades selliseid mootoreid nagu PostgreSQL, MySQL ja teised, saavad hõlpsalt kohaneda.
https: // võnkumine.lugemisdokumendid.io / et / stabiilne / kasutuselevõtt / sql /
Lõbus kõrvalprojekt
Osqueryga lähemalt tutvudes ja sellega katsetades avastate, et see on terviklik ja võimas tööriist, mis hõlbustab spetsiaalselt oma süsteemide jälgimiseks häälestatud projektide loomist.
Selle õpetuse ulatuse tõttu ja algajate segaduse vältimiseks ei süvene me keerulistesse projektidesse. Mainitud, siin on mõned tööriistad, mida saate Osquery abil ehitada:
- Koguge logisid logstashiga
- Ehitage süsteemimonitori juhtpaneel koos Elasticsearchi, Logstashi ja Kibanaga.
- Ehitage koos Kolide'iga Osquery laevastik
https: // võnkumine.lugemisdokumendid.io / et / stabiilne / juurutamine / logi liitmine /
https: // www.elastne.co / guide / et / beats / filebeat / 7.10 / filebeat-moodul-osquery.HTML
https: // github.com / fleetdm / fleet
Järeldus
Selles õpetuses vaatasime Osquery põhitõdesid, sealhulgas ka seda, kuidas seda süsteemi teabe kogumiseks kasutada.
Kuigi see juhend ei ole kõikehõlmav, oli selle eesmärk anda teile kiire ja arusaadav sissejuhatus Osquery'sse; mingil juhul polnud see teatmik.
Kasutage julgelt muid ressursse, et saada sügavam arusaam erinevatest mõistetest, mida selles õpetuses käsitlesime.