Jak zainstalować i używać Osquery w Ubuntu

Jak zainstalować i używać Osquery w Ubuntu
Osquery jest narzędziem oprogramowania typu open source i na platformie, które można wykorzystać do ujawnienia systemu operacyjnego jako relacyjnej bazy danych. Możemy uzyskać dane z systemu operacyjnego, uruchamiając zapytania oparte na SQL. Na tym blogu zobaczymy, jak zainstalować Osquery w Ubuntu i jak go używać do uzyskania danych z systemu operacyjnego.

Instalowanie Osquery w Ubuntu

Osquery pakiety nie są dostępne w domyślnym repozytorium Ubuntu, więc przed jego zainstalowaniem musimy dodać Osquery APT Repozytorium poprzez uruchomienie następującego polecenia w terminalu.

Ubuntu@ubuntu: ~ $ echo "deb [arch = amd64] https: // pkg.Osquery.IO/Deb Deb Main "|
sudo tee/itp./apt/źródła.lista.D/Osquery.lista

Teraz zaimportujemy klawisz podpisania, uruchamiając następujące polecenie w terminalu.

Ubuntu@ubuntu: ~ $ sudo apt-key adv-keyserver Keyserver.Ubuntu.com
--Recv-Keys 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B

Po zaimportowaniu klawisza podpisania, teraz zaktualizuj system, uruchamiając następujące polecenie w terminalu.

Ubuntu@ubuntu: ~ $ sudo apt-get aktualizacja

Teraz zainstaluj Osquery Uruchamiając następujące polecenie

Ubuntu@ubuntu: ~ $ sudo apt-get instaluj osquery

Po zainstalowaniu Osquery, Teraz musimy sprawdzić, czy został poprawnie zainstalowany, uruchamiając następujące polecenie

Ubuntu@ubuntu: ~ $ osqueryi --version

Jeśli podaje następujące dane wyjściowe, jest on poprawnie zainstalowany

Za pomocą Osquery

Teraz po zainstalowaniu jesteśmy gotowi do użycia Osquery. Uruchom następujące polecenie, aby przejść do interaktywnej monitu powłoki

Ubuntu@ubuntu: ~ $ osqueryi

Otrzymywać pomoc

Teraz możemy uruchomić zapytania oparte na SQL, aby uzyskać dane z systemu operacyjnego. Możemy uzyskać pomoc Osquery Uruchamiając następujące polecenie w interaktywnej powładzie.

Osquery> .pomoc

Uzyskanie wszystkich tabel

Jak wcześniej wspomniano, Osquery ujawnia dane z systemu operacyjnego jako relacyjnej bazy danych, więc ma wszystkie dane w postaci tabel. Możemy uzyskać wszystkie tabele, uruchamiając następujące polecenie w interaktywnej powładzie

Osquery> .tabele

Jak widzimy, uruchamiając powyższe polecenie, możemy uzyskać kilka tabel. Teraz możemy uzyskać dane z tych tabel, uruchamiając zapytania oparte na SQL.

Informacje o wyświetlaniu informacji o wszystkich użytkownikach

Możemy zobaczyć wszystkie informacje o użytkownikach, uruchamiając następujące polecenie w interaktywnej powładzie

OsQuery> Wybierz * od użytkowników;

Powyższe polecenie wyświetli GID, UID, opis itc. wszystkich użytkowników

Możemy również wyodrębnić tylko odpowiednie dane o użytkownikach, na przykład chcemy zobaczyć tylko użytkowników, a nie inne informacje o użytkownikach. Uruchom następujące polecenie w interaktywnej powładzie, aby uzyskać nazwy użytkowników

OsQuery> Wybierz nazwę użytkownika od użytkowników;

Powyższe polecenie pokaże wszystkich użytkowników w twoim systemie

Podobnie możemy uzyskać nazwy użytkowników wraz z katalogiem, w którym użytkownik istnieje, uruchamiając następujące polecenie.

OsQuery> Wybierz nazwę użytkownika, katalog od użytkowników;

Podobnie możemy zapytać o tyle pól, ile chcemy, uruchamiając podobne polecenia.

Możemy również uzyskać wszystkie dane określonych użytkowników. Na przykład chcemy uzyskać wszystkie informacje o użytkowniku root. Możemy uzyskać wszystkie informacje o użytkowniku root, uruchamiając następujące polecenie.

OsQuery> Wybierz * od użytkowników, gdzie nazwa użytkownika = "root";

Możemy również uzyskać określone dane z określonych pól (kolumny). Na przykład chcemy uzyskać identyfikator grupy i nazwę użytkownika użytkownika root. Uruchom następujące polecenie, aby uzyskać te dane.

OsQuery> Wybierz nazwę użytkownika, GID od użytkowników, gdzie nazwa użytkownika = „root”

W ten sposób możemy zapytać o wszystko, co chcemy od stołu.

Wymień wszystkie procesy

Możemy wymienić pierwsze pięć procesów działających w Ubuntu, uruchamiając następujące polecenie w interaktywnej powładzie

OsQuery> Wybierz * Z procesów limit 5;

Ponieważ w systemie działa wiele procesów, więc wyświetliśmy tylko pięć procesów, używając limitu słowa kluczowego.

Możemy znaleźć identyfikator procesu określonego procesu Na przykład chcemy znaleźć identyfikator procesu MongoDB, abyśmy uruchomić następujące polecenie w interaktywnej powładzie

OsQuery> Wybierz PID z procesów, gdzie name = "Mongood";

Znalezienie wersji Ubuntu

Możemy znaleźć wersję naszego systemu Ubuntu, uruchamiając następujące polecenie w interaktywnej powładzie

OsQuery> Wybierz * z OS_VERSION;

Pokaże nam wersję naszego systemu operacyjnego

Sprawdzanie interfejsów sieciowych i adresów IP

Możemy sprawdzić adres IP, maskę podsieci interfejsów sieciowych, uruchamiając następujące zapytanie w interaktywnej powładzie.

OSQUery> Wybierz interfejs, adres, maska ​​z interfejsu_addressów
Gdzie interfejs nie lubi „%lo%”;

Sprawdzanie zalogowanych użytkowników

Możemy również sprawdzić zalogowane użytkowników w twoim systemie, pytając dane z tabeli „logged_in_users”. Uruchom następujące polecenie, aby znaleźć zalogowane użytkowników.

OsQuery> Wybierz użytkownika, host, czas od logged_in_users, gdzie tty nie lubi '-';

Sprawdzanie pamięci systemowej

Możemy również sprawdzić całkowitą pamięć, bezpłatną pamięć buforowaną itp. Uruchamiając jakieś polecenie oparte na SQL w interaktywnej powładzie. Aby sprawdzić całkowitą pamięć, uruchom następujące polecenie. To da nam całkowitą pamięć systemu w bajtach.

OsQuery> Wybierz pamięć_total z pamięci_info;

Aby sprawdzić bezpłatną pamięć systemu, uruchom następujące zapytanie w interaktywnej powładzie

OsQuery> Wybierz pamięć_free z pamięci_info;

Po uruchomieniu powyższego polecenia da nam bezpłatną pamięć dostępną w naszym systemie

Możemy również sprawdzić pamięć podręczną systemu za pomocą tabeli pamięci_info, uruchamiając następujące zapytanie.

OsQuery> Wybierz buforowany z pamięci_info;

Wymień grupy

Możemy znaleźć wszystkie grupy w twoim systemie, uruchamiając następujące zapytanie w interaktywnej powładzie

OsQuery> Wybierz * z grup;

Wyświetlanie portów słuchania

Możemy wyświetlać wszystkie porty odsłuchowe naszego systemu, uruchamiając następujące polecenie w interaktywnej powładzie

OsQuery> Wybierz * z Listening_ports;

Możemy również sprawdzić, czy port słucha, czy nie, uruchamiając następujące polecenie w interaktywnej powładzie

OsQuery> Wybierz port, adres z Słuchań_ports, gdzie port = 27017;

To da nam wyjście, jak pokazano na poniższym rysunku

Wniosek

Osquery to bardzo przydatne narzędzie oprogramowania do znalezienia jakichkolwiek informacji o twoim systemie. Jeśli już znasz zapytania oparte na SQL, jest to bardzo łatwe w użyciu dla Ciebie lub jeśli nie jesteś świadomy zapytań opartych na SQL, starałem się pokazać kilka głównych zapytań, które są przydatne do znalezienia danych. Możesz znaleźć dowolne dane z dowolnej tabeli, uruchamiając podobne zapytania.