Jak zainstalować OsQuery w Debian Top 10

Jak zainstalować OsQuery w Debian Top 10
W tym samouczku Osquery zaczniemy od omówienia Osquery, jak to działa, jak zainstalować go na Debian, szybkie wprowadzenie do SQL, a na koniec zbudować projekt opisujący, jak zintegrować Osquery z stosem łosi.

Aby zachować zwięzły ten samouczek, nie będziemy zanurzyć się głęboko w „co” i „jak” stos łosia. Zamiast tego szybko i prosto omówimy, jak go używać z Osquery. Zakładamy również, że masz praktyczną wiedzę na temat podanego przewodnika SQL-to).

Co to jest Osquery?

Opracowany przez Facebook, OsQuery to narzędzie międzyplatformowe, open source używane do zapytań i monitorowania systemów za pomocą zapytań opartych na SQL.

Osquery może wchodzić w interakcje z systemem i gromadzić szczegółowe informacje, takie jak użycie pamięci, uruchamianie procesów, moduły jądra załadowane, zdarzenia sprzętowe, połączenia sieciowe itp. Narzędzie działa na wszystkich systemach, w tym Windows, Linux, Mac i BSD.

Korzystając z OsQuery, możesz tworzyć zapytania SQL, które wyświetlają informacje o systemie i wykorzystać te informacje do monitorowania i analizy zebranych danych.

Jak zainstalować OsQuery w Systemach Debian

Instalowanie Osquery w Systemach Debian jest bardzo łatwe i chociaż nie jest dostępne w głównych repozytoriach Debiana, dodanie, że jest dość proste.

Spójrzmy na pierwszą metodę, której możesz użyć do instalacji Osquery na Debian:

Pierwszym i najprostszym krokiem jest pobranie instalatora Deb ze strony głównej:

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

Zalecamy powyższą metodę, ponieważ pakiety Deb mają bardzo niewiele zależności od większości dystrybucji Debiana. Jeśli jednak chcesz dodać do APT, użyj następnej metody.

Wprowadź następujące polecenia, aby zainstalować OsQuery z repozytoriów.

Eksport osquery_key = 1484120ac4e9f8a1a577aeee97a80c63c9d8b80b
sudo apt-key adv --keyserver hkp: // keyserver.Ubuntu.com: 80--recv-keys $ osquery_key
sudo add-apt-repozytory 'deb [arch = amd64] https: // pkg.Osquery.IO/Deb Deb Main '
Sudo apt-get Aktualizacja
sudo apt-get instal instaluj osquery

Jak używać Osquery na Debian 10

Przed zanurzeniem się głęboko w budowanie zautomatyzowanych skryptów i pracy ze stosem łosia, omówmy proste użycie Osquery w systemie lokalnym.

Osquery ma trzy główne elementy, których można użyć do interakcji z API.

Osquery: Pierwszym składnikiem jest Osqueryi, interaktywna sesja powłoki. Tryb Osqueryi jest całkowicie samodzielny i nie wymaga interakcji z demonem Osquery-Owoc. Korzystając z trybu Osqueryi, możesz interaktywnie wykonywać zapytania SQL i zbadać bieżący system podobny do powłoki SQL.

NOTATKA: OsQuery szanuje przestrzenie użytkownika, a jeśli uruchomisz powłokę jako zwykły tryb użytkownika, nie będziesz mieć dostępu do uprzywilejowanych tabel.

Osqueryd: Drugim komponentem jest Osqueryd, demon Osquery używany do planowania zapytań i rejestrowania zmian stanu w tle. Demon działa poprzez agregowanie wyników zapytania wykonanych w określonym ramie czasowym i generuje dzienniki używane do porównania zmian stanu każdego zapytania.

Osqueryctl: Trzecim elementem jest Osqueryctl, skrypt pomocniczy używany do testowania konfiguracji wdrażania. Możesz również użyć go jako menedżera usług Osquery, umożliwiając uruchomienie i zatrzymanie usługi.

Po wyjęciu z pudełka Osquery to nic innego jak proste narzędzie do zapytania o informacje o systemie. Jednak kiedy połączysz zapytania, aby budować dobrze sortowane i zagregowane dane, staje się czymś więcej niż narzędziem zapytania.

Aby uzyskać Rollin, zacznijmy od podstaw, aby zrozumieć, jak to działa:

Pierwszym krokiem jest uzyskanie pomocy w poleceniu:

Sudo Osqueryd -Help

To polecenie wyświetli pomoc demona Osquery, z listą argumentów, których można użyć w skorupce.

Następnym i najłatwiejszym sposobem interakcji z Osquery jest użycie sesji Osqueryi. Na przykład, jeśli wykonasz polecenie Osqueryi bez argumentu, wpadniesz do powłoki podobnej do SQL:

Sudo Osqueryi

Wewnątrz Osqueryi Shell możesz wykonać polecenia i składnię SQL, aby wybrać określone informacje o systemie.

Aby wyświetlić tryb pomocy wewnątrz skorupy Osqueryi, użyj polecenia:

Osquery> .pomoc

Wykonanie tego polecenia powinno wyświetlić pomoc w zakresie sesji Osquery.

Ponieważ OsQuery to relacyjny maper bazy danych dla twojego systemu, ma listę tabel, których można użyć do wyboru informacji z za pomocą zapytań SQLite.

NOTATKA: Zapytania Osquery są oparte na SQLite. Możesz odwołać się do jego dokumentacji, jeśli OsQuery nie podaje wystarczających informacji:

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

Wewnątrz skorupy Osqueryi użyj polecenia:

Osquery> .tabele

To polecenie zawiera listę dostępnych tabel zawierających informacje systemowe.

Stamtąd możesz wybrać informacje z dostępnych schematów. Na przykład zobacz informacje o rozdzielczości DNS.

Wybierz * z dns_resolvers;

W zależności od zapytań o schema.

Możesz dowiedzieć się więcej o tabelach i schematach Osquery z następującego zasobu:

    https: // osquery.IO/Schemat

Podstawowy przewodnik SQL

Osquery działa przy użyciu zapytań składniowych SQLITE w celu zebrania informacji o systemie. Nie mam pojęcia, dlaczego Facebook wybrał tę trasę, ale to działa.

W tym prostym samouczku omówi podstawy SQLite, aby wyjaśnić, w jaki sposób możesz go użyć do interakcji z Osquery.

NOTATKA: Nie ma to w żaden sposób być przewodnikiem dla SQL lub powiązanych języków. Więcej przewodników specyficznych dla języka, zapoznaj się z główną dokumentacją.

Wybieranie określonych wpisów z tabeli

Korzystając z podstawowej składni SQLite, możemy wybrać szczegółowe informacje z tabeli za pomocą instrukcji Wybierz, jak pokazano:

Wybierz PID, Nazwa, ścieżka z procesów;

Dodawanie funkcji SQL

Osquery obsługuje również funkcje SQL, umożliwiając wykonywanie różnych działań z danymi zebranymi z zapytań.

Na przykład funkcja liczby może pozwolić na wyświetlanie liczby użytkowników w twoim systemie.

Wybierz liczbę (*) od użytkowników;

To polecenie zwróci całkowitą liczbę użytkowników w systemie.

Zdolność OsQuery do używania składni SQL jest ogromną zaletą, która może pomóc w tworzeniu złożonych zestawów danych, które mogą dać bardziej dogłębną analizę systemu. Tworzy również most, który programiści SQL korzystają z silników, takich jak PostgreSQL, MySQL i inni, mogą użyć do łatwego dostosowania.

https: // osquery.ReadThedocs.IO/EN/STABLE/WPROWADZENIE/SQL/

Zabawny, poboczny projekt

Po dalszym badaniu OsQuery i eksperymentu z nim odkryjesz, że jest to kompleksowe i potężne narzędzie, które ułatwia tworzenie projektów specjalnie dostrojonych do monitorowania systemów.

Z powodu zakresu tego samouczka i, aby uniknąć mylących początkujących, nie zagłębimy się w złożone projekty. To wspomniano, oto kilka narzędzi, które możesz zbudować za pomocą Osquery:

  • Zbieraj dzienniki z logstash
  • Zbuduj deskę rozdzielczą Monitor systemu z elasticsearch, logstash i kibana.
  • Zbuduj flotę Osquery z Kolide

https: // osquery.ReadThedocs.IO/en/Stable/wdrażanie/agregacja logów/
https: // www.elastyczny.co/przewodnik/en/beats/fileBeat/7.10/FileBeat-Module-Ofery.html
https: // github.com/fleetdm/flota

Wniosek

W tym samouczku spojrzeliśmy na podstawy Osquery, w tym jak używać go do zbierania informacji systemowych.

Chociaż nie jest to kompleksowy, ten przewodnik, który ma zapewnić szybkie i proste wprowadzenie do Osquery; W żadnym wypadku nie był to przewodnik.

Możesz wykorzystać inne zasoby, aby uzyskać głębsze zrozumienie różnych koncepcji, które omówiliśmy w tym samouczku.