Internet Control Message Protocol, znany również jako ICMP, to protokół używany do sprawdzania łączności hostów w sieci. Możemy również użyć tego protokołu do diagnozowania problemów w sieci. Ale z punktu widzenia bezpieczeństwa może być również wykorzystany przez kogoś do przeprowadzenia ataku DDoS. Powódź pingów lub atak typu Distributed Denial of Service (DDoS) to forma ataku, w którym ktoś wysyła do hosta wiele żądań ping i host staje się prawie niedostępny dla rutynowego ruchu. Aby uniknąć tego rodzaju sytuacji, administratorzy sieci zazwyczaj blokują ICMP w swojej sieci. W tym artykule dowiemy się, jak można wykorzystać tabele IP do blokowania ICMP na naszym serwerze.
Jakie są tabele IP?
Tabele IP to program narzędziowy zapory dla systemów operacyjnych Linux. Może być używany do akceptowania, odrzucania lub zwracania ruchu sieciowego do lub ze źródła. Obserwuje nadchodzący ruch sieciowy przy użyciu różnych zestawów reguł zdefiniowanych w tabeli. Te zestawy zasad nazywane są łańcuchami. Tabele IP obserwują pakiety danych i które pakiety pasujące do reguł są kierowane do innego łańcucha lub przypisywane do jednej z poniższych wartości.
- PRZYJĘTY: Pakiet będzie mógł przejść
- UPUSZCZAĆ: Pakiet nie będzie mógł przejść
- POWRÓT: Łańcuch zwróci pakiet do poprzedniego łańcucha.
Instalowanie tablic IP
W przypadku większości dystrybucji systemu Linux preinstalowane są tabele IP. Możesz sprawdzić, czy tablice IP są zainstalowane, czy nie, wpisując w terminalu następujące polecenie.
[ochrona poczty e-mail]:~$ iptables --wersjaJeśli tabele IP nie są zainstalowane, możesz je zainstalować, uruchamiając w terminalu następujące polecenie.
[ochrona poczty e-mail]:~$ sudo apt-get update[ochrona poczty e-mail]:~$ sudo apt-get install iptables
Możemy sprawdzić domyślny stan tabel IP, uruchamiając w terminalu następujące polecenie:.
[email chroniony]:~$ sudo iptables -L -vFlaga '-L' wyświetla wszystkie reguły, a flaga '-v' pokazuje szczegółowe informacje.
Alternatywnie możemy również wyświetlić listę wszystkich reguł dodanych do tabel IP, uruchamiając w terminalu następujące polecenie:.
[email chroniony]:~$ sudo iptables -S
Domyślnie wszystkie łańcuchy akceptują pakiety i te łańcuchy nie mają przypisanej reguły rule.
Przypisywanie reguł do łańcuchów
Początkowo żadna reguła nie jest przypisana do żadnego łańcucha i wszystkie akceptują ruch sieciowy. Teraz w tej sekcji zobaczymy, jak możemy zdefiniować niestandardowe reguły, aby blokować lub zezwalać na ruch sieciowy. Aby zdefiniować nową regułę, używamy flagi 'A' (append), która informuje tablice IP, że zostanie zdefiniowana nowa reguła. Następujące opcje są również używane wraz z flagą „A” do opisania reguły.
-ja (interfejs): Ta opcja wskazuje, przez który interfejs chcesz, aby ruch sieciowy był dozwolony lub blokowany. Listę wszystkich interfejsów w systemie można uzyskać, uruchamiając w terminalu następujące polecenie:.
[ochrona poczty e-mail]:~$ ifconfig-p (protokół): Ta opcja określa, który protokół chcesz filtrować za pomocą tabel IP. Może to być TCP, UDP, ICMP, ICMPV6 itp. Możesz zastosować reguły do wszystkich protokołów, używając wszystkich opcji.
-s (źródło): Ta opcja pokazuje źródło ruchu sieciowego, takie jak adres IP lub nazwa domeny.
-dport (port docelowy): Ta opcja służy do wskazania portu docelowego dla ruchu sieciowego.
-jot (cel): Ta opcja służy do pokazywania celu. Może to być AKCEPTUJ, UPUŚĆ, ODRZUCAJ lub ZWRÓĆ. Ta opcja jest obowiązkowa dla każdej reguły.
Ogólnie podstawowa składnia dodawania reguły będzie następująca:
[email chroniony]:~$ sudo iptables -A-p