Skocz do zawartości

Dziwna Sprawa Z Firewalem


linux123

Rekomendowane odpowiedzi

Napisalem firewala. Chodzi doskonale po za 1 rzecza. Blokuje mi DNS. po uruchomieniu firewala DNS przestaje dzialac. jak to poprawic ?

 

#!/bin/bash 
INTERFACES="lo eth0 eth1" 
if [ "$1" = "start" ]; then 
echo "Startuje Firewall..." 
iptables -F INPUT 
iptables -P INPUT ACCEPT 
iptables -t nat -F POSTROUTING 
iptables -F -t nat 
iptables -X -t nat 
iptables -F -t filter 
iptables -X -t filter 
iptables -P INPUT DROP 
iptables -A INPUT -i ! eth0 -j ACCEPT 
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 
SERVICES="ftp ssh smtp domain http pop3s pop3 rndc" 
for x in ${SERVICES} 
do 
iptables -A INPUT -p tcp --dport ${x} -m state --state NEW -j ACCEPT 
done 
iptables -A INPUT -p tcp -i ! eth0 -j REJECT --reject-with tcp-reset 
iptables -A INPUT -p udp -i ! eth0 -j REJECT --reject-with icmp-port-unreachable 
if [ -e /proc/sys/net/ipv4/tcp_ecn ]; then echo 0 > /proc/sys/net/ipv4/tcp_ecn fi 
for x in ${INTERFACES} 
 do 
  echo 1 > /proc/sys/net/ipv4/conf/${x}/rp_filter 
 done 
echo 1 > /proc/sys/net/ipv4/ip_forward 
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 
fi 
elif [ "$1" = "stop" ]; then 
echo "Zatrzymanie Firewall..." 
iptables -F INPUT 
iptables -P INPUT ACCEPT 
iptables -t nat -F POSTROUTING 
fi

Odnośnik do komentarza
Udostępnij na innych stronach

iptables -P INPUT ACCEPT
iptables -P INPUT DROP
iptables -A INPUT -i ! eth0 -j ACCEPT 

pierwsza linijka jest niepotrzebna, łańcuch INPUT domyślnie ustawiony jest na ACCEPT, zamiast tego łatwiej dąć jedną:

iptables -A INPUT -i eth0 -j DROP

---------------------------------------------------

a ten firewall to na pojedynczą maszyne, czy dla jakiegoś serwerka?

----po tym widze ze to ma byc serwerek

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

 

ale brak łańcucha FORWARD ,który domyślnie jest na REJECT,

----------------------------------------


#!/bin/bash
INTERFACES="lo eth0 eth1"

if [ "$1" = "start" ]; then

echo "Startuje Firewall..."

iptables -F
iptables -F -t nat
iptables -X
iptables -X -t nat

iptables -P INPUT DROP
iptables -P FORWARD ACCEPT

iptables -A INPUT -i ! eth0 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT


SERVICES="ftp ssh smtp domain http pop3s pop3 rndc"
for x in ${SERVICES}
do
iptables -A INPUT -p tcp --dport ${x} -j ACCEPT
done
iptables -A INPUT -p tcp -i ! eth0 -j REJECT --reject-with tcp-reset
iptables -A INPUT -p udp -i ! eth0 -j REJECT --reject-with icmp-port-unreachable

if [ -e /proc/sys/net/ipv4/tcp_ecn ]; then echo 0 > /proc/sys/net/ipv4/tcp_ecn fi
for x in ${INTERFACES}
do
 echo 1 > /proc/sys/net/ipv4/conf/${x}/rp_filter
done
echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 
fi
elif [ "$1" = "stop" ]; then
echo "Zatrzymanie Firewall..."
iptables -F INPUT
iptables -P INPUT ACCEPT
fi

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...