Monitorowanie pracy systemu vmstat

Slides:



Advertisements
Podobne prezentacje
Procedura instalacji systemu Windows XP
Advertisements

Procedura instalacji systemu Linux
Usługi sieciowe Wykład 7 Zapora sieciowa, NAT iptables- debian
Sieci komputerowe Protokół TCP/IP Piotr Górczyński 27/09/2002.
POWIAT MYŚLENICKI Tytuł Projektu: Poprawa płynności ruchu w centrum Myślenic poprzez przebudowę skrzyżowań dróg powiatowych K 1935 i K 1967na rondo.
ZAPORY SIECIOWE Firewall – ściana fizycznie oddzielająca silnik od pasażerów w samochodzie Sposób zabezpieczenia komputera/sieci przed osobami niepowołanymi.
Kamil Smitkiewicz Bezpieczeństwo w PHP.
Domy Na Wodzie - metoda na wlasne M
Prezentacja o MS-DOS’ie
Sieci komputerowe.
1 Linux jako system wielozadaniowy i wielodostępny.
Wspólne skoroszytów Wspólne użytkowanie skoroszytów Arkusze i skoroszyty Tworzenie nowego skoroszytu Obliczenia w skoroszytach Przeglądanie wzorów w skoroszytach.
SIECI KOMPUTEROWE (SieKom) PIOTR MAJCHER WYŻSZA SZKOŁA ZARZĄDZANIA I MARKETINGU W SOCHACZEWIE INSTALACJA.
Systemy operacyjne.
Podstawowe komendy UNIXA
PING: Program używany do diagnozowania połączeń sieciowych.
Temat nr 10: System przerwań
SO – LAB3 Wojciech Pieprzyca
Rozwiązywanie problemów z routerem
Konfiguracja polcenie SUDO
SPRZĘT W UBUNTU 1. Sterowniki do sprzętu w naszym komputerze? Większość sterowników jest już dostępnych w ramach jądra Linuksa i są zainstalowane wraz.
Zarządzanie zasobami komputera.
Budowa, przeglądanie i modyfikacja
USŁUGA FTP 1. Definicja FTP. FTP (File Transfer Protocol, ang. protokół transmisji plików) jest protokołem typu klient-serwer, który umożliwia przesyłanie.
SIEĆ P2P 1. Definicja sieci równouprawnionej. To taka sieć, która składa się z komputerów o takim samym priorytecie ważności, a każdy z nich może pełnić.
Wykonawcy:Magdalena Bęczkowska Łukasz Maliszewski Piotr Kwiatek Piotr Litwiniuk Paweł Głębocki.
Ogólnopolski Konkurs Wiedzy Biblijnej Analiza wyników IV i V edycji Michał M. Stępień
Prezentacja funkcjonalności dziennika e-klasa
Wykonanie: Iwona Szatkowska. Uwaga! Wszystkie opisane w instrukcji operacje oparte są o zapowiedzi oraz projekty odpowiednich ustaw i rozporządzeń. Te.
Linux - polecenia.
Wielozadaniowowść systemu operacyjnego Linux
Instrukcja USOS Rejestracja na zajęcia obieralne wersja by Marek Opacki.
Realizacja prostej sieci komputerowej
Prezentacja i szkolenie
Sieci komputerowe.
Podstawy działania wybranych usług sieciowych
System plików systemu linux
Polecenia systemowe dos, winodws, linux
1. Pomyśl sobie liczbę dwucyfrową (Na przykład: 62)
Defragmentacja dysku Jednym z kluczowych czynników wydajności operacji wejścia/wyjścia jest poziom fragmentacji plików. Fragmentacja oznacza zapisywanie.
Sieciowe systemy operacyjne - UNIX
Analiza matury 2013 Opracowała Bernardeta Wójtowicz.
Sieć oparta o serwer Ubuntu 12.10
Linux w sieci Konfigurowanie interfejsu sieciowego.
SYSTEMY OPERACYJNE Adresowanie IP cz3.
Laboratorium systemów operacyjnych
Etapy uruchamiania systemu Pliki konfiguracyjne
Sieci komputerowe.
EGZAMINU GIMNAZJALNEGO 2013
EcoCondens Kompakt BBK 7-22 E.
EcoCondens BBS 2,9-28 E.
User experience studio Użyteczna biblioteka Teraźniejszość i przyszłość informacji naukowej.
WYNIKI EGZAMINU MATURALNEGO W ZESPOLE SZKÓŁ TECHNICZNYCH
Testogranie TESTOGRANIE Bogdana Berezy.
Jak Jaś parował skarpetki Andrzej Majkowski 1 informatyka +
Wybrane systemy operacyjne
Linux, to kompletny system operacyjny (jądro i programy użytkownika), który powstał na zasadzie GNU – czyli Powszechnej Licencji Publicznej (General Public.
Systemy operacyjne i sieci komputerowe
Współrzędnościowe maszyny pomiarowe
Polecenia sieciowe w Windows
Elementy geometryczne i relacje
Strategia pomiaru.
Procesy, wątki Program a proces Proces: Przestrzeń adresowa, kod, dane, stos (część pamięci do przechowania zmiennych lokalnych i niektórych adresów) Otwarte.
Prezentacja na temat: Narzedzia do naprawy systemu.
Procedura instalacji Linuksa. Z serwera pobieramy obraz płyty. Nagrywamy obraz na płytę. Sprawdzamy ustawienia w BIOS – podczas uruchamiania systemu napęd.
System operacyjny Linux
AudaPad / AudaShare AudaShare PRO (2.8)
PROGRAMY DO KONTROLI RODZICIELSKIEJ
PROGRAMY DO KONTROLI RODZICIELSKIEJ
Zapis prezentacji:

Monitorowanie pracy systemu vmstat 1 Monitorowanie pracy systemu vmstat Podaje statystyczną informację o: stanie procesów użyciu pamięci użyciu swap blokowych operacjach we/wy przerwaniach przełączaniu kontekstu użyciu procesora

Monitorowanie pracy systemu vmstat 2 Monitorowanie pracy systemu vmstat vmstat [-n] [delay [count]] wyświetla count razy informację co czas delay sekund. Opcja n powoduje wyświetlenie nagłówka tylko raz pierwszy raz wyświetla informację statystyczną od czasu uruchomienia systemu, potem za okres od ostatniego wyświetlenia

Monitorowanie pracy systemu vmstat 3 Monitorowanie pracy systemu vmstat stan procesów - procs r – procesy działające lub czekające na uruchomienie b – procesy w stanie sleep z wyłączonymi przerwaniami

Monitorowanie pracy systemu vmstat 4 Monitorowanie pracy systemu vmstat użycie pamięci – memory (domyślnie w kB) swpd – ilość pamięci zapisanej na dysku free – ilość wolnej pamięci fizycznej buff – ilość pamięci zajętej przez bufory

Monitorowanie pracy systemu vmstat 5 Monitorowanie pracy systemu vmstat użycie swap – swap (domyślnie w kB/s) si – ilość pamięci odczytywanej z dysku so – ilość pamięci zapisywanej na dysk

Monitorowanie pracy systemu vmstat 6 Monitorowanie pracy systemu vmstat Operacje we/wy – io (domyślnie w blokach/s) bi – ilość bloków wysłanych do urządzeń blokowych bo – ilość bloków odczytanych z urządzeń blokowych

Monitorowanie pracy systemu vmstat 7 Monitorowanie pracy systemu vmstat Przerwania i przełączanie kontekstu – system in – ilość przerwań na sekundę cs – ilość przełączeń kontekstu na sekundę

Nice – zakres -20 do 19, domyślnie 10. 8 Priorytet procesu Priorytet – zakres -20 do 20, domyślnie 0, ustawiany funkcją setpriority(). Nice – zakres -20 do 19, domyślnie 10. Domyślne i graniczne wartości priority i nice różne w różnych systemach, zawsze mniejsza wartość to ważniejszy proces. Procesy o niższym priority + nice uprzywilejowane przy przydziale czasu procesora. Program nice uruchamia proces z innym nice, renice zmienia nice istniejącego procesu. Zwykły użytkownik może tylko zwiększyć nice (spowolnić proces)

Monitorowanie pracy systemu top 9 Monitorowanie pracy systemu top Monitoruje w trybie rzeczywistym stan systemu najbardziej aktywne procesy pozwala na interaktywne manipulowanie procesami

Monitorowanie pracy systemu top 10 Monitorowanie pracy systemu top Ważniejsze opcje: d – czas między kolejnymi próbkami (domyślnie 5 sekund) p – monitoruj procesy z podanym PID (do 20 opcji) s – uruchom w trybie secure (pewne komendy zablokowane, można użyć w /etc/toprc) n – wykonaj n iteracji i zakończ b – pracuj w tle (batch) – np. dla przekazania wyników do innej komendy)

Monitorowanie pracy systemu top 11 Monitorowanie pracy systemu top top – czas systemowy, czas od uruchomienia systemu, liczba aktywnych użytkowników, liczba uruchomionych procesów w ostatnich 1, 5 i 15 minutach Tasks – liczba procesów od ostatniego próbkowania – running, sleep, stopped, zombie CPU(s) – czas procesora (w %) zużyty na procesy użytkownika, jądra, idle. Podaje też czas procesów z nice dodatnim. mem – pamięć dostępna, użyta, wolna, użyta na bufory swap – wielkość swap, ilość użytej i wolnej przestrzeni

Monitorowanie pracy systemu top 12 Monitorowanie pracy systemu top PID – PID procesu PPID – PID procesu nadrzędnego UID – UID właściciela procesu USER – nazwa właściciela procesu PRI – priorytet procesu NI – wartość nice procesu (ujemne wartości mają niższy priorytet) SIZE – suma wielkości obszaru kodu, danych i stosu w kB) RSS – wielkość pamięci fizycznej użytej przez proces SHARED – wielkość użytej pamięci współdzielonej

Monitorowanie pracy systemu top 13 Monitorowanie pracy systemu top STAT – stan procesu: S- uśpiony (sleep) D- uśpiony z wyłączonymi przerwaniami R – działający Z – zombie T – zatrzymany Po symbolu stanu może wystąpić: < - ujemne nice N – dodatnie nice w - swapped zombie – procesy nieprawidłowo zamknięte przez proces nadrzędny. Usunie je init po zakończeniu procesu nadrzędnego

Monitorowanie pracy systemu ps 14 Monitorowanie pracy systemu ps Polecenie ps wyświetla stan procesów Akceptuje opcje w stylu: Unix98 – poprzedzone znakiem '-', mogą być grupowane BSD – nie poprzedzone znakiem '-', mogą być grupowane GNU – poprzedzone znakami '--', nie mogą być grupowane Opcje w różnych stylach można mieszać

Monitorowanie pracy systemu ps 15 Monitorowanie pracy systemu ps Prosta selekcja procesów ps ax – Unix98 ps -e – BSD Selekcja procesów po nazwie programu (-C), PID (-p, p), tty (-t), wskazanego użytkownika (U, -U, -G) Format wyświetlania long (l, -l), pełny (-f), zdefiniowany przez użytkownika (o, -o)

Monitorowanie pracy systemu ps 16 Monitorowanie pracy systemu ps Modyfikowanie wyświetlania: -H – pokaż hierarchię procesów w, -w - szeroki wydruk (załamie, a nie obetnie linie) e – pokaż otoczenie procesu

Monitorowanie pracy systemu ps 17 Monitorowanie pracy systemu ps Przykłady użycia: ps -e wyświetl wszystkie procesy (BSD) ps ax wyświetl wszystkie procesy (Unix98) ps axlw Wyświetl wszystkie procesy, rozszerzony format, szeroki wydruk ps -U root -u root -N wyświetl wszystkie procesy za wyjątkiem procesów użytkownika root ps -eo pid,tt,user,fname,tmout,f,wchan wyświetl wszystkie procesy z zadanym formacie

Monitorowanie pracy systemu pstree 18 Monitorowanie pracy systemu pstree Wyświetla hierarchię procesów Użyteczne opcje: -p – wyświetl UID procesu -l – szeroki wydruk (załamuj linie, jeśli potrzeba)

Konfiguracje w kartotece /etc 19 Kopie bezpieczeństwa Konfiguracje w kartotece /etc Podstawowe elementy systemu - /bin /lib /boot /sbin Pozostałe elementy systemu - /usr Zmienne elementy systemu (np. logi, kolejki) /var Kartoteki użytkowników /home Dane aplikacji – specyficzne dla nich lokalizacje

20 Kopie bezpieczeństwa Procedury wykonywania kopii zapasowych i odtwarzania – spisać i wydrukować Sposób i częstotliwość wykonywania kopii bezpieczeństwa dopasowany do specyfiki instalacji Procedury na wypadek fizycznego zniszczenia sprzętu (np. serwer wraz z nietypowym napędem taśmy)

kopie całkowite lub przyrostowe 21 Kopie bezpieczeństwa dump – kopiuje na taśmę magnetyczną (opcjonalnie do zbioru) filesystem (lub jego fragment) kopie całkowite lub przyrostowe informacje o dumpowanych filesystemach w /etc/dumpdates Typowe użycie dump -0u -f /dev/st0 /usr

rozpocząć od dump poziomu 0 (powtórzyć okresowo, np. co miesiąc): 22 Kopie bezpieczeństwa Dla zminimalizowania liczby taśm (czasu potrzebnego do odtworzenia systemu): rozpocząć od dump poziomu 0 (powtórzyć okresowo, np. co miesiąc): /sbin/dump -0u -f /dev/st0 /usr w kolejnych dniach kopie przyrostowe (zmodyfikowany algorytm wież Hanoi): 3 2 5 4 7 6 9 8 9 9 ... co tydzień wykonać dump poziomu 1 i kontynuować dumpy od poziomu 3

Przechowywanie nośników 23 Kopie bezpieczeństwa Przechowywanie nośników inne pomieszczenie, budynek, szafa ogniotrwała itp. dump poziomu 0 przechowywany długo (bezterminowo?) dumpy przyrostowe – kilka zestawów taśm używanych cyklicznie, okresowo wymienianych Przejrzysty, jednoznaczny i sformalizowany sposób opisywania nośników

Odtwarzanie systemu – restore utworzyć partycję, np.: mke2fs /dev/sda1 24 Kopie bezpieczeństwa Odtwarzanie systemu – restore utworzyć partycję, np.: mke2fs /dev/sda1 zamontować, np.: mount /dev/sda1 /mnt zmienić bieżącą kartotekę: cd /mnt odtworzyć filesystem z dump poziomu 0: restore rf /dev/st0 jeśli były wykonywane dumpy przyrostowe, odtworzyć je w kolejności wykonywania odtworzyć w podobny sposób pozostałe filesystemy Odtwarzanie partycji root – uruchomić komputer z dysku instalacyjnego w trybie rescue

poleceniami cd i ls wyszukać zbiory do odtworzenia 25 Kopie bezpieczeństwa Odtwarzanie wybranych zbiorów – restore w trybie interaktywnym: restore -i poleceniami cd i ls wyszukać zbiory do odtworzenia poleceniami add i delete utworzyć listę zbiorów i kartotek do odtworzenia poleceniem restore odtworzyć zbiory z listy

mt – program do manipulowana napędem taśmy magnetycznej 26 Kopie bezpieczeństwa mt – program do manipulowana napędem taśmy magnetycznej mt fsf n – przewiń taśmę o n zbiorów do przodu mt bsf n – przewiń taśmę o n zbiorów w tył mt status - wyświetl status napędu mt rewind – przewiń do początku mt rewoffl – przewiń do początku i rozładuj napęd

27 Kopie bezpieczeństwa Dump przewidziany jest do wykonywania kopii bezpieczeństwa całych filesystemów kopie podkartotek lub wybranych zbiorów często wygodniej robić programem tar Kopie robocze niewielkiej ilości zbiorów można robić poprzez cp -r -p (z podkartotekami, zachowując właściciela, prawa zbiorów i znaczniki czasu)

Analiza logów systemowych 28 Analiza logów systemowych Duża ilość informacji, o różnym poziomie ważności Zapisywane samodzielnie przez aplikacje lub poprzez syslogd Dla zwiększenia bezpieczeństwa logi można zapisywać na innym serwerze (syslogd -r) Typowo w kartotece /var/log

Analiza logów systemowych 29 Analiza logów systemowych Konfiguracja daemona syslogd w zbiorze /etc/syslog.conf Syslogd dzieli komunikaty na klasy: auth (security), authpriv, cron, daemon, kern, lpr, mail, mark, news, syslog, user, uucp, local0 – local7 Komunikaty w ramach klasy mają różny priorytet: debug, info, notice, warning (warn), error (err) , crit, alert, emerg (panic) err, warn, panic, security – wycofywane, nie używać

Analiza logów systemowych 30 Analiza logów systemowych W zbiorze /etc/syslog.conf znajdują się listy klas i priorytetów komunikatów oraz miejsce ich zapisywania, np.: kern.* /dev/console authpriv.* /var/log/secure authpriv.* @logserw.akuku.pl local1.* /var/log/router *.info;authpriv.none;local1.none /var/log/messages

Analiza logów systemowych 31 Analiza logów systemowych Aby uniknąć przepełnienia filesystemu, daemon logrotated okresowo robi ich kopie, poddaje kompresji, usuwa stare wersje, wysyła mailem pod wskazane adresy. Konfiguracja logrotated w zbiorach /etc/logrotate.conf i zbiorach w kartotece /etc/logrotated.d

Analiza logów systemowych 32 Analiza logów systemowych Przy analizie logów pomocne mogą być polecenia: grep wzorzec plik wyszukaj linie zawierające wzorzec grep -v wzorzec plik – wyszukaj linie nie zawierające wzorca wc – oblicz liczbę wierszy, wyrazów i znaków w zbiorze uniq – pomiń powtarzające się wiersze uniq -c – jak wyżej, ale podaj liczbę wystąpień sort -k pos1[pos2] sortuje linie według klucza od znaku pos1 do pos2 włącznie (liczone od 1)

Analiza logów systemowych 33 Analiza logów systemowych expand – zamień znaki tab na spacje colrm [startcol [endcol]] – usuń znaki w zbiorze od kolumny startcol do endcol, liczone od 1 ed – edytor liniowy, np. do zamiany łańcuchów vi – edytor ekranowy, makropolecenia do modyfikowania zawartości zbioru

Analiza logów systemowych 34 Analiza logów systemowych Ile było naruszeń access-list 101: grep "101 denied" rtr|wc Z jakich adresów IP: grep "101 denied" rtr|colrm 1 88|more Jakie adresy były najaktywniejsze: grep "101 denied" rtr|colrm 1 88|sort|uniq - c |sort -r|more

Analiza logów systemowych logwatch – program do analizy logów 35 Analiza logów systemowych logwatch – program do analizy logów modułowa konstrukcja uruchamiany przez cron lub na życzenie napisany w perl, można dodać własne moduły lub modyfikować istniejące trzy poziomy szczegółowości analizy high, med, low efekty analizy zapisywane do zbioru, wyświetlane na ekran lub wysyłane mailem konfiguracja w /etc/log.d/logwatch.conf skrypty do analizy w kartotece /etc/log.d/conf/services

Monitorowanie i diagnostyka sieci 36 Monitorowanie i diagnostyka sieci arpwatch – daemon do monitorowania par adresów MAC/IP Zapisuje baze danych MAC/IP w zbiorze /var/arpwatch/arp.dat Po restarcie wczytuje uprzednio zapisane dane z arp.dat Umożliwia wykrycie samowolnych zmian adresu IP, podsłuchiwanie pakietów (ettercap), zlokalizowanie stacji będącej przyczyną złego działania sieci arp.dat może posłużyć do zbudowania konfiguracji dhcpd

Monitorowanie i diagnostyka sieci 37 Monitorowanie i diagnostyka sieci new activity – para IP/MAC nie była używana od 6 miesięcy new station – pojawił się nowy adres MAC flip flop – adres IP pojawił się z adresu MAC, na którym był poprzednio changed ethernet address – adres IP pojawił się z nowego adresu MAC (po raz pierwszy)

Monitorowanie i diagnostyka sieci 38 Monitorowanie i diagnostyka sieci bogon – ramka z adresu IP nie należącego do lokalnej sieci ethernet (IP) broadcast – ramka z adresu broadcast ethernet (IP)

Monitorowanie i diagnostyka sieci 39 Monitorowanie i diagnostyka sieci Tcpdump – wyświetla nagłówki pakietów w sieci, opcjonalnie zapisuje je do zbioru -i – tylko na wskazanym interfejsie -n – nie zamieniaj adresów na nazwy -q – wyświetlaj mniej informacji -v – wyświetlaj więcej informacji (-vv, -vvv – jeszcze więcej) Umożliwia selekcję ramek według adresu źródłowego, docelowego, protokołu Przykład – raportuj wszystkie pakiety TCP oprócz pochodzącego od komputera test: tcpdump tcp and not host test

Monitorowanie i diagnostyka sieci 40 Monitorowanie i diagnostyka sieci nmap – testuje otwarte porty Umożliwia wykrycie potencjalnych luk w bezpieczeństwie Odgaduje rodzaj systemu operacyjnego Wyszukuje otwarte porty UDP i TCP Znajduje aktywne adresy IP z podanym zakresie Rożne rodzaje skanowania, często trudne do wykrycia

Monitorowanie i diagnostyka sieci 41 Monitorowanie i diagnostyka sieci Przykłady: nmap test.com – wykrywa otwarte porty TCP komputera test.com nmap -sU test.com – wykrywa otwarte porty UDP komputera test.com (długotrwałe skanowanie) nmap -sV test.com – wykrywa programy i ich wersje słuchające na portach nmap -sP 195.164.200.1-10 - wykrywa (ping) aktywne adresy IP w zakresie 195.264.200.1 - 195.164.200.10

Monitorowanie i diagnostyka sieci 42 Monitorowanie i diagnostyka sieci netstat – wyświetla: domyślnie – połączenia sieciowe -r – tablica roputingu -i – statystyki interfejsów -s - statystyki protokołów -g – członkostwo w grupach multicast

Monitorowanie i diagnostyka sieci 43 Monitorowanie i diagnostyka sieci Traceroute, ping, mtr - narzędzia do diagnostyki połączeń sieciowych wysyłają testowe ramki ICMP lub UDP i oczekują na odpowiedź pozwalają wykryć jaką trasą wędrują ramki i gdzie na ich drodze występują problemy.

Monitorowanie i diagnostyka sieci 44 Monitorowanie i diagnostyka sieci Ping wysyła ramkę ICMP ECHO_REQUEST i oczekuje na odpowiedź ramką ICMP ECHO_REPLY Użyteczne opcje: -b – wyślij ramkę na adres broadcast -f – wysyłaj ramki z maksymalną szybkością, nie czekaj na odpowiedź -n – nie zamieniaj adresów na nazwy -i n - wysyłaj ramki co n sekund -s n – wysyłaj ramki n-bajtów (domyślnie 56) -c n – wyślij tylko n ramek

Monitorowanie i diagnostyka sieci 45 Monitorowanie i diagnostyka sieci traceroute wysyła ramki UDP długości 40 bajtów kolejno zwiększając pole TTL. Urządzenie, które wyzeruje TTL odpowiada ramką ICMP TIME_EXCEEDED Użyteczne opcje: -I – użyj ramki ICMP zamiast UDP -m – ustaw maksymalne ttl na inne, niż domyślne 30 -n – nie zamieniaj adresów na nazwy -p – ustaw początkowy port inny niż domyślny 33434

iptables – filtrowanie ramek IPv4 i NAT 46 Firewall iptables – filtrowanie ramek IPv4 i NAT tablice filtrowania obsługiwane przez jądro program iptables służy do konfigurowania tabel filtrowania jądra (od wersji 2.4) konfiguracja iptables w zbiorze /etc/sysconfig/iptables-config reguły filtrowania w zbiorze /etc/sysconfig/iptables

Trzy wbudowane tablice: filter – domyślna tablica 47 Firewall Trzy wbudowane tablice: filter – domyślna tablica nat – używana dla pakietów tworzących nowe połączenie mangle – używana do specjalizowanej zmiany pakietów Tablicę wybieramy opcją -t, np.: iptables -L -t nat

Firewall Tablice zawierają łańcuchy składające się z reguł 48 Firewall Tablice zawierają łańcuchy składające się z reguł Reguły definiują, co zrobić z pakietem, który do nich pasuje jeśli pakiet nie pasuje do reguły, sprawdzana jest następna reguła w łańcuchu, jeśli pasuje, to: wykonywany jest kolejny, zdefiniowany przez użytkownika łańcuch ACCEPT – pakiet jest akceptowany DROP – pakiet jest niszczony QUEUE – pakiet jest umieszczany w kolejce RESUME – opuszczany jest bieżący łańcuch i sprawdzana jest kolejna reguła łańcucha nadrzędnego

INPUT – dla pakietów wchodzących do systemu 49 Firewall Wbudowane łańcuchy: INPUT – dla pakietów wchodzących do systemu OUTPUT – dla pakietów utworzonych w systemie FORWARD – dla pakietów wchodzących do systemu, ale nie dla niego przeznaczonych PREROUTING (POSTROUTING) – w tablicach nat i mangle, dla pakietów tuż po wejściu (tuż przed opuszczeniem) systemu

Firewall Polecenia: -A – dodaj regułę na końcu łańcucha 50 Firewall Polecenia: -A – dodaj regułę na końcu łańcucha -D – usuń wskazaną regułę z łańcucha -L – wyświetl tablicę (domyślnie tablica filter, jeśli inna, to np. -t nat) -F – usuń reguły z tablicy -Z – wyzeruj liczniki pakietów -P – ustaw domyślną politykę dla tablicy

51 Firewall Reguły: -p [!] protocol – dotyczy wskazanego protokołu (tcp, udp, icmp, all) -s [!] address[/mask] – dotyczy adresu źródłowego pakietu -d [!] address[/mask] – dotyczy docelowego pakietu -i name – dotyczy pakietów wchodzących przez wskazany interfejs -o name – dotyczy pakietów wychodzących przez wskazany interfejs -j target – co zrobić jeśli reguła pasuje do pakietu (ACCEPT, DROP itp.)

ładowane domyślnie (opcja -p) lub jawnie: -m module 52 Firewall Rozszerzenia: ładowane domyślnie (opcja -p) lub jawnie: -m module --source-port [!] port[:port] - dotyczy pakietów pochodzących ze wskazanego portu lub zakresu portów --destination-port [!] port[:port] – dotyczy pakietów skierowanych na wskazany port lub zakres portów --mac-source [!] address – dotyczy pakietów pochodzących ze wskazanego adresu MAC --state – INVALID, ESTABLISHED,NEW, RELATED

Rozszerzenia wbudowane (targets opcji -j) 53 Firewall Rozszerzenia wbudowane (targets opcji -j) DNAT (tylko w tablicy nat, łańcuch PREROUTING lub OUTPUT): --to-destination ipaddr[-ipaddr][:port-port] zmień adres docelowy pakietu SNAT (tylko w tablicy nat, łańcuch POSTROUTING): --to-source ipaddr[-ipaddr][:port-port] zmień adres źródłowy pakietu Podanie zakresu adresów (portów) spowoduje cykliczne używanie kolejnych

Rozszerzenia wbudowane (targets opcji -j) 54 Firewall Rozszerzenia wbudowane (targets opcji -j) MASQUERADE (tylko w tablicy nat, łańcuch POSTROUTING): --to-ports port[-port] zmień docelowy port pakietu Używany przy dynamicznym przydzielaniu adresów karcie, wychodzącemu pakietowi zostanie przydzielony adres IP interfejsu. Jeśli interfejs ma adres statyczny, należy użyć SNAT

Limitowanie pamięci na dysku 55 Limitowanie pamięci na dysku quota – ogranicza wielkość pamięci dyskowej dostępnej dla użytkowników i grup limit na zajęty obszar na dysku limit na liczbę utworzonych zbiorów dwa rodzaje limitów: soft – po przekroczeniu system wyświetla ostrzeżenie hard – system nie pozwoli przekroczyć tego limitu limity oddzielne dla każdego filesystemu Przekroczyć limit soft można na określony czas, grace time, domyślnie 7 dni. Jeśli zbiory nie zostaną usunięte, stanie się on limitem hard.

Limitowanie pamięci na dysku 56 Limitowanie pamięci na dysku Musi zostać zainstalowany pakiet quota, sprawdzić możemy: rpm -qa | grep quota w /etc/fstab dla filesystemów z quota dodać usrquota (grpquota), np: /dev/hda7 /home ext3 defaults,usrquota 1 2 stworzyć grupę usrquota (grpquota) przeładować system lub przemontować filesystemy z quota, np: mount -o remount /home

Limitowanie pamięci na dysku 57 Limitowanie pamięci na dysku Przejrzeć filesystemy i utworzyć bazy danych quota: /sbin/quotacheck -cguvamf -F vfsv0 Dla wszystkich filesystemów ze zdefiniowanym quota w ich głównych kartotekach zostaną utworzone zbiory aquota.user Włączyć quota: quotaon -a

Limitowanie pamięci na dysku 58 Limitowanie pamięci na dysku Ustawianie limitów dla użytkowników: setquota -u USERNAME SOFTQUOTA HARDQUOTA SOFTFILELIMIT HARDFILELIMIT -a|<filesystem> SOFTQUOTA i HARDQUOTA to limity wielkości pamięci dyskowej w blokach SOFTFILELIMIT i HARDFILELIMIT to limity ilości zbiorów. Ustawienie limitu na wartość 0 powoduje wyłączenie limitu Np. ustawienie dla użytkownika test limitu 10MB: setquota -u test 8000 10000 0 0 -a

Limitowanie pamięci na dysku 59 Limitowanie pamięci na dysku quota – wyświetla limity i aktualne użycie zasobów root może wyświetlić limity dowolnego użytkownika, zwykły użytkownik tylko swoje. quota [-u test] grace time zmienić można poleceniem edquota -t

Rozwiązywanie problemów sprzętowych 60 Rozwiązywanie problemów sprzętowych Filesystem /proc tworzy interfejs do struktur jądra Większość obiektów jest tylko do odczytu, ale niektóre można zmieniać. Kartoteki o nazwie w postaci liczby to interfejsy do struktur procesów, nazwa kartoteki to PID. environ – otoczenie procesu. Linie nie są zakończone znakiem \n, wiec aby wyświetlić: (cat /proc/1/environ; echo) | tr "\000" "\n" fd – kartoteka z linkami do każdego otwartego przez proces pliku

Rozwiązywanie problemów sprzętowych 61 Rozwiązywanie problemów sprzętowych maps – plik z opisem używanych przez proces obszarów pamięci i prawami dostępu. root – kartoteka root procesu stat – informacje o procesie wyświetlane przez polecenie ps statm – informacje o stanie pamięci status – większość z informacji stat i statm w czytelniejszej postaci

Rozwiązywanie problemów sprzętowych 62 Rozwiązywanie problemów sprzętowych bus – kartoteka z informacjami o zainstalowanych urządzeniach pci, pcmcia, usb. Wartości binarne, interfejs z komend lspci, setpci, lsusb itp. cpuinfo – dane o procesorach (typ, częstotliwości, wielkość cache itp) devices – lista numerów głównych urządzeń – może być użyta przez MAKEDEV dla zapewnienia kompatybilności z jądrem dma – lista zarejestrowanych i używanych kanałów DMA

Rozwiązywanie problemów sprzętowych 63 Rozwiązywanie problemów sprzętowych filesystems – lista typów filesystemów wkompilowanych w jądro. Używana przez polecenie mount, jeśli nie wskażemy jawnie typu ide – kartoteka z opisem urzędzeń IDE. Informacje o urządzeniach w podkartotekach, w zbiorach tekstowych. Interfejs do tych danych zapewnia program hdparm interrupts – lista przerwań z licznikami. iomem – użycie buforów we/wy przez programy ioports – lista adresów zarejestrowanych portów

Rozwiązywanie problemów sprzętowych 64 Rozwiązywanie problemów sprzętowych net – informacje o sieci (wyświetla je netstat) pci – lista urządzeń pci wykrytych przez jadro podczas inicjalizacji sys – kartoteka ze zmiennymi systemowymi. Niektóre można zmieniać, np. Wpisanie “1” do zbioru: /proc/sys/dev/cdrom/autoeject Spowoduje automatyczne wysunięcie cdrom z napędu po odmontowaniu urządzenia

Rozwiązywanie problemów sprzętowych 65 Rozwiązywanie problemów sprzętowych lspci – wyświetla informacje o szynach pci i urządzeniach Podaje dane z /proc/bus/pci Informacje o nazwach urządzeń, producencie - ze zbioru /usr/share/hwdata/pci.ids -v (-vv) wyświetla więcej informacji -b – wyświetla przerwania i adresy odczytane z kart, a nie z jadra -s – selekcja urządzenia, np: lspci -s 03: wyświetli tylko urządzenie 03 (szyna 3)

Rozwiązywanie problemów sprzętowych 66 Rozwiązywanie problemów sprzętowych setpci – odczytuje i ustawia parametry urządzenia pci. Wybór urządzenia: -s [[<bus>]:][<slot>][.[<func>]] Odczyt wartości – podanie nazwy rejestru. Zapis – przypisanie nowej wartości znakiem =, np: $> setpci -s 03:0a.0 INTERRUPT_LINE 03 $> setpci -s 03:0a.0 INTERRUPT_LINE=05 05 Nazwy rejestrów – w man 8 setpci

Rozwiązywanie problemów sprzętowych 67 Rozwiązywanie problemów sprzętowych lsmod – wyświetla załadowane moduły jądra. Podaje nazwę, rozmiar, liczbę odwołań i jakie inne moduły go używają Module Size Used by snd_intel8x0 35677 0 snd_ac97_codec 93413 1 snd_intel8x0 ac97_bus 6465 1 snd_ac97_codec

Rozwiązywanie problemów sprzętowych 68 Rozwiązywanie problemów sprzętowych insmod – ładuje moduł jądra Moduły standardowo znajdują sie w podkartotekach /lib/modules, np: /lib/modules/2.4.../kernel/crypto/blowfish.ko /lib/modules/2.4.../kernel/drivers/block/loop.ko rmmod – usuwa moduł jądra

Rozwiązywanie problemów sprzętowych 69 Rozwiązywanie problemów sprzętowych modprobe – ładuje moduł jądra i moduły, od których on zależy Zależności pomiędzy modułami zdefiniowane są w zbiorze /lib/modules/wersja_jadra/modules.dep depmod – program analizujący zależności pomiędzy modułami i tworzący zbiór modules.dep

Zabezpieczanie systemu 70 Zabezpieczanie systemu Zwiększenie bezpieczeństwa systemu obniża jego funkcjonalność i komfort pracy Przedsięwzięte środki zabezpieczające muszą być adekwatne do potencjalnych zagrożeń Linux jest bezpiecznym systemem operacyjnym, ale nie w 100% Każde oprogramowanie zawiera błędy, administratorzy i użytkownicy też je popełniają

Zabezpieczanie systemu 71 Zabezpieczanie systemu Uruchamiać tylko te usługi sieciowe, które są potrzebne (inetd, xinetd, samodzielne daemony /etc/rc.d/rcx.d, netstat -alp, nmap) Uruchomione usługi ograniczyć tylko do zainteresowanych odbiorców (na niektórych interfejsach, nie o każdej porze – tcpd, bariera na firewall, kontrola nmap z internetu) Usługi rpc (również portmap) i nfs uruchamiać tylko wtedy, kiedy są niezbędne

Zabezpieczanie systemu 72 Zabezpieczanie systemu Jeśli to możliwe, zastąpić telnet przez ssh, nie używać ssh v1 Jeśli serwer widoczny jest z sieci internet lub nie jest zainstalowany w bezpiecznej sieci, skonfigurować i uruchomić firewall Usunąć z issue informacje identyfikujące wersję systemu

Zabezpieczanie systemu 73 Zabezpieczanie systemu Zapisywać w logach istotne informacje (syslog.conf) Okresowo przeglądać logi, posiłkować się programem logwatch i własnymi skryptami Istotne informacje przesyłać mailem na swoje konto (ewentualnie SMS korzystając z procmail) Ważne informacje dotyczące bezpieczeństwa zapisywać w dwu zbiorach, nawet na innym serwerze (facility i priority w syslog.conf) W logach nie zapisywać informacji nieistotnych

Zabezpieczanie systemu 74 Zabezpieczanie systemu Przeglądać okresowo historię logowania sie użytkowników (last -22, w .login, cron + mail itp.) Przeglądać okresowo listę uruchomionych procesów (ps ax, .login, cron + mail) Przeglądać nowe patche i instalować w razie potrzeby

Zabezpieczanie systemu 75 Zabezpieczanie systemu Bit SUID SGID używany jest przez programy, które muszą wykonywać pewne operacje z większymi prawami niż zwykły użytkownik (na przykład sendmail czy mount) Polecenie ls -l wyświetla bity SUID i SGID: r-sr-xr-x ustawiony SUID r-xr-sr-x ustawiony SGID Wyszukać programi SUID i SGID i zweryfikować, czy są potrzebne: find / \( -perm -4000 -o -perm -2000 \) - exec ls -ldb {} \; >> /tmp/suids

Zabezpieczanie systemu 76 Zabezpieczanie systemu Przejrzeć prawa dostępu do kartotek z ważnymi danymi i katalogów użytkowników, zwrócić uwagę na prawa grupy i jej członków (/etc/group) Nie przechowywać haseł w zbiorze /etc/passwd, używać /etc/shadow Nie używać trywialnych haseł (krótkich i ze słownika), nie zapisywać haseł, uświadomić użytkownikom znaczenie bezpiecznych haseł, okresowo kontrolować? (John the Ripper) W razie potrzeby w /etc/login.defs zmienić minimalną długość hasła: PASS_MIN_LEN 5

Zabezpieczanie systemu 77 Zabezpieczanie systemu Konta root używać tylko wtedy, gdy to niezbędne Korzystać z polecenie su -, nie zezwalać na bezpośrednie logowanie Ustawić automatyczne wylogowanie po okresie nieaktywności np. 10 minut (TMOUT=600 w .bash_profile; w /etc/bashrc będzie dotyczyło wszystkich użytkowników) Ograniczyć prawo wykonywania su – do członków grupy wheel (/etc/pam.d/su, usunąć komentarze)

Zabezpieczanie systemu 78 Zabezpieczanie systemu W /etc/fstab dla urządzeń montowanych przez użytkowników ustawić flagi nosuid (nie ustawiaj bitu SUID ani SGID), nodev (nie interpretuj plików urządzeń), noexec (nie pozwalaj na uruchamianie programów binarnych) Jeśli do komputera mają dostęp przypadkowe osoby ustawić hasło w bios i boot-loaderze, zablokować klawisze ctrl+alt+del w /etc/inittab, nie wysyłać na konsolę logów (syslog.conf)

Postępowanie po włamaniu do systemu 79 Postępowanie po włamaniu do systemu Uniemożliwić dalsze nieuprawnione korzystanie z systemu (zablokowanie dostępu z adresu IP, zamknięcie usługi, zablokowanie dostępu z sieci ...). Postępowanie musi być adekwatne do zagrożenia i uwzględniać potrzeby użytkowników. Ustalić sposób uzyskania nieuprawnionego dostępu, uniemożliwić ponowne wykorzystanie luki w systemie Znaleźć w systemie i usunąć pozostałości po włamaniu, jeśli to możliwe, zainstalować nowy system i skopiować konfiguracje i dane użytkowników

Postępowanie po włamaniu do systemu 80 Postępowanie po włamaniu do systemu Sprawdzić pozostałe systemy w sieci Nie kasować bez potrzeby dysków systemu, jeśli to możliwe, pozostawić do późniejszej analizy. Nie zapisywać na nich bez potrzeby żadnych zbiorów – skasowane przez włamywacza dane mogą nadal się na nich znajdować W razie potrzeby powiadomić o incydencie CERT

Postępowanie po włamaniu do systemu 81 Postępowanie po włamaniu do systemu Objawy włamania Nieprawidłowe wpisy w logach systemowych (również brak wpisów) Pliki z SUID lub SGID: find / -user root -perm -4000 -print find / -group kmem -perm -2000 -print Zmienione programy binarne: rpm -Vf /bin/* Wpisy flip-flop w logach arpwatch – możliwe sniffery Niewłaściwe programy uruchamiane przez crond i atd

Postępowanie po włamaniu do systemu 82 Postępowanie po włamaniu do systemu Zmienione usługi sieciowe (xinetd.conf, netstat -alpn, nmap) Nowe i zmienione wpisy w /etc/passwd, /etc/group – puste hasła, nowi użytkownicy, zmienione UID (w szczególności na 0) Nieprawidłowe wpisy w zbiorach hosts.equiv, hosts.lpd, .rhosts nowe nazwy, znaki +. Zbiory, których dawniej nie było

Postępowanie po włamaniu do systemu 83 Postępowanie po włamaniu do systemu Zbiory i kartoteki o nieprawidłowych nazwach, na przykład “...” “.. “, “..^G” find / -name ".. " -print -xdev find / -name ".*" -print -xdev | cat -v (cat -v – wyświetl znaki nie drukowalne)