Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2006-08-21 12:40:28

  EsTeL - Użytkownik

EsTeL
Użytkownik
Skąd: LDZ
Zarejestrowany: 2006-08-21

Firewall na IPTABLES - czy jest OK, a moze cos zmienic??

dobry config firewall'a czy niebardzo ??
jezeli NIE to co zmienic/dodac/usunac...

IP jest przydzielane przez DHCP statycznie do MAC
w sieci jest 7 kompow z tego 2 (ostatnie) maja byc w sieci ale nie moga miec internetu

kilka portow tez ma byc otwartych na serverze :)

Kod:

# 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

# ustawienie polityki dzialania
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# polaczenia nawiazane
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED

# Otwarty port: 22 na TCP/192.168.1.1 dla uslugi: ssh
iptables -A INPUT -s 0/0 -d 192.168.1.1 -p tcp --dport 22 -j ACCEPT
iptables -A FORWARD -s 0/0 -d 192.168.1.1 -p tcp --dport 22 -j ACCEPT

# Otwarty port: 53 na TCP/192.168.1.1 dla uslugi: dns
iptables -A INPUT -s 0/0 -d 192.168.1.1 -p tcp --dport 53 -j ACCEPT
iptables -A FORWARD -s 0/0 -d 192.168.1.1 -p tcp --dport 53 -j ACCEPT

# Otwarty port: 53 na UDP/192.168.1.1 dla uslugi: dns
iptables -A INPUT -s 0/0 -d 192.168.1.1 -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -s 0/0 -d 192.168.1.1 -p udp --dport 53 -j ACCEPT

# Otwarty port: 22 na TCP/10.0.0.2 dla uslugi: ssh
iptables -A INPUT -s 0/0 -d 10.0.0.2 -p tcp --dport 22 -j ACCEPT
iptables -A FORWARD -s 0/0 -d 10.0.0.2 -p tcp --dport 22 -j ACCEPT

# Otwarty port: 53 na TCP/10.0.0.2 dla uslugi: dns
iptables -A INPUT -s 0/0 -d 10.0.0.2 -p tcp --dport 53 -j ACCEPT
iptables -A FORWARD -s 0/0 -d 10.0.0.2 -p tcp --dport 53 -j ACCEPT

# Otwarty port: 53 na UDP/10.0.0.2 dla uslugi: dns
iptables -A INPUT -s 0/0 -d 10.0.0.2 -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -s 0/0 -d 10.0.0.2 -p udp --dport 53 -j ACCEPT

# pc01 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.5 -j MASQUERADE
iptables -A FORWARD -m mac --mac-source 00:0F:EA:3B:1B:17 -j ACCEPT

# pc02 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.6 -j MASQUERADE
iptables -A FORWARD -m mac --mac-source 00:0D:61:ED:41:E4 -j ACCEPT

# pc03 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.7 -j MASQUERADE
iptables -A FORWARD -m mac --mac-source 00:C0:26:A9:3E:A5 -j ACCEPT

# pc04 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.8 -j MASQUERADE
iptables -A FORWARD -m mac --mac-source 00:0B:6A:C6:0C:CB -j ACCEPT

# pc05 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.9 -j MASQUERADE
iptables -A FORWARD -m mac --mac-source 00:C0:12:C4:0A:0D -j ACCEPT

# !! pc06 - NIE ma internetu
iptables -D FORWARD -m mac --mac-source 44:45:53:54:00:00 -j ACCEPT

# !! pc07 - NIE ma internetu
iptables -D FORWARD -m mac --mac-source 00:C0:DF:0A:45:D0 -j ACCEPT

Offline

 

#2  2006-08-24 11:15:02

  Ulter - Użytkownik

Ulter
Użytkownik
Zarejestrowany: 2006-03-15

Re: Firewall na IPTABLES - czy jest OK, a moze cos zmienic??

o pętli zwrotnej zapomniałeś.

Offline

 

#3  2006-08-24 12:46:24

  korbol - Członek DUG

korbol
Członek DUG
Zarejestrowany: 2005-04-29

Re: Firewall na IPTABLES - czy jest OK, a moze cos zmienic??

Pobawię się w proroka :]
Jakiej petli?
Ano takiej:

Kod:

iptables -A INPUT -i lo -j ACCEPT

Pozdrawiam

Offline

 

#4  2006-08-25 12:09:39

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: Firewall na IPTABLES - czy jest OK, a moze cos zmienic??

mozesz jeszcze sobie dodac takie cus (tablica conntrak):
    echo 200 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_close_wait
    echo 340 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established

P.S:
BiExi mi to zalecila i jak narazie to wszystko smiga az milo do momentu kiedy kts sie nie zacznie bawic <lol2>


LRU #480459

Offline

 

#5  2006-08-27 14:04:45

  ayven - Użytkownik

ayven
Użytkownik
Skąd: z sieci ;-)
Zarejestrowany: 2006-06-21
Serwis

Re: Firewall na IPTABLES - czy jest OK, a moze cos zmienic??

Pierwsze linie firewalla zrobiłbym tak:

Kod:

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

# czyszczenie starych regul
iptables -F

##to sie zapewne odnosi do wszystkich łańcuchów iptables. Wiec jednak że domyślnych łańcuchów nie można usunąc. Zbędne to jest
iptables -X
## powinno sie podawać odwrotnie. Na początku -F a potem -X, gdyż nie ##można usunąć tablicy która nie jest pełna
iptables -t nat -X a powinno byc iptables -t nat -F
iptables -t nat -F a powinno być iptables -t  nat -X
## Jeszcze dodałbym:
iptables -t filter -F
iptables -t filter -X 
 
# ustawienie polityki dzialania
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# polaczenia nawiazane
## Tu jest zdaje mi się że jest dobrze, opórcz wpisu dotyczącego łańcucha OUTPUT . IMHO ##jest on zupełnie nie potrzebny - przecież domyślna polityka nakazuje ##zakceptowac  pakiety.
iptables -A FORWARD --m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# Otwarty port: 22 na TCP/192.168.1.1 dla uslugi: ssh
## Zastosowałem pętle :P

ip="192.168.1.1 10.0.0.2"
for ip2 in $ip
do
iptables -A INPUT -s 0/0 -d $ip2 -m state --state NEW -p tcp 22 -j ACCEPT
done
##SSH - komunikuje się za pomocą tcp i nie ma potrzebu wpuszczać UDP
##Do dego status połączenia NEW - bedzie jeszcze mniej luk

iptables -A INPUT -s 0/0 -d $ip2 -m state --state NEW -p udp 53 -j ACCEPT
##DNS komunikuje się za pomocą UDP i nie ma potrzeby wpuszczać tcp

Kod:

# pc01 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.5 -j MASQUERADE
iptables -t  filter -A FORWARD -m mac --mac-source 00:0F:EA:3B:1B:17 -j ACCEPT

# pc02 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.6 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:0D:61:ED:41:E4 -j ACCEPT

# pc03 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.7 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:C0:26:A9:3E:A5 -j ACCEPT

# pc04 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.8 -j MASQUERADE
iptables  -t filter -A FORWARD -m mac --mac-source 00:0B:6A:C6:0C:CB -j ACCEPT

# pc05 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.9 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:C0:12:C4:0A:0D -j ACCEPT

#w sumie moze byc. Dodałem tylko tablicę filter dla łańcucha FORWARD


Kod:

# !! pc06 - NIE ma internetu
iptables -D FORWARD -m mac --mac-source 44:45:53:54:00:00 -j ACCEPT

# !! pc07 - NIE ma internetu
iptables -D FORWARD -m mac --mac-source 00:C0:DF:0A:45:D0 -j ACCEPT

Tego to nie rozumiem. Polecenie iptables -D [łańcuch] jest od usuwania wpisów z tego łańcucha. A Ty nawet takich wpisów wcześniej nie dodałeś. IMHO jest zupełnienie nie potrzebne.

I nie zapomnij o wcześniejszych uwagach.

p.sJak cos pokręciłem to mnie poprawcie

Offline

 

#6  2006-08-27 15:10:05

  EsTeL - Użytkownik

EsTeL
Użytkownik
Skąd: LDZ
Zarejestrowany: 2006-08-21

Re: Firewall na IPTABLES - czy jest OK, a moze cos zmienic??

dziekuje za pomoc :)

obecnie wyglada to tak:

Kod:

echo 1 > /proc/sys/net/ipv4/ip_forward
echo 200 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_close_wait 
echo 340 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established

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

# ustawienie polityki dzialania
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# polaczenia nawiazane
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT 
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# przekierowanie dla transparent proxy - squid
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 8081

# dla interfejsu wewnetrznego
iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT

# Otwarty port: 22 na TCP/192.168.1.1 dla uslugi: ssh
iptables -A INPUT -s 0/0 -d 192.168.1.1 -m state --state NEW -p tcp --dport 22 -j ACCEPT

# Otwarty port: 80 na TCP/192.168.1.1 dla uslugi: www
iptables -A INPUT -s 0/0 -d 192.168.1.1 -m state --state NEW -p tcp --dport 80 -j ACCEPT

# Otwarty port: 8081 na TCP/192.168.1.1 dla uslugi: trans-proxy
iptables -A INPUT -s 0/0 -d 192.168.1.1 -m state --state NEW -p tcp --dport 8081 -j ACCEPT

# pc01 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.5 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:0F:EA:3B:1B:17 -j ACCEPT

# pc02 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.6 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:0D:61:ED:41:E4 -j ACCEPT

# pc03 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.7 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:C0:26:A9:3E:A5 -j ACCEPT

# pc04 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.8 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:0B:6A:C6:0C:CB -j ACCEPT

# pc05 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.9 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:14:85:38:7C:6A -j ACCEPT

# pc06 - ma internet
iptables -t nat -A POSTROUTING -s 192.168.1.10 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:0E:2E:37:2C:5E -j ACCEPT

co trzeba dac zamiast tego, aby kompy byly w sieci LAN ale nie mialy okna na swiat?? aby nic nie wyszlo na eth0 z tych kompow oraz z eth0 nic nie weszlo - zadne komunikatory, maile, www, i inne :) natomiast musza dzialac z cala siecia oraz miec dostep do kompa (brama) na ktorym jest ten firewall czyli 192.168.1.1

Kod:

# !! pc06 - NIE ma internetu 
iptables -D FORWARD -m mac --mac-source 44:45:53:54:00:00 -j ACCEPT 

# !! pc07 - NIE ma internetu 
iptables -D FORWARD -m mac --mac-source 00:C0:DF:0A:45:D0 -j ACCEPT

Offline

 

#7  2006-08-27 16:02:50

  ayven - Użytkownik

ayven
Użytkownik
Skąd: z sieci ;-)
Zarejestrowany: 2006-06-21
Serwis

Re: Firewall na IPTABLES - czy jest OK, a moze cos zmienic??

Zasadniczo to nie musisz nic dodawać, gdyż łańcuch FORWARD (który jest przede wsytkim odpowiedzialny za działanie netu) ma domyślnie ustawiną politykę na DROP .Odrzuca on wszystkie pakiety które nie pasują  do zdefiniowanych wczesniej regułek.

Offline

 

#8  2006-08-27 16:14:30

  EsTeL - Użytkownik

EsTeL
Użytkownik
Skąd: LDZ
Zarejestrowany: 2006-08-21

Re: Firewall na IPTABLES - czy jest OK, a moze cos zmienic??

ok dzieki za info :)

btw...
czy ten firewall blokuje pingowanie serwera ??

bo jak wpisuje spod windows ping 192.168.1.1
to niestety dupa... tak jak by serwerek nie hcodzil... a chodzi

Offline

 

#9  2006-08-27 16:23:38

  ayven - Użytkownik

ayven
Użytkownik
Skąd: z sieci ;-)
Zarejestrowany: 2006-06-21
Serwis

Re: Firewall na IPTABLES - czy jest OK, a moze cos zmienic??

no blokuje :D, wkońcu to firewall :D
jeśli chcesz odblokowac pingi to dopisujesz jeszcze:
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT

Offline

 

#10  2006-08-27 16:30:47

  EsTeL - Użytkownik

EsTeL
Użytkownik
Skąd: LDZ
Zarejestrowany: 2006-08-21

Re: Firewall na IPTABLES - czy jest OK, a moze cos zmienic??

nie bardzo sie orientuje w tych zabawkach wiec nie wiem :)

a moze ten firewall jest przyczyna tego (zaluzmy ze sa juz otwarte porty dodatkowe)
http://forum.dug.net.pl/viewtopic.php?t=5072

Offline

 

#11  2006-08-27 16:47:39

  ayven - Użytkownik

ayven
Użytkownik
Skąd: z sieci ;-)
Zarejestrowany: 2006-06-21
Serwis

Re: Firewall na IPTABLES - czy jest OK, a moze cos zmienic??

raczej nie.. na sambie to ja sie nie znam
masz:
http://www.gersona.prokocim.krakow.pl/~maciek/
Wejdź w dział samba i konfiguruj  :D

Offline

 

#12  2006-08-29 00:47:14

  EsTeL - Użytkownik

EsTeL
Użytkownik
Skąd: LDZ
Zarejestrowany: 2006-08-21

Re: Firewall na IPTABLES - czy jest OK, a moze cos zmienic??

przekopalem necik i zlepilem z roznosci taki maly skrypcik :-) dziala tak jak ma dzialac w sensie ze kompy w sieci maja internet :-) a czy zabezpiecza serwer i siec tego juz nie wiem :P

narazie mam tylko maly problem z tym zabezpieczeniem anty-spoofingowym. jak jest wlaczone to net chodzi tak jak by nie chcial... czyli onet.pl laduje sie 10 minut zamiast 2 sekundy.

to co potrzeba rowniez jest logowne wiec mozna sobie posiedziec wieczorami i poczytac :P

wszelie zmiany, sugestie porady, etc mile widziane...


Kod:

#!/bin/sh

# eth0 - WAN - 10.0.0.2 - 10.0.0.0/255.0.0.0 (8)
# eth1 - LAN - 192.168.1.1 - 192.168.1.0/255.255.255.0 (24)

case "$1" in
start)
echo -e "FIREWALL start"
# Ladowanie modulow
modprobe ip_tables
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe iptable_nat
modprobe ip_nat_ftp

# Usuwanie starych regul
iptables -F
iptables -X
iptables --flush
iptables --delete-chain
iptables --flush -t nat
iptables --delete-chain -t nat
iptables -t mangle -F
iptables -t mangle -X
iptables -t nat -F
iptables -t nat -X
iptables -t filter -F
iptables -t filter -X
#iptables -t syn-flood -F
#iptables -t syn-flood -X

# Blokowanie ruchu na routerze
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

# Wlaczamy forwardowanie
echo "1" > /proc/sys/net/ipv4/ip_forward

# Wylaczamy odpowiedzi na pingi
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all

# Ochrona przed atakami typu Smurf
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

# Nie akceptujemy datagramow IP z opcja "source route"
echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route

# Nie przyjmujemy pakietow ICMP rediect, ktore moga zmienic nasza tablice routingu
echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects

# Wlaczamy ochrone przed komunikatami ICMP error
echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses

# Wlaczamy logowanie dziwnych (spoofed, source routed, redirects) pakietow
echo "1" > /proc/sys/net/ipv4/conf/all/log_martians

# Wszystkie karty nie beda przyjmowaly pakietow z sieci innych niz te z tablicy routingu. Ochrona przed spoofingiem
echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter

# Pelny ruch dla lopback
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
#iptables -A FORWARD -o lo -j ACCEPT

# Zabezpieczenie prez atakami typu DoS dla eth0 oraz eth1
iptables -N syn-flood
iptables -A INPUT -p tcp --syn -j syn-flood
iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN
iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j LOG --log-level debug --log-prefix "SYN-FLOOD: "
iptables -A syn-flood -j DROP

iptables -A INPUT -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -p icmp -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

# Zabezpieczenie przed niewidocznemu skanowaniu dla eth0 oraz eth1
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j LOG --log-level debug --log-prefix "NEW: "
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP

# Zabezpieczenie przed atakami typu Jolt2 dla eth0 oraz eth1
iptables -A INPUT -f -j LOG --log-level debug --log-prefix "FRAGMENTS: "
iptables -A INPUT -f -j DROP

# Zabezpieczenie anty-spoofingowe dla eth0
#iptables -A INPUT -i eth0 -s 10.0.0.2 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth0 -s 10.0.0.2 -j DROP # atak Land
#iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DROP # class A
#iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DROP # class B
#iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j DROP # class C
#iptables -A INPUT -i eth0 -s 224.0.0.0/4 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth0 -s 224.0.0.0/4 -j DROP # multicast
#iptables -A INPUT -i eth0 -d 224.0.0.0/4 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth0 -d 224.0.0.0/4 -j DROP # multicast
#iptables -A INPUT -i eth0 -s 240.0.0.0/5 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth0 -s 240.0.0.0/5 -j DROP # reserved
#iptables -A INPUT -i eth0 -s 127.0.0.0/8 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth0 -s 127.0.0.0/8 -j DROP # lo
#iptables -A INPUT -i eth0 -s 0.0.0.0/8 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth0 -s 0.0.0.0/8 -j DROP
#iptables -A INPUT -i eth0 -s 255.0.0.0/8 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth0 -s 255.0.0.0/8 -j DROP
#iptables -A INPUT -i eth1 -p udp -d 192.168.1.255 --dport 137:138 -j DROP

# Zabezpieczenie anty-spoofingowe dla eth1
#iptables -A INPUT -i eth1 -s 192.168.1.1 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth1 -s 192.168.1.1 -j DROP # atak Land
#iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j LOG --log-level debug --log-prefix "SPOOFED: ".
#iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP # class A
#iptables -A INPUT -i eth1 -s 172.16.0.0/12 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth1 -s 172.16.0.0/12 -j DROP # class B
#iptables -A INPUT -i eth1 -s 192.168.0.0/16 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth1 -s 192.168.0.0/16 -j DROP # class C
#iptables -A INPUT -i eth1 -s 224.0.0.0/4 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth1 -s 224.0.0.0/4 -j DROP # multicast
#iptables -A INPUT -i eth1 -d 224.0.0.0/4 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth1 -d 224.0.0.0/4 -j DROP # multicast
#iptables -A INPUT -i eth1 -s 240.0.0.0/5 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth1 -s 240.0.0.0/5 -j DROP # reserved
#iptables -A INPUT -i eth1 -s 127.0.0.0/8 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth1 -s 127.0.0.0/8 -j DROP # lo
#iptables -A INPUT -i eth1 -s 0.0.0.0/8 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth1 -s 0.0.0.0/8 -j DROP
#iptables -A INPUT -i eth1 -s 255.0.0.0/8 -j LOG --log-level debug --log-prefix "SPOOFED: "
#iptables -A INPUT -i eth1 -s 255.0.0.0/8 -j DROP
#iptables -A INPUT -i eth0 -p udp -d 10.0.0.255 --dport 137:138 -j DROP

# Lancuch INPUT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# przyspieszenie polaczen dla niektorych programow np: FTP
iptables -A INPUT -s 192.168.1.0/24 -d 192.168.1.1 -p tcp --dport 113 -m state --state NEW -j REJECT --reject-with icmp-port-unreachable

# otwarty port 22 TCP dla LAN
iptables -A INPUT -s 192.168.1.0/24 -d 192.168.1.1 -p tcp --dport 22 -m state --state NEW -j ACCEPT

# otwarty port 22 TCP dla WAN
iptables -A INPUT -s 0/0 -d 10.0.0.2 -p tcp --dport 22 -m state --state NEW -j ACCEPT

# otwarty port 80 TCP/UDP dla LAN
iptables -A INPUT -s 192.168.1.0/24 -d 192.168.1.1 -p tcp --dport 80 -m state --state NEW -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -d 192.168.1.1 -p udp --dport 80 -m state --state NEW -j ACCEPT

# otwarty port 80 TCP/UDP dla WAN
iptables -A INPUT -s 0/0 -d 10.0.0.2 -p tcp --dport 80 -m state --state NEW -j ACCEPT
iptables -A INPUT -s 0/0 -d 10.0.0.2 -p udp --dport 80 -m state --state NEW -j ACCEPT

iptables -A INPUT -j LOG --log-level debug --log-prefix "INPUT: "
iptables -A INPUT -j DROP

# Lancuch OUTPUT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ! INVALID -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type echo-request -j DROP
iptables -A OUTPUT -j LOG --log-level debug --log-prefix "OUTPUT: "
iptables -A OUTPUT -j DROP

# Lancuch FORWARD
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -t nat -A POSTROUTING -s 192.168.1.5 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:0F:EA:3B:1B:17 -j ACCEPT

iptables -t nat -A POSTROUTING -s 192.168.1.6 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:0D:61:ED:41:E4 -j ACCEPT

iptables -t nat -A POSTROUTING -s 192.168.1.7 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:C0:26:A9:3E:A5 -j ACCEPT

iptables -t nat -A POSTROUTING -s 192.168.1.8 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:0B:6A:C6:0C:CB -j ACCEPT

iptables -t nat -A POSTROUTING -s 192.168.1.9 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:14:85:38:7C:6A -j ACCEPT

iptables -t nat -A POSTROUTING -s 192.168.1.10 -j MASQUERADE
iptables -t filter -A FORWARD -m mac --mac-source 00:0E:2E:37:2C:5E -j ACCEPT

#iptables -t nat -A POSTROUTING -s 192.168.1.11 -j MASQUERADE
#iptables -t filter -A FORWARD -m mac --mac-source 00:C0:DF:0A:45:D0  -j ACCEPT

iptables -A FORWARD -p icmp -m state --state ! INVALID -j ACCEPT
iptables -A FORWARD -j LOG --log-level debug --log-prefix "FORWARD: "
iptables -A FORWARD -j DROP

# Tablica conntrak
echo 200 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_close_wait 
echo 340 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
;;

stop)
echo -e "FIREWALL stop"
iptables -F
iptables -X
iptables --flush
iptables --delete-chain
iptables --flush -t nat
iptables --delete-chain -t nat
iptables -t mangle -F
iptables -t mangle -X
iptables -t nat -F
iptables -t nat -X
iptables -t filter -F
iptables -t filter -X
iptables -P FORWARD ACCEPT
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT

echo "0" > /proc/sys/net/ipv4/ip_forward
echo "0" > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo "0" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo "1" > /proc/sys/net/ipv4/conf/all/accept_source_route
echo "1" > /proc/sys/net/ipv4/conf/all/accept_redirects
echo "0" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
echo "0" > /proc/sys/net/ipv4/conf/all/log_martians
echo "0" > /proc/sys/net/ipv4/conf/all/rp_filter
;;

restart)
echo -e "FIREWALL restarting..."
/etc/init.d/fire stop
/etc/init.d/fire start
;;

status)
echo -e "FIREWALL status"
iptables --line-number -v --list
;;

*)
echo "$0 {start|stop|restart|status}"
exit 1
;;
esac

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)