Blokowanie IP przez iptables

Zagadnienia bezpieczeństwa w systemie
gambi
Posty: 56
Rejestracja: 10 lutego 2014, 12:41

Post autor: gambi »

Firewall w tej chwili wygląda tak:

Kod: Zaznacz cały

# wlaczenie w kernelu forwardowania
echo 1 > /proc/sys/net/ipv4/ip_forward

# czyszczenie starych regul
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
iptables -t mangle -F
iptables -t mangle -X

# ustawienie domyslnej polityki
iptables -P INPUT DROP
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -A INPUT -d 217.79.184.92 -j DROP
iptables -A OUTPUT -d 217.79.184.92 -j DROP
iptables -A INPUT -p tcp --destination-port 28960:28970 -j ACCEPT
iptables -A INPUT -p udp --destination-port 28960:28970 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 2192 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 9987 -j ACCEPT
iptables -A INPUT -p udp --destination-port 9987 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 20:21 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 49152:65534 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 10000 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 10011 -j ACCEPT
iptables -A INPUT -p TCP -s 192.168.1.0/24 --destination-port 139 -j ACCEPT
iptables -A INPUT -p UDP -s 192.168.1.0/24 --destination-port 137 -j ACCEPT
iptables -A INPUT -p UDP -s 192.168.1.0/24 --destination-port 138 -j ACCEPT
iptables -A INPUT -p TCP --destination-port 8888 -j ACCEPT
iptables -A INPUT -p UDP --destination-port 8888 -j ACCEPT
iptables -A INPUT -p UDP --destination-port 55 -j ACCEPT
iptables -A INPUT -p UDP --destination-port 8001 -j ACCEPT
iptables -A INPUT -p UDP --destination-port 55 -j ACCEPT
iptables -A INPUT -p UDP --destination-port 8001 -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -p tcp --destination-port 32400 -j ACCEPT
iptables -A INPUT -p udp --destination-port 32400 -j ACCEPT
iptables -A INPUT -s 178.180.0.0/16 -p udp -m udp --dport 28960 -j DROP
iptables -A INPUT -p udp -m udp --sport 4380 --dport 1025:65355 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 27000:27050 -j ACCEPT
iptables -A INPUT -p udp --destination-port 27000:27036 -j ACCEPT
iptables -A INPUT -p udp --destination-port 3478 -j ACCEPT
iptables -A INPUT -p udp --destination-port 4379 -j ACCEPT
iptables -A INPUT -p udp --destination-port 4380 -j ACCEPT




# utrzymanie polaczen nawiazanych
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
Schemat sieci :

Kod: Zaznacz cały

Internet-Debian-Router-Dekoder
Porty do streamowania na debianie odblokowane są na stałe jak widać w firewallu (8001) a zablokowane na routerze.
Otwieram je tylko na czas streamu i wtedy właśnie z automatu idzie od 2 do 3Mb/s na adres, który podałem wcześniej.
Awatar użytkownika
LordRuthwen
Moderator
Posty: 2305
Rejestracja: 18 września 2009, 21:45
Lokalizacja: klikash?

Post autor: LordRuthwen »

Ja bym na twoim miejscu logował połączenia na przekierowaną pulę, bo wg mnie to nie jest tak ,że to tylko to jedno IP ciągnie... jakiś robot zindeksował stream i próbuje cały czas.
gambi
Posty: 56
Rejestracja: 10 lutego 2014, 12:41

Post autor: gambi »

LordRuthwen pisze:Ja bym na twoim miejscu logował połączenia na przekierowaną pulę, bo wg mnie to nie jest tak ,że to tylko to jedno IP ciągnie... jakiś robot zindeksował stream i próbuje cały czas.
Nie wiem czy dobrze zrozumiałem.
Chodzi o to, żeby odblokować port 8001 tylko dla wybranych ip?
Awatar użytkownika
dedito
Moderator
Posty: 3519
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Post autor: dedito »

Zamiast skryptu firewalla daj wynik polecenia:

Kod: Zaznacz cały

iptables -nvL
gambi
Posty: 56
Rejestracja: 10 lutego 2014, 12:41

Post autor: gambi »

dedito pisze:Zamiast skryptu firewalla daj wynik polecenia:

Kod: Zaznacz cały

iptables -nvL

Kod: Zaznacz cały

Chain INPUT (policy DROP 1492 packets, 158K bytes)
 pkts bytes target     prot opt in     out     source               destination                                                                              
    0     0 fail2ban-ssh  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         multiport dports 22
    0     0 DROP       all  --  *      *       0.0.0.0/0            217.79.184.9                                                                             2
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         tcp dpts:28960:28970
 1135 46959 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp dpts:28960:28970
  227 23144 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         tcp dpt:2192
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         tcp dpt:9987
 532K   58M ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp dpt:9987
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         tcp dpts:20:21
    9   970 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         tcp dpts:49152:65534
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         tcp dpt:10000
 4264  248K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         tcp dpt:10011
    0     0 ACCEPT     tcp  --  *      *       192.168.1.0/24       0.0.0.0/0                                                                                         tcp dpt:139
   26  2442 ACCEPT     udp  --  *      *       192.168.1.0/24       0.0.0.0/0                                                                                         udp dpt:137
   50 11964 ACCEPT     udp  --  *      *       192.168.1.0/24       0.0.0.0/0                                                                                         udp dpt:138
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         tcp dpt:8888
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp dpt:8888
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp dpt:55
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp dpt:8001
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp dpt:55
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp dpt:8001
   92  7628 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         tcp dpt:32400
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp dpt:32400
    0     0 DROP       udp  --  *      *       178.180.0.0/16       0.0.0.0/0                                                                                         udp dpt:28960
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp spt:4380 dpts:1025:65355
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         tcp dpts:27000:27050
   89  3716 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp dpts:27000:27036
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp dpt:3478
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp dpt:4379
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         udp dpt:4380
  605 48337 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         state RELATED,ESTABLISHED

Chain FORWARD (policy ACCEPT 659 packets, 39220 bytes)
 pkts bytes target     prot opt in     out     source               destination                                                                              
29604   20M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         state RELATED,ESTABLISHED
 3811  209K ACCEPT     all  --  *      *       192.168.1.0/24       0.0.0.0/0                                                                                

Chain OUTPUT (policy ACCEPT 1424 packets, 109K bytes)
 pkts bytes target     prot opt in     out     source               destination                                                                              
    0     0 DROP       all  --  *      *       0.0.0.0/0            217.79.184.9                                                                             2
 538K   61M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                         state RELATED,ESTABLISHED

Chain fail2ban-ssh (1 references)
 pkts bytes target     prot opt in     out     source               destination                                                                              
    0     0 RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0                                                                                

Awatar użytkownika
dedito
Moderator
Posty: 3519
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Post autor: dedito »

Ta regułka powinna być w łańcuchu forward.
Ogólnie ten twój cały firewall powinieneś sobie przemyśleć od nowa. Przykładowo w przypadku regułek w łąńcuchu forward powinna być polityka DROP.

Kod: Zaznacz cały

[color=#333333]iptables -I FORWARD -s 217.79.184.92 -j DROP
[/color][color=#333333]iptables -I FORWARD -d 217.79.184.92 -j DROP
[/color]
Awatar użytkownika
pawkrol
Moderator
Posty: 939
Rejestracja: 03 kwietnia 2011, 10:25

Post autor: pawkrol »

Jak dla mnie to ten cały firewall jest bez sensu.
np: Łańcuch Forward ( Polityka na Accept i dodatkowo reguły przepuszczające).
Do każdego łańcucha można się przyczepić.
gambi
Posty: 56
Rejestracja: 10 lutego 2014, 12:41

Post autor: gambi »

dedito pisze:Ta regułka powinna być w łańcuchu forward.
Ogólnie ten twój cały firewall powinieneś sobie przemyśleć od nowa. Przykładowo w przypadku regułek w łąńcuchu forward powinna być polityka DROP.

Kod: Zaznacz cały

[color=#333333]iptables -I FORWARD -s 217.79.184.92 -j DROP
[/color][color=#333333]iptables -I FORWARD -d 217.79.184.92 -j DROP
[/color]
Dodanie takiego wpisu pomogło :D
Dziękuje.
Co do mojego firewalla to zdaję sobie sprawę, że jest niedopracowany ale i tak jest chyba lepiej niż było na początku ( jak w pierwszym poscie ), gdzie cały INPUT był na ACCEPT.
Zmieniłem na DROP i po kolei odblokowywałem tylko te porty, które były mi potrzebne do działania poszczególnych usług.
Chętnie poprawiłbym jeszcze to co trzeba o ile macie jeszcze trochę cierpliwości.
Awatar użytkownika
dedito
Moderator
Posty: 3519
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Post autor: dedito »

gambi pisze: ... INPUT był na ACCEPT.
Zmieniłem na DROP i po kolei odblokowywałem tylko te porty, które były mi potrzebne do działania poszczególnych usług.
Zrób to samo z FORWARD.
Ogólnie masz "tony" przykładów firewalli w Internecie.
https://pl.wikibooks.org/wiki/Debian_-_ ... e_iptables
https://wiki.debian.org/DebianFirewalla na tym forum w artykułach masz bardzo dobry artykuł na ten temat.
content/402-Iptables-dla-pocz%C4%85tkuj%C4%85cych-cz-1
Awatar użytkownika
Yampress
Administrator
Posty: 6369
Rejestracja: 09 sierpnia 2007, 21:41
Lokalizacja: PL

Post autor: Yampress »

gambi pisze:Chciałbym zablokować dostęp z tej domeny/adresu, ponieważ zauważyłem próby "ataków" na mój serwer.
Bo masz dziurawy firewall
# ustawienie domyslnej polityki
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
Tu jest tak zrobione jakby w ogóle firewall'a nie było. No dodana tylko jest jeszcze linijka do udostępniania połączenia internetowego, ale to nie jest już ściana ogniowa serwera.
ODPOWIEDZ