Strona 1 z 1

Iptables, czy reguły domyślne są bezpieczne?

: 30 stycznia 2011, 16:54
autor: bolo
Zainstalowany domyślnie pakiet iptables posiada ustalone już trzy reguły.
Wygląda to tak:

Kod: Zaznacz cały

iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination 
Moje pytanie, jako laika w kwestii bezpieczeństwa sieciowego, jest takie: czy pozostawienie tych reguł jest bezpieczne?

: 30 stycznia 2011, 21:22
autor: Bastian
Powyższe reguły mówią, iż firewall jest kompletnie wyłączony. Jeśli nie stoisz za NATem, i masz zewnętrzne IP to można powiedzieć, iż pozostawienie tego tak nie jest bezpieczne. Jeśli nie chcesz się uczyć obsługi iptables, zainstaluj sobie jakiegoś firewalla gotowego, w stylu guarddog, i skonfiguruj tak samo jak pod Windows.

: 05 lutego 2011, 18:56
autor: grzesiek

: 06 lutego 2011, 16:27
autor: bolo
Na początku dziękuję wszystkim za cenne wypowiedzi!
Boję się sam podjąć ryzyko konstruować samodzielnie tekstowo reguły iptables dlatego posłużyłem się jego nakładką Firestarter. Są w sieci poradniki jak jego ustawić i nie jest to w zasadzie trudne. Efekt, który uzyskałem jest jednak niezadowalający. Nie wiem czym jest on spowodowany: mój błąd czy programu?
Dostęp do sieci www jest poczty także. Natomiast blokuje mi komunikator Kadu oraz deluge.
Deluge jak wiadomo jest klientem sieci bitTorrent i chociaż skonfigurowałem to w zakładce "Policy", "add rule" "inbound traffic policy" porty 6881-6889 pokazuje deluge jako otwarte. Wszystkie połączenia dochodzące na ten port pojawiają się w zakładce "Events" jako zablokowane trafienia, Hit from nr_IP detected. Ikona w obszarze powiadamiania zmienia kolor na czerwony z czarną błyskawicą!
Dlaczego tak się dzieje skoro dopuściłem ten ruch?

Teraz wyniki poleceń najpierw z wyłączonym Firestarter:

Kod: Zaznacz cały

# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination 
a teraz po włączeniu nakładki:

Kod: Zaznacz cały

# iptables -L
Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     tcp  --  dir-300              anywhere            tcp flags:!FIN,SYN,RST,ACK/SYN 
ACCEPT     udp  --  dir-300              anywhere            
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     icmp --  anywhere             anywhere            limit: avg 10/sec burst 5 
NR         all  -- !192.168.0.0/24       anywhere            
DROP       all  --  anywhere             255.255.255.255     
DROP       all  --  anywhere             192.168.0.255       
DROP       all  --  BASE-ADDRESS.MCAST.NET/8  anywhere            
DROP       all  --  anywhere             BASE-ADDRESS.MCAST.NET/8 
DROP       all  --  255.255.255.255      anywhere            
DROP       all  --  anywhere             0.0.0.0             
DROP       all  --  anywhere             anywhere            state INVALID 
LSI        all  -f  anywhere             anywhere            limit: avg 10/min burst 5 
INBOUND    all  --  anywhere             anywhere            
LOG_FILTER  all  --  anywhere             anywhere            
LOG        all  --  anywhere             anywhere            LOG level info prefix `Unknown Input' 

Chain FORWARD (policy DROP)
target     prot opt source               destination         
ACCEPT     icmp --  anywhere             anywhere            limit: avg 10/sec burst 5 
LOG_FILTER  all  --  anywhere             anywhere            
LOG        all  --  anywhere             anywhere            LOG level info prefix `Unknown Forward' 

Chain OUTPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     tcp  --  192.168.0.101        dir-300             tcp dpt:domain 
ACCEPT     udp  --  192.168.0.101        dir-300             udp dpt:domain 
ACCEPT     all  --  anywhere             anywhere            
DROP       all  --  BASE-ADDRESS.MCAST.NET/8  anywhere            
DROP       all  --  anywhere             BASE-ADDRESS.MCAST.NET/8 
DROP       all  --  255.255.255.255      anywhere            
DROP       all  --  anywhere             0.0.0.0             
DROP       all  --  anywhere             anywhere            state INVALID 
OUTBOUND   all  --  anywhere             anywhere            
LOG_FILTER  all  --  anywhere             anywhere            
LOG        all  --  anywhere             anywhere            LOG level info prefix `Unknown Output' 

: 06 lutego 2011, 22:15
autor: Bastian
Masz ustawioną politykę blokowania wszystkiego i przepuszczania tylko www, kadu i torrentów ?

: 07 lutego 2011, 19:19
autor: bolo
Już nic nie rozumiem, wczoraj dopuszczałem ruch dla połączeń przychodzących na portach 80 i 6881-6889 (dla torrentów). Efekt był taki, że Kadu oraz Transmission miałem całkowicie zablokowane. Dzisiaj zablokowałem cały ruch przychodzący likwidując utworzone wcześniej regułki "Policy" w Firestarter i wszystko mi działa. Można zgłupieć. Wychodzi na to, że firestarter to zbędny gadżet, który na dodatek niestabilnie działa.
Najchętniej wywaliłbym tę nakładkę iptables.

Moje potrzeby są takie:
chciałbym w iptables zablokować cały ruch przychodzący z wyłączeniem przeglądarki, komunikatora kadu oraz odblokować porty 6881-6889 (dla torrentów). Po konsultacjach z "wujkiem google" ułożyłem taki skrypt reguł iptables i odinstalowałem Firestarter:

Kod: Zaznacz cały

/bin/sh
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT 
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED

iptables -A INPUT -s 0/0 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 0/0 -p udp --dport 22 -j ACCEPT
iptables -A INPUT -s 0/0 -p tcp --dport 6881:6889 -j ACCEPT
iptables -A INPUT -s 0/0 -p udp --dport 6881:6889 -j ACCEPT
Chciałbym jedynie o opinię o nim. Czy spełnia wystarczająco powyższe kryteria, czy nie przeoczyłem czegoś?


Myślę, że nie jest bezzasadnym to moje tytułowe pytanie. Mogę chyba stwierdzić, że większość dystrybucji linuksowych posiada, bo nie wszystkie mają, wbudowaną w swoje jądro zaporę Iptables. Któż jednak zastanawia się czy fakt jej istnienia uwalnia już nas od zadbania o jej konfigurację? Nieskonfigurowanie tego elementu pozostawia nam politykę ruchu sieciowego na "ACCEPT" co nie wydaje się być rozsądnym. Dlatego warto zadbać o ten element.