Skocz do zawartości

Kłopot Z Maskaradą


offca

Rekomendowane odpowiedzi

wiem iż ten temat był poruszany juz tysiąc razy ale ja pomimo itego nie moge sobie z tymporadzic :(

Niby wszsytko łądnie skonfigurowałem stary plik z zapisem maskarady wkleiłem i nagle patrze iz d*pa nie chodzi mi maskarada. Postaram sie podać wszsytkie potrzebne rzeczy byście mieli pełen obraz sprawy :)

1. Firewall jest wyłączony

2. Plik odpowiedzialny za maskarade znajduje sie w katalogu /etc/rc.d a to jego zawartość

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

### Początek konfiguracji maskarady ###

# uruchomienie przekazywania pakietow IP.
echo "1" > /proc/sys/net/ipv4/ip_forward

# wyczyśćmy tablice iptables odpowiedzialne za nat i za filtrowanie pakietów:

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

# Domyślnie odrzucamy i nie zezwalany na forwardowanie pakietów

iptables -t filter -P FORWARD DROP

# Zezwalamy by serwer przepuszczał pakiety które pochodzą z naszej sieci
# lokalnej lub są dla niej przeznaczone.

iptables -t filter -A FORWARD -s 0/0 -d 192.168.0.0/255.255.255.0 -j ACCEPT
iptables -t filter -A FORWARD -s 192.168.0.0/255.255.255.0 -d 0/0 -j ACCEPT

# Teraz nakazujemy by wszystkie pakiety pochodzące z lanu były maskowane

iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -d 0/0 -j MASQUERADE


# blokowanie portów, które nie powinny byc dostepne

#iptables -t nat -A PREROUTING -p TCP --destination-port 137 --in-interface ppp0 -j DROP

#telnet:
iptables -t nat -A PREROUTING -p TCP --destination-port 23 --in-interface ppp0 -j DROP

#x-server:
iptables -t nat -A PREROUTING -p TCP --destination-port 6000 --in-interface ppp0 -j DROP
iptables -t nat -A PREROUTING -p UDP --destination-port 6000 --in-interface ppp0 -j DROP

#ssh
iptables -t nat -A PREROUTING -p TCP --destination-port 22 --in-interface ppp0 -j DROP

# przekierowanie portów eDONKEY-eMULE na komputer 1
iptables -t nat -A PREROUTING -p TCP --destination-port 4662 --in-interface ppp0 -j DNAT --to-destination 192.168.0.5:4662
iptables -t nat -A PREROUTING -p UDP --destination-port 4672 --in-interface ppp0 -j DNAT --to-destination 192.168.0.5:4672

# przekierowanie portów eDONKEY-eMULE na komputer 2
iptables -t nat -A PREROUTING -p TCP --destination-port 4682 --in-interface ppp0 -j DNAT --to-destination 192.168.0.4:4662
iptables -t nat -A PREROUTING -p UDP --destination-port 4692 --in-interface ppp0 -j DNAT --to-destination 192.168.0.4:4672

# przekierowanie portów KAZAA na komputer 2
iptables -t nat -A PREROUTING -p TCP --destination-port 6667 --in-interface ppp0 -j DNAT --to-destination 192.168.0.4:6667
iptables -t nat -A PREROUTING -p UDP --destination-port 6667 --in-interface ppp0 -j DNAT --to-destination 192.168.0.4:6667

### koniec konfiguracji maskarady ###

touch /var/lock/subsys/local

3. Na tych dwuch kompach adresy IP są statycznie zaadresowane

4. Może to sie jeszce przyda

[root@localhost root]# /sbin/route

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

war-ru7.neo.tpn * 255.255.255.255 UH 0 0 0 ppp0

192.168.0.0 * 255.255.255.0 U 0 0 0 eth1

192.168.0.0 * 255.255.255.0 U 0 0 0 eth1

169.254.0.0 * 255.255.0.0 U 0 0 0 eth1

127.0.0.0 * 255.0.0.0 U 0 0 0 lo

default war-ru7.neo.tpn 0.0.0.0 UG 0 0 0 ppp0

 

(_niewiem_ → nie wiem) ORT co może być wma jeszcze przydatne. Błagam pomóżcie ja jednak chyab nie jestem stworzony do (_linuxa_ → Linuksa) ORT :unsure:

Odnośnik do komentarza
Udostępnij na innych stronach

najlepiej skorzystaj z tego

 

 

# Zalaczenie forwardingu w kernelu
ECHO "1" > /proc/sys/net/ipv4/ip_forward
IPTABLES = /sbin/iptables
# Maska sieci wewnetrznej
INTNET="192.168.0.0/24"  
# Zewnetrzny interfejs
EXTDEV="ppp0"
# Wewnetrzny interfejs
INTDEV="eth0"
# Czyscimy lancuchy
$IPTABLES -F
$IPTABLES -X
$IPTABLES -Z #kasujemy liczniki

# Polityki domyslne dla pakietow
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
# gdy nasz numer dynamiczny lub wdzwaniasz sie w siec
# (modem, NEO+) to korzystaj z maskarady
$IPTABLES -t nat -A POSTROUTING -s $INTNET -o $EXTDEV -j MASQUERADE

# Pelny ruch na interfejsie lo
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT
# Przepuszcza pakiety z flaga ESTABLISHED i RELATED
$IPTABLES -A INPUT -m state --state ESTABLISHED -j ACCEPT
$IPTABLES -A INPUT -m state --state RELATED -j ACCEPT
# Akceptacja wszystkiego co jest prawidlowe :-)
$IPTABLES -A OUTPUT -m state --state ! INVALID -j ACCEPT

# Pozwalamy na nawiazywanie i utrzymanie polaczenia z sieci lokalnej
$IPTABLES -A FORWARD -i $INTDEV -p tcp -s $INTNET -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INTDEV -p udp -s $INTNET -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

# Przepuszczamy pakiety do sieci lokalnej
$IPTABLES -A FORWARD -o $INTDEV -p tcp -d $INTNET -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -o $INTDEV -p udp -d $INTNET -m state --state ESTABLISHED,RELATED -j ACCEPT
# Przepuszczamy caly poprawny ruch ICMP
$IPTABLES -A FORWARD -p icmp -m state --state ! INVALID -j ACCEPT
# Reszte pakietow logujemy i usuwamy (lancuc INPUT)
$IPTABLES -A INPUT -j LOG --log-prefix "IPT INPUT: "
$IPTABLES -A INPUT -j DROP
# Logujemy i kasujemy reszte (lancuch FORWARD)
$IPTABLES -A FORWARD -j LOG --log-prefix "IPT FORWARD: "
$IPTABLES -A FORWARD -j DROP

# "Reszte" logujemy i wyrzucamy (lancuch OUTPUT)
$IPTABLES -A OUTPUT -j LOG --log-prefix "IPT OUTPUT: "
$IPTABLES -A OUTPUT -j DROP

 

a do tego

# przekierowanie portów eDONKEY-eMULE na komputer 1
iptables -t nat -A PREROUTING -p TCP --destination-port 4662 --in-interface ppp0 -j DNAT --to-destination 192.168.0.5:4662
iptables -t nat -A PREROUTING -p UDP --destination-port 4672 --in-interface ppp0 -j DNAT --to-destination 192.168.0.5:4672

# przekierowanie portów eDONKEY-eMULE na komputer 2
iptables -t nat -A PREROUTING -p TCP --destination-port 4682 --in-interface ppp0 -j DNAT --to-destination 192.168.0.4:4662
iptables -t nat -A PREROUTING -p UDP --destination-port 4692 --in-interface ppp0 -j DNAT --to-destination 192.168.0.4:4672

# przekierowanie portów KAZAA na komputer 2
iptables -t nat -A PREROUTING -p TCP --destination-port 6667 --in-interface ppp0 -j DNAT --to-destination 192.168.0.4:6667
iptables -t nat -A PREROUTING -p UDP --destination-port 6667 --in-interface ppp0 -j DNAT --to-destination 192.168.0.4:6667

 

przekierowania robi się tak

 

 

	#--=={ PRZEKIEROWANIA PORTOW }==--


#	$SRCPRT  -port na komputerze z ktorego przekierowujemy.
#	$SRCIP  -IP komputera z ktorego przekierowujemy.
#	$DSTIP  -IP komputera do ktorego przekierowujemy
#	$DSTPRT  -port na ktory bedziemy przekierowywac.
#	$ALLOWFROM	-ktore komputery maja prawo wysylac do nas...
#	
#
$IPTABLES -I FORWARD -p tcp -d $DSTIP --dport $DSTPRT -j ACCEPT
$IPTABLES -I FORWARD -p udp -d $DSTIP --dport $DSTPRT -j ACCEPT
$IPTABLES -t nat -A PREROUTING -p tcp -i $EXTDEV -s $ALLOWFROM -d $SRCIP --dport $SRCPRT -j DNAT --to $DSTIP:$DSTPRT
$IPTABLES -t nat -A PREROUTING -p udp -i $EXTDEV -s $ALLOWFROM -d $SRCIP --dport $SRCPRT -j DNAT --to $DSTIP:$DSTPRT

 

czyli wszystko powinno wygladać w ten sposób

 

# Zalaczenie forwardingu w kernelu
ECHO "1" > /proc/sys/net/ipv4/ip_forward
IPTABLES = /sbin/iptables
# Maska sieci wewnetrznej
INTNET="192.168.0.0/24"  
# Zewnetrzny interfejs
EXTDEV="ppp0"
# Wewnetrzny interfejs
INTDEV="eth0"
# Czyscimy lancuchy
$IPTABLES -F
$IPTABLES -X
$IPTABLES -Z #kasujemy liczniki

# Polityki domyslne dla pakietow
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
# gdy nasz numer dynamiczny lub wdzwaniasz sie w siec
# (modem, NEO+) to korzystaj z maskarady
$IPTABLES -t nat -A POSTROUTING -s $INTNET -o $EXTDEV -j MASQUERADE

# Pelny ruch na interfejsie lo
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT

#--=={ PRZEKIEROWANIA PORTOW }==--


#	$SRCPRT  -port na komputerze z ktorego przekierowujemy.
#	$SRCIP  -IP komputera z ktorego przekierowujemy.
#	$DSTIP  -IP komputera do ktorego przekierowujemy
#	$DSTPRT  -port na ktory bedziemy przekierowywac.
#	$ALLOWFROM	-ktore komputery maja prawo wysylac do nas...
#	
#
$IPTABLES -I FORWARD -p tcp -d $DSTIP --dport $DSTPRT -j ACCEPT
$IPTABLES -I FORWARD -p udp -d $DSTIP --dport $DSTPRT -j ACCEPT
$IPTABLES -t nat -A PREROUTING -p tcp -i $EXTDEV -s $ALLOWFROM -d $SRCIP --dport $SRCPRT -j DNAT --to $DSTIP:$DSTPRT
$IPTABLES -t nat -A PREROUTING -p udp -i $EXTDEV -s $ALLOWFROM -d $SRCIP --dport $SRCPRT -j DNAT --to $DSTIP:$DSTPRT


# Przepuszcza pakiety z flaga ESTABLISHED i RELATED
$IPTABLES -A INPUT -m state --state ESTABLISHED -j ACCEPT
$IPTABLES -A INPUT -m state --state RELATED -j ACCEPT
# Akceptacja wszystkiego co jest prawidlowe :-)
$IPTABLES -A OUTPUT -m state --state ! INVALID -j ACCEPT

# Pozwalamy na nawiazywanie i utrzymanie polaczenia z sieci lokalnej
$IPTABLES -A FORWARD -i $INTDEV -p tcp -s $INTNET -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INTDEV -p udp -s $INTNET -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

# Przepuszczamy pakiety do sieci lokalnej
$IPTABLES -A FORWARD -o $INTDEV -p tcp -d $INTNET -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -o $INTDEV -p udp -d $INTNET -m state --state ESTABLISHED,RELATED -j ACCEPT
# Przepuszczamy caly poprawny ruch ICMP
$IPTABLES -A FORWARD -p icmp -m state --state ! INVALID -j ACCEPT
# Reszte pakietow logujemy i usuwamy (lancuc INPUT)
$IPTABLES -A INPUT -j LOG --log-prefix "IPT INPUT: "
$IPTABLES -A INPUT -j DROP
# Logujemy i kasujemy reszte (lancuch FORWARD)
$IPTABLES -A FORWARD -j LOG --log-prefix "IPT FORWARD: "
$IPTABLES -A FORWARD -j DROP

# "Reszte" logujemy i wyrzucamy (lancuch OUTPUT)
$IPTABLES -A OUTPUT -j LOG --log-prefix "IPT OUTPUT: "
$IPTABLES -A OUTPUT -j DROP

 

 

Pamiętaj że kolejność reguł ma znaczenie !!!!!

Powyższe powinno działać

Odnośnik do komentarza
Udostępnij na innych stronach

skopiuj sobie ten sktypt i umieśc go

/etc/rc.d/rc.local

zeby uruchamiał sie przy starcie systemu

 

a do tego poniżej nie wiem co tłumaczyc :)

 

# Maska sieci wewnetrznej
INTNET="192.168.0.0/24"  
# Zewnetrzny interfejs
EXTDEV="ppp0" <<<<<<<<<<<<<< tu sobie zmien na interfej podłaczony do netu chyba eth0 u Ciebie 
# Wewnetrzny interfejs
INTDEV="eth0" <<<<<<<<<<  a tu chyba eth1 

 

powyzsze sprawdzasz za pomocą polecenia

 

ifconfig

 

a cały skrypt mozna usprawnic za pomocą takiego sryptu

case "$1" in
     start)  

# uruchom usługę <<<< [COLOR=red]tu wrzucasz sobie skrypt ten co wyzej[/COLOR]
;;
stop)

#zatrzymaj usługę
$ECHO -n "Wylaczamy firewall: "
    
    # Czyscimy lancuchy
    $IPTABLES -F
    $IPTABLES -t nat -F
    $IPTABLES -X
    # Polityki domyslne
    $IPTABLES -P INPUT ACCEPT
    $IPTABLES -P OUTPUT ACCEPT
    $IPTABLES -P FORWARD ACCEPT

    # Wylaczanie forwardingu w kernelu.
    # -to wylaczy internet w LAN 
    $ECHO 0 > /proc/sys/net/ipv4/ip_forward
    $ECHO "zrobione!"
;;
restart)
#zrestartuj
    $0 stop
    $0 start

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

 

wtedy mozesz umiewscic skrypt w osobnym pliku np.

rc.firewall

 

i wrzucic do /etc/rc.d/

a uruchamiac poprzez

 

/etc/rc.d/rc.firewall {start|stop|restat}

 

Pozdrawiam

Odnośnik do komentarza
Udostępnij na innych stronach

  • 1 year later...

Przyłączę się do tej dyskusji gdyż też identyczny problem

Rozwiązanie pewnie typowe i interesujące wielu:

1. fc5 i neostrada -ppp0 - robi za bramkę innym kompom w sieci lokalnej

2. podłączony komp winda XP - eth0 - przez huba

zastosowałem się do uwag ati i skopiowałem jego skrypt

Mój plik /etc/rc.d/rc.local wygląda tak:

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

# Zalaczenie forwardingu w kernelu
ECHO "1" > /proc/sys/net/ipv4/ip_forward
IPTABLES = /sbin/iptables

# Maska sieci wewnetrznej
INTNET="192.168.0.0/24"  

# Zewnetrzny interfejs
EXTDEV="ppp0"

# Wewnetrzny interfejs
INTDEV="eth0"

# Czyscimy lancuchy
$IPTABLES -F
$IPTABLES -X
$IPTABLES -Z #kasujemy liczniki

# Polityki domyslne dla pakietow
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP

# gdy nasz numer dynamiczny lub wdzwaniasz sie w siec
# (modem, NEO+) to korzystaj z maskarady
$IPTABLES -t nat -A POSTROUTING -s $INTNET -o $EXTDEV -j MASQUERADE

# Pelny ruch na interfejsie lo
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT

# Przepuszcza pakiety z flaga ESTABLISHED i RELATED
$IPTABLES -A INPUT -m state --state ESTABLISHED -j ACCEPT
$IPTABLES -A INPUT -m state --state RELATED -j ACCEPT

# Akceptacja wszystkiego co jest prawidlowe :-)
$IPTABLES -A OUTPUT -m state --state ! INVALID -j ACCEPT

# Pozwalamy na nawiazywanie i utrzymanie polaczenia z sieci lokalnej
$IPTABLES -A FORWARD -i $INTDEV -p tcp -s $INTNET -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INTDEV -p udp -s $INTNET -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

# Przepuszczamy pakiety do sieci lokalnej
$IPTABLES -A FORWARD -o $INTDEV -p tcp -d $INTNET -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -o $INTDEV -p udp -d $INTNET -m state --state ESTABLISHED,RELATED -j ACCEPT

# Przepuszczamy caly poprawny ruch ICMP
$IPTABLES -A FORWARD -p icmp -m state --state ! INVALID -j ACCEPT

# Reszte pakietow logujemy i usuwamy (lancuc INPUT)
$IPTABLES -A INPUT -j LOG --log-prefix "IPT INPUT: "
$IPTABLES -A INPUT -j DROP

# Logujemy i kasujemy reszte (lancuch FORWARD)
$IPTABLES -A FORWARD -j LOG --log-prefix "IPT FORWARD: "
$IPTABLES -A FORWARD -j DROP

# "Reszte" logujemy i wyrzucamy (lancuch OUTPUT)
$IPTABLES -A OUTPUT -j LOG --log-prefix "IPT OUTPUT: "
$IPTABLES -A OUTPUT -j DROP

Internet mi chdzi bez zerzutu (fc5),

a z win XP - można tylko sobie pingować w obie strony, a z sieci lokalnej nici

Będę wdzięczny za każdą sugestię

pzdr

che

Odnośnik do komentarza
Udostępnij na innych stronach

Internet mi chdzi bez zerzutu (fc5),

a z win XP - można tylko sobie pingować w obie strony, a z sieci lokalnej nici

 

Doradzilbym Ci sprobowanie firestarter'a:

yum install firestarter

Jest to nakladka na iptables i mysle ze na poczatek powinna Ci pomoc. Jest tam kreator do udostepniania polaczenia internetowego. Jesli uda Ci poprawnie wszystko uruchomic mozesz sprobowac dojsc co zlego zrobiles poprzednio porownujac regulki zapory.

Druga rzecz, ktora moglbys ewentualnei sprawdzic to czy siec dziala poprawnie bez zapory.

Odnośnik do komentarza
Udostępnij na innych stronach

Doradzilbym Ci sprobowanie firestarter'a:

yum install firestarter

Jest to nakladka na iptables i mysle ze na poczatek powinna Ci pomoc. Jest tam kreator do udostepniania polaczenia internetowego. Jesli uda Ci poprawnie wszystko uruchomic mozesz sprobowac dojsc co zlego zrobiles poprzednio porownujac regulki zapory.

Druga rzecz, ktora moglbys ewentualnei sprawdzic to czy siec dziala poprawnie bez zapory.

 

 

Założyłem firestartera. Dzięki, działa. Będę dalej próbował z iptables, bo z tym klikaniem ciągle czuję się jak w windzie.

Odnośnik do komentarza
Udostępnij na innych stronach

Założyłem firestartera. Dzięki, działa. Będę dalej próbował z iptables, bo z tym klikaniem ciągle czuję się jak w windzie.

Dokldanie tak. Firestarter pozwala na tyle, aby skonfigurowac iptables pod prosta siec. Chcac jednak w jakis bardziej zaawansowany sposob nia zarzadzac reczne tworzenie regulek jest duzo lepsze. Zwlaszcza jesli chcialbys postawic juz typowy serwer sieciowy.

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