Temat: Regułka firewall "redirect" nie działa choć powinna.

Oczywiście docelowy sprzęt z otwartym portem.

Szukam i szukam i nadal nie wiem dlaczego
NMAP pokazuję filtrowany port.

Nawet usunąłem stare regułki i użyłem HOWTO od Cezarego.
https://eko.one.pl/?p=openwrt-konfigura … nykomputer

Mój ISP twierdzi, że cały ruch jest otwarty.

2

Odp: Regułka firewall "redirect" nie działa choć powinna.

Po drugiej stronie masz uruchomioną usługę na tym porcie? Inaczej zawsze będzie filtered.

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

3 (edytowany przez 5749454D2C205A45204E49432 2023-03-30 18:22:35)

Odp: Regułka firewall "redirect" nie działa choć powinna.

Na routerze OPENWRT oraz docelowym komputerze był identyczny port.
Po Twoim komentarzu zmieniłem port tylko na OPENWRT, ale nadal regułka redirect jest filtrowana.

Router OPENWRT dostaję się do otwartego portu komputera z którego ma puścić regułke "redirect", ale nie przepuszcza wskazanego portu na świat.

4

Odp: Regułka firewall "redirect" nie działa choć powinna.

Dobra, od początku: kto jest operatorem, jaką regułkę wpisałeś i co jest uruchomione na tym porcie na komputerze?

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

Odp: Regułka firewall "redirect" nie działa choć powinna.

Gdy w ramach weryfikacji otworzę przykładowy port 1337 na routerze OpenWrt:
(czyli bez regułki  redirect)

uci add firewall rule
uci set firewall.@rule[-1].name=Testowanie
uci set firewall.@rule[-1].src=wan
uci set firewall.@rule[-1].target=ACCEPT
uci set firewall.@rule[-1].proto=tcp
uci set firewall.@rule[-1].dest_port=1337
uci commit firewall

/etc/init.d/firewall reload

Przykładowy nasłuch na routerze OpenWrt:

netcat -l -p 1337;

To wynik skanowania jest POZYTYWNY:

nmap -Pn -p1337  PUBLICZNY_IP ;

Host is up (0.054s latency).

PORT     STATE SERVICE
1337/tcp open  waste

Natomiast gdy użyję:

config redirect
   option  target          'DNAT'
   option  family          'ipv4'
   option  proto           'tcp'
   option  src             'wan'
   option  src_dport       1337
   option  dest            'lan'
   option  dest_port       1337
   option  dest_ip         192.168.13.37
   option  name            'Allow 1337'

To wynik skanowania jest NEGATYWNY.

6

Odp: Regułka firewall "redirect" nie działa choć powinna.

Usuń
option  dest 'lan'
option  family  'ipv4'

Wykonaj sobie nmapem to samo na routerze

nmap -Pn -p1337 192.168.13.37

i zobacz co nmap powie.

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

7

Odp: Regułka firewall "redirect" nie działa choć powinna.

EDIT: ty skanujesz z internetu czy będąc podłączonym do tego routera odwołując się do zewnętrznego adresu? Powinieneś z internetu z całkiem innej sieci.

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

Odp: Regułka firewall "redirect" nie działa choć powinna.

Cezary napisał/a:

EDIT: ty skanujesz z internetu czy będąc podłączonym do tego routera odwołując się do zewnętrznego adresu? Powinieneś z internetu z całkiem innej sieci.

Cezary,
Oczywiście, że skanuję z zewnątrz.
Jestem całkowicie odizolowany od wspomnianej sieci.
Do testu używam połączenia mobilnego.

Odp: Regułka firewall "redirect" nie działa choć powinna.

Cezary napisał/a:

Usuń
option  dest 'lan'
option  family  'ipv4'

Wykonaj sobie nmapem to samo na routerze

nmap -Pn -p1337 192.168.13.37

i zobacz co nmap powie.

Usunąłem wspomniane linijki i przeładowałem firewall - BEZ ZMIAN.

Czy pakiet nmap oraz zależności zmieści się w 5M??

Użyłem

netcat  192.168.13.37  1337;

Wynik  POZYTYWNY.

10

Odp: Regułka firewall "redirect" nie działa choć powinna.

Zrób tą regułkę aktywną i daj swoje IP zewnętrzne, zobaczymy czy to działa czy nie.

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

Odp: Regułka firewall "redirect" nie działa choć powinna.

Cezary napisał/a:

Zrób tą regułkę aktywną i daj swoje IP zewnętrzne, zobaczymy czy to działa czy nie.

Posiadam niedynamiczne zewnętrzne IP, więc chciałbym uniknąć publikacji na forum publicznym.
Jak wcześniej wspomniałem zwykła regułka otwierająca przykładowy port działa.
Natomiast regułka przekierowująca nie działa.
Przypuszczam, że problemem jest moje OpenWrt tylko nie wiem gdzie.

12

Odp: Regułka firewall "redirect" nie działa choć powinna.

- podaj to IP
- pokaż całe uci show firewall
- napisz która to wersja openwrt

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

Odp: Regułka firewall "redirect" nie działa choć powinna.

Mam dostęp do wspomnianego routera głównie zdalnie.
Fizycznie jest w innej lokalizacji.
Stąd fizyczne zmiany są utrudnione.

Zaktualizowałem firmware openwrt.
Docelowy port jest osiągalny przez router openwrt.
Netcat daję wynik pozytywny.
Odnośnie NMAP:
Nie wiem ile miejsca potrzebuję binarka openwrt.
5MiB to może być za mało.

Regułka z otwartym portem jest aktywna,
ale do testów na docelowym komputerze z debianem wyłączyłem firewall:

sudo systemctl stop firewalld

Użyłem twój  build:

Model
Xiaomi AIoT AC2350
Platform
ath79/generic
Packages
mips_24kc
Version
luci-22.03-SNAPSHOT (r20090-c2331038b2)
Date
2023-04-01 08:21:10 UTC
https://dl.eko.one.pl/luci/openwrt-22.03/ath79/generic/luci-22.03-snapshot-r20090-c2331038b2-ath79-generic-xiaomi_aiot-ac2350-squashfs-sysupgrade.bin

Świeżo po instalacji:

firstboot -y && reboot
https://eko.one.pl/?p=openwrt-konfiguracja#przekierowanieportunainnykomputer
uci add firewall redirect
uci set firewall.@redirect[-1].name=Testowanie
uci set firewall.@redirect[-1].src=wan
uci set firewall.@redirect[-1].proto=tcpudp
uci set firewall.@redirect[-1].src_dport=1337
uci set firewall.@redirect[-1].dest_port=1337
uci set firewall.@redirect[-1].dest_ip=192.168.13.37
uci commit firewall

Skan nmap z innej sieci (dwie lokalizacje mobilne) odpowiada: filtered.

14

Odp: Regułka firewall "redirect" nie działa choć powinna.

Nie podałeś danych o które prosiłem tylko ponownie podajesz te same informacje co poprzednio. Więc jakiej pomocy oczekujesz?
Przekierowanie działa zawsze i wszystkim, nie jesteś pierwszy który takie coś zrobił. Problem więc leży gdzieś indziej, ale musisz współpracować żeby móc go rozwiązać.

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

15 (edytowany przez 5749454D2C205A45204E49432 2023-04-25 16:23:23)

Odp: Regułka firewall "redirect" nie działa choć powinna.

W końcu zasiadłem do tego problemu.

Zbudowałem bardzo prosty LAB w GNS3 i znalazłem przyczynę.

LINK do bardzo prostego LABu:
https://i.ibb.co/VxJg0sR/redirect.png

W powyższym scenariuszu istotny jest ROUTER1.

Gdy konfiguracja LAN  ROUTER1 zawiera:
w ostatnim oktecie pierwszy IP w masce podsieci, przykładowo

IP  192.168.22.1
NETMASK  255.255.255.0

wtedy nie protestuję i DZIAŁA.


Natomiast gdy konfiguracja LAN  ROUTER1 zawiera:
w ostatnim oktecie kolejny IP w masce podsieci, przykładowo

IP  192.168.22.2
NETMASK  255.255.255.0

to od jednej minuty do pięciu minut DZIAŁA i po tym czasie ROUTER1 przechodzi z OPEN na FILTERED.


Gdy wrócę do pierwszego przykładu  ponownie  działa.

16

Odp: Regułka firewall "redirect" nie działa choć powinna.

Pozwoliłem sobie w moim domowym LABIE wykreować prawie identyczną konfigurację jak pokazałeś na rysunku: łącze, router z openwrt i przekierowanie portów.

Router ROUTER1 ma adres:

root@OpenWrt:~# ifconfig br-lan | grep "inet addr"
          inet addr:192.168.22.2  Bcast:192.168.22.255  Mask:255.255.255.0

Router ma zrobione następujące przekierowanie

config redirect
    option src 'wan'
    option proto 'tcpudp'
    option src_dport '1337'
    option dest_port '80'
    option dest_ip '192.168.22.229'

Co nawet da się zobaczyć w działającym firewallu

root@OpenWrt:~# fw4 print | grep 1337
Section @redirect[0] does not specify a destination, assuming 'lan'
        ip saddr 192.168.22.0/24 ip daddr 31.63.133.235 tcp dport 1337 dnat 192.168.22.229:80 comment "!fw4: @redirect[0] (reflection)"
        ip saddr 192.168.22.0/24 ip daddr 31.63.133.235 udp dport 1337 dnat 192.168.22.229:80 comment "!fw4: @redirect[0] (reflection)"
        meta nfproto ipv4 tcp dport 1337 counter dnat 192.168.22.229:80 comment "!fw4: @redirect[0]"
        meta nfproto ipv4 udp dport 1337 counter dnat 192.168.22.229:80 comment "!fw4: @redirect[0]"

Klient1 ma adres 192.168.2.229. Na kliencie1 jest wystawiony serwer http, co można zweryfikować:

root@OpenWrt:~# wget -qO - http://192.168.22.229:80
to zyje!
root@OpenWrt:~# wget -O - http://192.168.22.229:80
Downloading 'http://192.168.22.229:80'
Connecting to 192.168.22.229:80
Writing to stdout
to zyje!
-                    100% |*******************************|     9   0:00:00 ETA
Download completed (9 bytes)
root@OpenWrt:~# 

I teraz: z poziomu innej sieci robię to samo

$ wget -O - http://31.63.133.235:1337/
--2023-04-25 18:03:35--  http://31.63.133.235:1337/
Łączenie się z 31.63.133.235:1337... połączono.
Żądanie HTTP wysłano, oczekiwanie na odpowiedź... 200 OK
Długość: 9 [text/html]
Zapis do: ‘STDOUT’

-                                               0%[                                                                                                 ]       0  --.-KB/s               to zyje!
-                                             100%[================================================================================================>]       9  --.-KB/s    w 0,001s   

2023-04-25 18:03:35 (8,41 KB/s) - zapisano na standardowe wyjście [9/9]

I DZIAŁA
Żeby nie być posądzonym o oszustwo - możesz także ten adres wprowadzić w przeglądarce i się wyświetla dobrze.

Więc przekierowanie działa, router ma uptime

root@OpenWrt:~# uptime
 16:06:12 up 28 min,  load average: 0.14, 0.08, 0.07

28 minut, samo połączenie zaś

root@OpenWrt:~# ifstatus wan | jsonfilter -e @.uptime
921

Czyli już ponad 15 minut. I przekierowanie nadal działa, mimo zmienionego adresu na lanie na 192.168.22.2, czyli drugiego adresu, tak jak pisałeś przed edycją posta.

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

17

Odp: Regułka firewall "redirect" nie działa choć powinna.

Dobra, likwiduję tą konfigurację bo coś innego muszę sprawdzić. Ale:

uptime połączenie:

root@OpenWrt:~# ifstatus wan | jsonfilter -e @.uptime
4687

Sprawdzenie:

$ wget -qO - http://31.63.133.235:1337/
to zyje!


Czyli wszystko normalnie działa i nie wywaliło się po minucie czy pięciu.

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