- 1. Zainstaluj Sysdig w systemie Linux
- 2. Korzystanie z Sysdiga w systemie Linux
- 3. Zrozumienie filtrów i parametrów Sysdig w systemie Linux
- 4. Utwórz plik monitora systemu Linux
- 5. Monitoruj procesy Linuksa
- 6. Monitoruj procesy według wykorzystania procesora w systemie Linux
- 7. Monitoruj połączenia sieciowe i urządzenia I/O w systemie Linux
- 8. Monitoruj systemy plików we / wy w systemie Linux
- 9. Rozwiązywanie problemów z wydajnością w systemie Linux
- 10. Odkryj wolne sieci w systemie Linux
- 11. Monitoruj zapytania HTTP w systemie Linux
- 12. Wdrażanie powłok i interaktywność użytkowników w systemie Linux
- 13. Pomoc Sysdig w systemie Linux w systemie Linux
Istnieją różne narzędzia, które zostały opracowane, aby pomóc nam zarządzać zarządzanymi komputerami w znacznie pełniejszy sposób, co jest niezbędne, ponieważ pozwala nam mieć znacznie bardziej bezpośrednią kontrolę i poznać prawdziwy stan każdego systemu w czasie rzeczywistym.
Zarządzając środowiskami Linux dysponujemy praktycznym i prostym narzędziem, które pomaga nam w analizie systemu, a jest nim Sysdig.
Tym razem Solvetic przeanalizuje, jak zainstalować i używać Sysdig na Ubuntu 17.04 Server, ale ta aplikacja będzie bardzo pomocna dla każdej dystrybucji Linuksa.
Co to jest SysdigSysdig to aplikacja typu open source, która wykonuje skanowanie na poziomie systemu, co pozwala przechwycić stan systemu i aktywność działającej instancji Linuksa w celu późniejszego zapisywania, filtrowania i analizowania uzyskanych danych.
Sysdig został napisany w Lua i zawiera interfejs wiersza poleceń oraz potężny interaktywny interfejs użytkownika, csysdig, który można uruchomić w terminalu. Obecnie posiadamy narzędzia do zarządzania, takie jak:
Strace: Odkryj wezwania i sygnały systemu do procesu.
- Zrzut tcp: Monitorowanie ruchu sieciowego.
- Netstat: Monitorowanie połączenia sieciowego.
- Wysokość: Monitorowanie procesu w czasie rzeczywistym.
- Na górze: Monitorowanie przepustowości sieci w czasie rzeczywistym.
- Lsof: Pozwala na wizualizację, które pliki są otwierane przez jaki proces.
Dzięki sysdig zintegrujemy wszystkie te narzędzia i wiele innych, oferując prosty program i licząc na obsługę kontenerów.
Funkcje SysdigNiektóre z najbardziej wyróżniających się funkcji Sysdig to:
- Jest szybki, stabilny i łatwy w użyciu z obszerną dokumentacją.
- Obejmuje natywną obsługę technologii kontenerowych, w tym Docker, LXC i innych.
- Jest programowalny w Lua; oferuje dłuta (lekkie skrypty Lua) do przetwarzania przechwyconych zdarzeń systemowych.
- Obsługuje filtrowanie wyjścia.
- Obsługuje śledzenie systemu i aplikacji.
- Może być zintegrowany z Ansible, Pupe i Logstash.
- Umożliwia zaawansowaną analizę logów próbki.
- Posiada funkcje analizy ataków na serwer Linux (kryminalistyki) dla etycznych hakerów i wiele więcej.
1. Zainstaluj Sysdig w systemie Linux
Krok 1
Aby zainstalować Sysdig na Ubuntu 17.04 Server, wykonamy jedno z poniższych poleceń, które zweryfikuje wszystkie wymagania; jeśli wszystko się zgadza, pobierze i zainstaluje pakiet z repozytorium Draios APT/YUM:
curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig | bash curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig | sudo bash
POWIĘKSZAĆ
Krok 2
Po zakończeniu procesu instalacji zobaczymy:
POWIĘKSZAĆ
2. Korzystanie z Sysdiga w systemie Linux
Krok 1
Po zainstalowaniu musisz uruchomić sysdig jako root, ponieważ wymaga on dostępu do krytycznych obszarów, takich jak system plików / dev / sysdig * i będzie musiał automatycznie załadować moduł jądra sysdig-probe, wykonamy następujące czynności:
sudo sysdig
POWIĘKSZAĆ
Krok 2
Możemy tam zobaczyć serię mało skomplikowanych danych, jeśli chcemy uzyskać znacznie prostszy widok, będziemy musieli skorzystać z interfejsu csysdig. Wykonujemy:
sudo csysdigKrok 3
Wynik będzie następujący. Możemy zobaczyć dane w znacznie bardziej zorganizowany sposób. Ważne jest, aby wyjaśnić, że celem jest użycie polecenia sysdig, aby uzyskać prawdziwy potencjał narzędzia.
POWIĘKSZAĆ
3. Zrozumienie filtrów i parametrów Sysdig w systemie Linux
Na pierwszy rzut oka mogliśmy zobaczyć, że dane wygenerowane przez sudo sysdig są złożone i trudne do zrozumienia, ale same w sobie są minimalnymi skryptami Lua do badania przepływu zdarzeń sysdig, a tym samym wykonywania użytecznych czynności rozwiązywania problemów w systemie.
Krok 1
Wykonując następujące polecenie możemy zobaczyć dostępne filtry:
sudo sysdig -cl
POWIĘKSZAĆ
Krok 2
Tam możemy zobaczyć różne dostępne kategorie z odpowiednimi opcjami. Jeśli chcesz dowiedzieć się więcej o konkretnym filtrze, skorzystamy ze wskaźnika -i:
sudo sysdig -i topprocs_cpu
POWIĘKSZAĆ
Krok 3
Filtry Sysdig dodają więcej szczegółów do typu wyjścia, które możemy uzyskać ze strumieni zdarzeń, co pozwala nam dostosować wyjście. Prostym i powszechnym filtrem jest podstawowe sprawdzenie „class.field = value”. Aby zobaczyć listę dostępnych klas pól, pól i ich opisów, uruchomimy:
sudo sysdig -l
POWIĘKSZAĆ
4. Utwórz plik monitora systemu Linux
Krok 1
Aby zrzucić dane wyjściowe sysdig do pliku w celu późniejszej analizy, musimy użyć parametru -w i będzie można odczytać plik zrzutu śledzenia z parametrem -r.
Opcja -s służy do określenia liczby bajtów danych do przechwycenia dla każdego zdarzenia systemowego. W tym przypadku filtrujemy zdarzenia dla procesu mongod.
Krok 2
Na przykład możemy wykonać następujące czynności:
sudo sysdig -s 10 -w trace.scapKrok 3
Do Twojej analizy wykonamy następujące czynności:
sudo sysdig -r trace.scap proc.name = mongod
5. Monitoruj procesy Linuksa
Jeśli chcemy wylistować wszystkie procesy systemu, wykonamy następujące czynności:
sudo sysdig -c ps
POWIĘKSZAĆ
Widzimy pełne zestawienie wskazujące PID, użytkownika, wykorzystanie pamięci itp.
6. Monitoruj procesy według wykorzystania procesora w systemie Linux
Dzięki Sysdig możliwe jest monitorowanie procesów według procentowego wykorzystania procesora, w tym celu wykonujemy następujące czynności:
sudo sysdig -c topprocs_cpu
POWIĘKSZAĆ
7. Monitoruj połączenia sieciowe i urządzenia I/O w systemie Linux
Krok 1
Dzięki Sysdig możemy monitorować wszystkie połączenia sieciowe, wykonując następujące czynności:
sudo sysdig -c netstat
POWIĘKSZAĆ
Krok 2
Widzimy wszystkie adresy, używany protokół, status i PID. Poniższe polecenie pozwala nam wyświetlić najlepsze połączenia sieciowe o określoną liczbę bajtów:
sudo sysdig -c topconnsKrok 3
Możemy również wyświetlić główne procesy według sieci I / OS za pomocą następującego polecenia:
sudo sysdig -c topprocs_net
8. Monitoruj systemy plików we / wy w systemie Linux
Krok 1
Dane odczytane i zapisane przez procesy w systemie będzie można wydawać za pomocą linii:
sudo sysdig -c echo_fds
POWIĘKSZAĆ
Krok 2
Aby wyświetlić główne procesy według bajtów dysku (odczyt i zapis), użyjemy następującego wiersza:
sudo sysdig -c plik_topprocs
POWIĘKSZAĆ
9. Rozwiązywanie problemów z wydajnością w systemie Linux
Sysdig daje nam możliwość monitorowania błędów wywołań systemowych (wąskich gardeł) poprzez wykonanie następującego polecenia:
sudo sysdig -c wąskie gardła
POWIĘKSZAĆ
Notatkaaby zobaczyć wyniki, musimy użyć następujących klawiszy, aby zakończyć proces.
Ctrl + C
10. Odkryj wolne sieci w systemie Linux
Za pomocą następującego polecenia będzie można przeanalizować, które sieciowe urządzenie I/O działa wolno w systemie:
sudo sysdig -c netlower
11. Monitoruj zapytania HTTP w systemie Linux
Krok 1
Jeśli w systemie mamy serwer HTTP, taki jak Apache lub Nginx, możemy przeszukać dziennik żądań serwera za pomocą następującego polecenia:
sudo sysdig -c httplogKrok 2
Lub jeśli chcemy zwizualizować zapytania, wykonamy:
sudo sysdig -c httptop
12. Wdrażanie powłok i interaktywność użytkowników w systemie Linux
Krok 1
Następujące polecenie pozwoli nam zobaczyć wszystkie identyfikatory powłoki logowania:
sudo sysdig -c list_login_shellsKrok 2
Aby zobaczyć aktywność użytkowników, wykonamy następujące czynności:
sudo sysdig -c spy_users
13. Pomoc Sysdig w systemie Linux w systemie Linux
Na koniec możemy uzyskać dostęp do pomocy sysdig, wykonując jedno z następujących poleceń:
człowiek sysdig człowiek csysdig
POWIĘKSZAĆ
W ten sposób sysdig staje się funkcjonalną alternatywą, jeśli chodzi o zarządzanie, monitorowanie i utrzymywanie znacznie bardziej precyzyjnej kontroli nad różnymi aspektami systemu.