Temat: Otwarcie portów w iptables

Witam,

Potrzebuję otworzyć porty tcp i udp 6890 na routerze dla wszystkich komputerów w LANie lub dla konkretnego IP.
Okombinowałem się "jak koń pod górę" i nie mogę sobie z tym poradzić.

Wydawało mi się że powinno być (dla wszystkich w LAN)
iptables -I FORWARD -p tcp --dport 6890 -j ACCEPT
iptables -I FORWARD -p udp --dport 6890 -j ACCEPT

Niestety nie działa. Azureus (to on wymaga otwarcia portów) ciągle pokazuje 'problem z NAT'.


Moja prośba!!!! Oświećcie mnie i napiszcie jak powinny wyglądać te regółki (dla wszystkich i konkretnego kompa - IP).


Z góry dziękuję i pozdrawiam
jkdobro

2

Odp: Otwarcie portów w iptables

Ty nie chcesz otworzyć. Dla azureusa ty chcesz przekierować porty. W faq od azureusa to jest smile

   /sbin/iptables -t nat -A PREROUTING -p tcp -i vlan1 --dport 6890 -j DNAT --to <LANIP>
   /sbin/iptables -t nat -A PREROUTING -p udp -i vlan1 --dport 6890 -j DNAT --to <LANIP>
   /sbin/iptables -A FORWARD -p tcp -i vlan1 -d <LANIP> --dport 6890 -j ACCEPT 
   /sbin/iptables -A FORWARD -p udp -i vlan1 -d <LANIP> --dport 6890 -j ACCEPT

Gdzie <LANIP> to ip kompa w lanie. Gdy chcesz przekierować porty musisz podać określone ip; nie da się tego zrobić dla wszystkich. Jak chcesz dla innych to poprostu podajesz inny zakres portów.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: Otwarcie portów w iptables

Wielkie dzięki Cezary za szybką odpowiedź.

Teraz stało się jasne dlaczego tyle się mordowałem. Zamiast tracić czas na próby lepiej było poczytać..... :-)

Jeszcze raz dziękuję
jkdobro

4

Odp: Otwarcie portów w iptables

Nie wiem jak wygląda u Ciebie firewall; jak nie będzie chciało działać to zamiast -A daj -I wtedy regułka pójdzie jako pierwsza w kolejności.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5 (edytowany przez jkdobro 2007-08-04 14:26:53)

Odp: Otwarcie portów w iptables

Właśnie nadal jest problem z NAT.
Zaraz to zmienię.....

[EDIT]

Niestety nie pomogło.....

Test NATu w Azureusie pokazuje brak osiągalności addr:6890

Co to może być?

6

Odp: Otwarcie portów w iptables

SOA#1. (właśnie w tej chwili)

Pokaż może wynik iptables -L oraz iptables -L -t nat

No i czy aby na pewno ustawiłeś w azureusie ten port...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7

Odp: Otwarcie portów w iptables

Po wielu próbach nadal klapa.....

Poczytałem trochę wiki azureusa i znalazłem kilka wskazówek:
- porty powinny być z zakresu 50000 - 60000
- na http://www.azureuswiki.com/index.php/Firewalling jest podany dodatkowo (w stosunku do tego co pisałeś) port przekierowania:

   /sbin/iptables -t nat -A PREROUTING -p tcp -i <EXTINT> --dport <PORT> -j DNAT --to <LANIP>:<PORT> 
   /sbin/iptables -t nat -A PREROUTING -p udp -i <EXTINT> --dport <PORT> -j DNAT --to <LANIP>:<PORT> 
   /sbin/iptables -A FORWARD -p tcp -i <EXTINT> -d <LANIP> --dport <PORT> -j ACCEPT 
   /sbin/iptables -A FORWARD -p udp -i <EXTINT> -d <LANIP> --dport <PORT> -j ACCEPT

Po wprowadzeniu tych zmian mam:
Azureus 2.5.0.4
Port nasłuchu TCP - 54090
Port nasłuchu UDP - 54090
Reguły iptables

iptables -I FORWARD -p tcp -i br0 -d 192.168.2.90 --dport 54090 -j ACCEPT
iptables -t nat -I PREROUTING -p tcp -i br0 --dport 54090 -j DNAT --to 192.168.2.90:54090
iptables -I FORWARD -p udp -i br0 -d 192.168.2.90 --dport 54090 -j ACCEPT
iptables -t nat -I PREROUTING -p udp -i br0 --dport 54090 -j DNAT --to 192.168.2.90:54090

List iptables

Chain FORWARD (policy DROP)
target     prot opt source               destination
ACCEPT     udp  --  0.0.0.0/0            192.168.2.90        udp dpt:54090
ACCEPT     tcp  --  0.0.0.0/0            192.168.2.90        tcp dpt:54090
tcstatistic_in  all  --  0.0.0.0/0            0.0.0.0/0
tcstatistic_out  all  --  0.0.0.0/0            0.0.0.0/0
DROP       all  --  0.0.0.0/0            0.0.0.0/0           state INVALID
TCPMSS     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp flags:0x06/0x02 TCPMSS clamp to PMTU
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
forwarding_rule  all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
DNAT       udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:54090 to:192.168.2.90:54090
DNAT       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:54090 to:192.168.2.90:54090
redir_http  tcp  --  0.0.0.0/0           !192.168.2.1         tcp dpt:80
DNAT       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:8081 state NEW to:192.168.2.1:81
DNAT       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:8080 state NEW to:192.168.2.1:80
DNAT       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:2234 state NEW to:192.168.2.1:22
prerouting_rule  all  --  0.0.0.0/0            0.0.0.0/0

Wszystko wygląda że jest OK, a jednak nie działa.....

8

Odp: Otwarcie portów w iptables

Jakie br0? vlan1! Przecież z interfejsu zewnętrznego masz przekierować!

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9

Odp: Otwarcie portów w iptables

No i poszło...... :-)

Co mnie 'przymuliło' z bym br0...? Tyle razy sprawdzałem poprawność...... Cóż czasami potrzebna jest czyjaś pomoc.....

Bardzo dziękuję i pozdrawiam
jkdobro

10

Odp: Otwarcie portów w iptables

Nie, żebym się nabijał, ale port forwarding jest nawet jako przykład w /etc/firewall.user smile

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

11

Odp: Otwarcie portów w iptables

zgadza sie jest. Tez zauwazylem, choc najpierw zapytalem. Mi bardziej jednak zalezalo na ustawieniach forwardingu w /etc/config/firewall, zeby miec kontrole do nich przez webif2. O ile jednak prosty forwarding dziala, to bardziej zaawansowany nie, jest klapa. Dlatego lepiej naucze sie jednak porzadnie ip tables smile

12

Odp: Otwarcie portów w iptables

E trzeba wiedziec gdzie wbic i dziala. Ja tylko zachodze w glowe czasmu z gownianych trackerow gdzie jest 10 seederow ctorrent pocina jak dzikim a gdy na ich ponad 2k to ledwo 10kb/s wyciska. I tak za kazdym razem, ale i tak lepsze to niz ostatnia wersja transmission ktora ma permamentna fantazje zacinac sie co jakis czas

13 (edytowany przez zxc 2013-05-08 23:33:05)

Odp: Otwarcie portów w iptables

Nieco odgrzeję temat.

W najnowszym OpenWRT (aktualnie Attitude Adjustment) powyższe reguły nie działają - przynajmniej u mnie. Stworzyłem mały skrypt który ułatwia forwardowanie:

#!/bin/sh
#==========================================
#           KONFIGURACJA
#==========================================
#identyfikator interface'u wan
IFACE=eth0.2
# A-dodaj regułę, D-usuń regułę
ACTION=A
#port do przekierowania
PORT=6012
#komputer w sieci lokalnej do której PORT jest przekierowany
REDIRECT_TO=10.0.0.101
#==========================================

iptables -t nat -$ACTION PREROUTING -p tcp -i $IFACE --dport $PORT -j DNAT --to $REDIRECT_TO
iptables -t nat -$ACTION PREROUTING -p udp -i $IFACE --dport $PORT -j DNAT --to $REDIRECT_TO

iptables -$ACTION nat_reflection_fwd -p tcp -i $IFACE -d $REDIRECT_TO --dport $PORT -j ACCEPT
iptables -$ACTION nat_reflection_fwd -p udp -i $IFACE -d $REDIRECT_TO --dport $PORT -j ACCEPT

iptables -$ACTION input_wan -p tcp -i $IFACE -d $REDIRECT_TO --dport $PORT -j ACCEPT
iptables -$ACTION input_wan -p udp -i $IFACE -d $REDIRECT_TO --dport $PORT -j ACCEPT
TP-LINK WDR4300
ZyXEL NSA-310
Banana Pi - Pro

14

Odp: Otwarcie portów w iptables

Raczej -I dla dwóch pierwszych. Nie działa bo?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

15

Odp: Otwarcie portów w iptables

Cezary napisał/a:

Raczej -I dla dwóch pierwszych. Nie działa bo?

He? U mnie działa tak jak podałem -> -A

Cezary napisał/a:

Nie działa bo?

... bo nie mogłem się dobić z zewnątrz na zadany port. A teraz mogę smile

TP-LINK WDR4300
ZyXEL NSA-310
Banana Pi - Pro