Skocz do zawartości

Iptables I Problem Z Forwardem Portów


rupert12

Rekomendowane odpowiedzi

Mam wielki problem z forward'em portów moim celem jest forward portów zgodnie z następującym założeniem

internet -------->>>>>eth0--- brama (xxx.xxx.xxx.xxx:6969) -----LAN---eth1--->>>> w2k3 zdalny pulpit(192.168.1.1:3389)

i niezbyt mi to wychodzi

 

Obecnie stosuje cosik takiego:

./iptables -A PREROUTING -t nat -i eth0 -p tcp -d xxx.xxx.xxx.xxx --dport 6969 -j DNAT --to-destination192.168.1.1:3389
./iptables -t nat -A PREROUTING -p tcp -i eth0 -d xxx.xxx.xxx.xxx --dport 6969 -j DNAT --to 192.168.1.1:3389
./iptables -A FORWARD -p tcp -i eth0 -d 192.168.1.1 --dport 3389 -j ACCEPT

Z góry dziękuję za pomoc

:lammer:

Odnośnik do komentarza
Udostępnij na innych stronach

No serio mała spacyjka mi uciekła

./iptables -A PREROUTING -t nat -i eth0 -p tcp -d xxx.xxx.xxx.xxx --dport 6969 -j DNAT --to-destination 192.168.1.1:3389
./iptables -t nat -A PREROUTING -p tcp -i eth0 -d xxx.xxx.xxx.xxx --dport 6969 -j DNAT --to 192.168.1.1:3389
./iptables -A FORWARD -p tcp -i eth0 -d 192.168.1.1 --dport 3389 -j ACCEPT

i to mi sie przechodzi, ale nie działa tak jak powinno

Odnośnik do komentarza
Udostępnij na innych stronach

Ale nie widzę wpisu o (masquerade)

iptables -t nat -A PREROUTING -p tcp -d xxx.xxx.xxx.xxx --dport 6969 -j DNAT --to-destination 192.168.1.1:3389

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

iptables -A FORWARD -d 192.168.1.1 -j ACCEPT

 

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

 

Pozdro

PS. Z tego co pamiętam to forward nie działa bez masquerade ale mogę się mylić

Odnośnik do komentarza
Udostępnij na innych stronach

Ale nie widze wpisu o (masquerade)

iptables -t nat -A PREROUTING -p tcp -d xxx.xxx.xxx.xxx --dport 6969 -j DNAT --to-destination 192.168.1.1:3389

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

iptables -A FORWARD -d 192.168.1.1 -j ACCEPT

 

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

 

Pozdro

PS. Z tego co pamietam to forward nie dziala bez masquerade ale moge sie mylic

 

Poniewaz ja chyba zbyt slaby jestem, prezentuje mój skrypt, jesli moge prosic o pomoc bede bardzo wdzieczny

Blagam o pomoc :unsure:

#!/bin/sh
#echo ----------------------------------------------------------
#echo Uruchamiamy zabezpieczenia sieci
MAC_Rup=YY:YY:YY:YY:YY:YY
WAN=eth0
LAN=eth1
ZDALNY_WIN=3389
SER_US_TER=3389
NASZ_IP=xxx.xxx.xxx.xxx
SERVER_winser=192.168.1.2
dostep_do_windowsa=6969
#uruchamianie przekazywania pakietĂlw ip
echo 1 > /proc/sys/net/ipv4/ip_forward

cd /
cd /sbin
./iptables -F
./iptables -X

./iptables -t nat -X
./iptables -t nat -F

./iptables -P INPUT DROP
./iptables -P FORWARD DROP
./iptables -P OUTPUT ACCEPT

./iptables -A INPUT -i lo -j ACCEPT
./iptables -A FORWARD -o lo -j ACCEPT

./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


./iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
./iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT

./iptables -A INPUT -p all -i $WAN -j DROP

./iptables -A OUTPUT -p tcp --dport 23 -o $WAN -j LOG
./iptables -A INPUT -p TCP -s 0 --syn -i $WAN -j DROP
./iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH SYN -i $WAN -j DROP

./iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH ACK -i $WAN -j DROP

./iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH FIN -i $WAN -j DROP

./iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH FIN,URG,PSH -i $WAN -j DROP

./iptables -A INPUT -m conntrack --ctstate INVALID -p tcp --tcp-flags ! SYN,RST,ACK,FIN,PSH,URG SYN,RST,ACK,FIN,PSH,URG -i $WAN -j DROP

./iptables -A INPUT -p icmp --icmp-type echo-request -i $WAN -j DROP

./iptables -A FORWARD -p tcp --dport 25 -m recent --name SMTP --seconds 60 --update -i $WAN -j DROP
./iptables -A FORWARD -p tcp --dport 25 -m limit --limit 1/second --limit-burst 5 -j LOG --log-level info --log-prefix "smtp "
./iptables -A FORWARD -p tcp --dport 25 -m recent --name SMTP --set -j ACCEPT

./iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
./iptables -A INPUT -p tcp --dport 21 -m recent --name FTP --seconds 120 --update -i $WAN -j DROP
./iptables -A INPUT -p tcp --dport 21 -m limit --limit 5/second --limit-burst 15 -m recent --name FTP --set -i $WAN -j ACCEPT


./iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/m -i $WAN -j ACCEPT

./iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/m -i $WAN -j ACCEPT


./iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH FIN,URG,PSH -j LOG --log-prefix " $LOG Skanowanie Xmas Tre"
./iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH FIN,URG,PSH -j DROP
./iptables -A INPUT -m conntrack --ctstate INVALID -p tcp --tcp-flags ! SYN,RST,ACK,FIN,PSH,URG SYN,RST,ACK,FIN,PSH,URG -j LOG --log-prefix " $LOG Skanowanie Null"
./iptables -A INPUT -m conntrack --ctstate INVALID -p tcp --tcp-flags ! SYN,RST,ACK,FIN,PSH,URG SYN,RST,ACK,FIN,PSH,URG -j DROP
./iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH FIN -j LOG --log-prefix " $LOG Skanowanie FIn"
./iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH FIN -j DROP
./iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH ACK -j LOG --log-prefix " $LOG Skanowanie ACK"
./iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH ACK -j DROP
./iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH SYN -j LOG --log-prefix " $LOG Skanowanie SYN"
./iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH SYN -j DROP

./iptables -A INPUT -p tcp --dport 80 -i $WAN -j DROP

./iptables -A INPUT -p udp -i $WAN -j DROP

./iptables -A INPUT -p tcp -i $WAN -j REJECT --reject-with tcp-reset

./iptables -A INPUT -p udp -i $LAN -j ACCEPT
./iptables -A INPUT -p tcp -i $LAN -j ACCEPT
./iptables -A OUTPUT -p udp -o $LAN -j ACCEPT
./iptables -A OUTPUT -p tcp -o $LAN -j ACCEPT



./iptables -t nat -A PREROUTING -p TCP --dport 20 -i $WAN -j ACCEPT
./iptables -t nat -A PREROUTING -p TCP --dport 21 -i $WAN -j ACCEPT
./iptables -t nat -A PREROUTING -p TCP --dport 111 -i $WAN -j DROP
./iptables -t nat -A PREROUTING -p udp --dport 111 -i $WAN -j DROP

./iptables -A INPUT -p udp --dport 21 -i $WAN -j DROP
./iptables -A OUTPUT -p udp --dport 21 -o $WAN -j ACCEPT
./iptables -A INPUT -p tcp --dport 21 -i $WAN -j DROP
./iptables -A OUTPUT -p tcp --dport 21 -o $WAN -j ACCEPT

./iptables -A INPUT -p udp --dport 22 -i $WAN -j DROP
./iptables -A OUTPUT -p udp --dport 22 -o $WAN -j ACCEPT
./iptables -A INPUT -p tcp --dport 22 -i $WAN -j DROP
./iptables -A OUTPUT -p tcp --dport 22 -o $WAN -j ACCEPT

./iptables -A INPUT -p udp --dport 111 -i $WAN -j DROP
./iptables -A OUTPUT -p udp --dport 111 -o $WAN -j DROP
./iptables -A INPUT -p tcp --dport 111 -i $WAN -j DROP
./iptables -A OUTPUT -p tcp --dport 111 -o $WAN -j DROP
./iptables -A INPUT -p udp --dport microsoft-ds -i $WAN -j DROP
./iptables -A OUTPUT -p udp --dport microsoft-ds -o $WAN -j DROP
./iptables -A INPUT -p udp --dport ssh -i $WAN -j DROP
./iptables -A OUTPUT -p udp --dport ssh -o $WAN -j DROP
./iptables -A INPUT -p tcp --dport netbios-ns -i $WAN -j DROP
./iptables -A OUTPUT -p tcp --dport netbios-ns -o $WAN -j DROP
./iptables -A INPUT -p tcp --dport netbios-dgm -i $WAN -j DROP
./iptables -A OUTPUT -p tcp --dport netbios-dgm -o $WAN -j DROP
./iptables -A INPUT -p udp --dport netbios-ssn -i $WAN -j DROP
./iptables -A OUTPUT -p udp --dport netbios-ssn -o $WAN -j DROP
./iptables -A INPUT -p tcp --dport nntp -i $WAN -j DROP
./iptables -A OUTPUT -p tcp --dport nntp -o $WAN -j DROP
./iptables -A INPUT -p udp --dport nntp -i $WAN -j DROP
./iptables -A OUTPUT -p udp --dport nntp -o $WAN -j DROP
./iptables -A INPUT -p tcp --dport imap -i $WAN -j DROP
./iptables -A OUTPUT -p tcp --dport imap -o $WAN -j DROP
./iptables -A INPUT -p udp --dport imap -i $WAN -j DROP
./iptables -A OUTPUT -p udp --dport imap -o $WAN -j DROP
./iptables -A INPUT -p tcp --dport pop3 -i $WAN -j DROP
./iptables -A INPUT -p udp --dport pop3 -i $WAN -j DROP
./iptables -A INPUT -p tcp --dport smtp -i $WAN -j DROP
./iptables -A INPUT -p udp --dport smtp -i $WAN -j DROP

./iptables -A INPUT -m mac --mac-source ! $MAC_Rup -i $WAN -j DROP
./iptables -A INPUT -m mac --mac-source $MAC_Rup -i $WAN -j ACCEPT

./iptables -A INPUT -p tcp --destination-port 20:23 -i $WAN -j DROP
./iptables -A INPUT -p tcp --destination-port $ZDALNY_WIN -i $WAN -j DROP
./iptables -A INPUT -p tcp --destination-port $dostep_do_windowsa -i $WAN -j ACCEPT
./iptables -A INPUT -p tcp --destination-port $SER_US_TER -i $WAN -j DROP
./iptables -t nat -A PREROUTING -p tcp --destination-port 20:23 -j DROP
./iptables -t nat -A PREROUTING -p tcp --destination-port $ZDALNY_WIN -j DROP
./iptables -t nat -A PREROUTING -p tcp --destination-port $dostep_do_windowsa -j ACCEPT
./iptables -t nat -A PREROUTING -p tcp --destination-port $SER_US_TER -j DROP

./iptables -A FORWARD  -p tcp --destination-port $ZDALNY_WIN -j DROP
./iptables -A FORWARD  -p tcp --destination-port $dostep_do_windowsa -j ACCEPT
./iptables -A FORWARD  -p tcp --destination-port $SER_US_TER -j DROP

echo Stosowanie zasad zaawansowanych
./iptables -I FORWARD -p all -m mac --mac-source $MAC_Rup -o $WAN -j ACCEPT
./iptables -A INPUT -p tcp --destination-port 20:23 -m mac --mac-source $MAC_Rup -i $WAN -j ACCEPT
./iptables  -t nat -A PREROUTING -p tcp --destination-port 20:23 -m mac --mac-source $MAC_Rup -j ACCEPT
./iptables -A FORWARD  -p tcp --destination-port 20:23 -m mac --mac-source $MAC_Rup -j ACCEPT


./iptables -A INPUT -p tcp --dport 0:65535 -i $WAN -j DROP
./iptables -A INPUT -p udp --dport 0:65535 -i $WAN -j DROP
./iptables -A INPUT -p tcp --dport $dostep_do_windowsa -i $WAN -j ACCEPT
./iptables -A FORWARD -p tcp --dport $dostep_do_windowsa -i $WAN -j ACCEPT
./iptables  -t nat -A PREROUTING -p tcp --destination-port $dostep_do_windowsa -i $WAN -j ACCEPT
./iptables -A OUTPUT -p tcp --dport $dostep_do_windowsa -o $WAN -j ACCEPT

./iptables -A INPUT -p tcp --dport $dostep_do_windowsa -m mac --mac-source ! $MAC_Rup -i $WAN -j DROP
./iptables -A FORWARD -p tcp --dport $dostep_do_windowsa -m mac --mac-source ! $MAC_Rup -i $WAN -j DROP
./iptables  -t nat -A PREROUTING -p tcp --destination-port $dostep_do_windowsa -m mac --mac-source ! $MAC_Rup -i $WAN -j DROP

echo			Ustawiem forward portu

./iptables -A INPUT -p tcp --sport $dostep_do_windowsa --dport $ZDALNY_WIN -m state --state NEW -j ACCEPT
./iptables -A OUTPUT -o $WAN -p udp --dport $dostep_do_windowsa -m state --state NEW -j ACCEPT
./iptables -A OUTPUT -o $WAN -p udp --dport $ZDALNY_WIN -m state --state NEW -j ACCEPT
./iptables -A OUTPUT -o $WAN -p tcp --dport $dostep_do_windowsa -m state --state NEW -j ACCEPT
./iptables -A OUTPUT -o $WAN -p tcp --dport $ZDALNY_WIN -m state --state NEW -j ACCEPT

./iptables -A OUTPUT -m state --state ! INVALID -j ACCEPT

./iptables -A INPUT -p tcp --destination-port $ZDALNY_WIN -m mac --mac-source $MAC_Rup -i $WAN -j ACCEPT
./iptables  -t nat -A PREROUTING -p tcp --destination-port $ZDALNY_WIN -m mac --mac-source $MAC_Rup -i $WAN -j ACCEPT
./iptables -A FORWARD  -p tcp --destination-port $ZDALNY_WIN -m mac --mac-source $MAC_Rup -i $WAN -j ACCEPT

./iptables -A INPUT -p icmp --icmp-type echo-request -m mac --mac-source $MAC_Rup -i $WAN -j ACCEPT

./iptables -A INPUT -p tcp --destination-port $dostep_do_windowsa -m mac --mac-source $MAC_Rup -i $WAN -j ACCEPT
./iptables  -t nat -A PREROUTING -p tcp --destination-port $dostep_do_windowsa -m mac --mac-source $MAC_Rup -j ACCEPT
./iptables -A FORWARD  -p tcp --destination-port $dostep_do_windowsa -m mac --mac-source $MAC_Rup -j ACCEPT

#forward portu wchodzÄ…cego na zdalny na windows 2003 3389

./iptables -A PREROUTING -t nat -i $WAN -p tcp -d $NASZ_IP --dport $dostep_do_windowsa -j DNAT --to-destination $SERVER_winser:$ZDALNY_WIN
./iptables -t nat -A PREROUTING -p tcp -i $WAN -d $NASZ_IP --dport $dostep_do_windowsa -j DNAT --to $SERVER_winser:$ZDALNY_WIN
./iptables -A FORWARD -p tcp -i $WAN -d $SERVER_winser --dport $ZDALNY_WIN -j ACCEPT



./iptables -A INPUT -i $LAN -s 192.168.1.1/32 -j ACCEPT
./iptables -A INPUT -i $LAN -s 192.168.1.2/32 -j ACCEPT
./iptables -A INPUT -i $LAN -s 192.168.1.3/32 -j ACCEPT
./iptables -A INPUT -i $LAN -s 192.168.1.4/32 -j ACCEPT
./iptables -A INPUT -i $LAN -s 192.168.1.5/32 -j ACCEPT
./iptables -A INPUT -i $LAN -s 192.168.1.6/32 -j ACCEPT
./iptables -A INPUT -i $LAN -s 192.168.1.7/32 -j ACCEPT
./iptables -A INPUT -i $LAN -s 192.168.1.8/32 -j ACCEPT
./iptables -A INPUT -i $LAN -s 192.168.1.9/32 -j ACCEPT

./iptables -I FORWARD --dst 193.222.135.229 -j DROP

./iptables -I FORWARD --dst 193.222.135.226 -j DROP
./iptables -I FORWARD --dst 193.222.135.227 -j DROP

 

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

(Listingi do 12-15 linijek umieszczaj miedzy znacznikami [code] i [/code], dluzsze niz 15 linii pomiedzy [codebox] i [/codebox] - tak jest czytelniej. Przeczytaj "BB Code Help" - WalDo)

Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 weeks later...

sorki ale nie widziałem jeszcze tak niezrozumiale napisanych reguł firewalla.

chyba sam tego nie pisałeś (tak mniemam) a skoro tak to niech ten kto ci to napisał poprawi ci ten skrypt.

w zasadzie to powinieneś go napisać od nowa.

może ktoś inny Ci napisze dlaczego ten skrypt jest skopany albo poczytaj o tym jak się konfiguruje ipfilter pod fc.

Pozdro

PS. na przykład używanie wykrzyknika w regułach ;) oraz różnica w -A i -I

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ę...