ďťż
 
 
   [+] Iptables przekierowanie portu na AP
 
 

Tematy

 
    
 

 

 

 

[+] Iptables przekierowanie portu na AP





gladi - 23-03-2009 11:14
#!/bin/bash

# NAZWY SIECIOWEK
export LAN=eth0
export WAN=eth1

# uruchomienie przekazywania pakietÃłw
echo 1 > /proc/sys/net/ipv4/ip_forward
#kasowanie starych reguł
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
# polityka działania
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
# umošliwienie laczenia sie z zewnetrzym adresem na usluge ssh
iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT

iptables -A INPUT -p TCP --dport ssh -i ${WAN} -j ACCEPT
iptables -A INPUT -p TCP --dport ssh -i ${LAN} -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

# to jest ok:
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT

PRZEKIEROWANIE PORTÓW
iptables -t nat -A PREROUTING -i eth1 -p TCP -d 212.232.11.13 --dport 80  -j DNAT --to 192.168.0.207:80 Mam ruter na Debianie. Regułki firewalla jak powyżej w jednym pliku. Chcę teraz przekierować port, żeby dostać się do Access Pointa z Internetu. Przeszukałem już kilka for i próbowałem różnych konfiguracji przekierowania portów ale żadna nie działa. Może mam jakąś regułkę źle wpisaną? Bardzo proszę o pomoc.



grzesiek - 23-03-2009 18:47
gladi, może dla tego, że chcesz przekierować ruch, NA KTÓRY NIE ZEZWALASZ ;-)



Ister - 23-03-2009 23:46
1. Dropujesz INPUT na wszystkim oprócz ssh. Pakiet zostaje upuszczony zanim dojdzie do PREROUTING.
2. Czy na AP zezwoliłeś na wejście paczek z sieci zewnętrznej? Jeśli jest to ustawienie, to domyślnie jest wyłączone.

Powodzenia.



gladi - 24-03-2009 00:36
Dodałem linijkę: iptables -A INPUT -p tcp --dport 80 -j ACCEPT i dalej:
iptables -t nat -A PREROUTING -i eth1 -p TCP -d 212.232.11.13 --dport 80  -j DNAT --to 192.168.0.207:80 Port już jest otwarty. Niestety przekierowanie dalej nie działa. Patrzyłem za tymi opcjami w AP ale tam nic takiego nie ma. Macie może jakieś sugestie?

[Dodano: 2009-03-24, 01:06]
Znalazłem rozwiązanie!

Należy wpisać sieciówkę od strony LAN we wpisie: iptables -t nat -A PREROUTING -i eth1 -p TCP -d 212.232.11.13 --dport 80  -j DNAT --to 192.168.0.207:80 gdzie eth1 = LAN.

Dziękuję Wam za wskazówki, które pomogły znaleźć błąd :)



zet120 - 02-04-2009 11:42
A można prosić o dokładny kod linijki, która u Ciebie działa.
Od pewnego czasu zmagam się z podobnym problemem i coś bez skutku.

Mój kod Iptables, którym staram się przekierować port aby dostać się z internetu do drugiego komputera to: iptables -A INPUT -p tcp --dport 800 -j ACCEPT
iptables -A PREROUTING -t nat -p tcp -i eth0 -d 192.168.1.1 --dport 800 -j DNAT --to 192.168.1.2:5900 Przekierowanie działa tylko wówczas gdy zmienię w Iptables: iptables -P FORWARD DROP na: iptables -P FORWARD ACCEPT eth0 - to LAN



Ister - 02-04-2009 12:42
Olśnienie - czy nie musisz czasem ustawić też FORWARD na odpowiednim porcie? Tylko - na którym? Bo wcale nie jestem pewien, czy będzie to 800, czy 5900. Spróbuj oba i zobacz co się stanie.



zet120 - 02-04-2009 14:46
Konstrukcję FORWARD zaleca również Wiki: iptables -I FORWARD -p tcp -d 83.69.40.1 --dport 4662 -j ACCEPT
iptables -t nat -I PREROUTING -p tcp -i eth0 -d 0/0 --dport 4662 -j DNAT --to 10.105.2.4 Ale po dostosowaniu do moich warunków: iptables -I FORWARD -p tcp  --dport 800 -j ACCEPT
iptables -t nat -I PREROUTING -p tcp -i eth1 -d 0/0 --dport 800 -j DNAT --to 192.168.1.2:800 niestety nie działa.

Próbowałem z portami 800 i 5900.



grzesiek - 02-04-2009 18:08
zet120, Z tego co przedstawiłeś to... Ale stawiam na to, że problem jest w tym, że ruch musi się odbywać w obu kierunkach.



zet120 - 02-04-2009 19:24
Zatem jak powinna wyglądać struktura pliku /etc/init.d/firewall?
Mój wygląda tak:
#!/bin/sh
# forwardowanie
echo 1 > /proc/sys/net/ipv4/ip_forward

# czyszczenie starych regul
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F

# polityka dzialania
iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT

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

# nawiazane polaczenia
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED

# udostępnianie internetu
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT

# ruch w sieci lokalnej
iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 137  -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 138  -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p tcp  --dport 139  -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p tcp  --dport 445 -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p tcp  --dport 80  -j ACCEPT

# Przekierowanie portu
No właśnie co tutaj być powinno??

# Reszta
iptables -A INPUT -s 0/0 -p tcp --dport 22 -j ACCEPT

iptables -A INPUT -s 0/0 -p tcp --dport 80 -j ACCEPT

iptables -A INPUT -s 0/0 -p tcp --dport 5900 -j ACCEPT
iptables -A INPUT -s 0/0 -p udp --dport 5900 -j ACCEPT

iptables -A INPUT -s 0/0 -p tcp --dport 51415 -j ACCEPT eth1 - Internet
eth0 - LAN



grzesiek - 02-04-2009 20:40
Spróbuj tak:
...
# udostępnianie internetu
iptables -A FORWARD -i eth1 -o eth0 -s 0/0 -d 192.168.1.0/255.255.255.0 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -d 0/0 -s 192.168.1.0/255.255.255.0 -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.1.0/255.255.255.0 -d 0/0 -j  MASQUERADE
...
# Przekierowanie portu
iptables -A INPUT -p tcp -i eth1 --dport 800 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -i eth1 --dport 800 -j DNAT --to 192.168.1.2:800
...



zet120 - 03-04-2009 09:55
Jestem w pracy, testuję Twoją propozycję i DZIAÂŁA.
Pięknie dziękuję za pomoc.

P.S.
Ostatecznie plik /etc/init.d/firewall wygląda tak:
#!/bin/sh
# forwardowanie
echo 1 > /proc/sys/net/ipv4/ip_forward

# czyszczenie
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F

# polityka dzialania
iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT

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

# nawiazane polaczenia
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED

# udostępnianie internetu
iptables -A FORWARD -i eth1 -o eth0 -s 0/0 -d 192.168.1.0/255.255.255.0 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -d 0/0 -s 192.168.1.0/255.255.255.0 -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.1.0/255.255.255.0 -d 0/0 -j  MASQUERADE

# ruch w sieci lokalnej
iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 137  -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 138  -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p tcp  --dport 139  -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p tcp  --dport 445 -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p tcp  --dport 80  -j ACCEPT

# przekierowanie portu
iptables -A INPUT -p tcp -i eth1 --dport 800 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -i eth1 --dport 800 -j DNAT --to 192.168.1.2:5900

# reszta
iptables -A INPUT -s 0/0 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 0/0 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -s 0/0 -p tcp --dport 5900 -j ACCEPT



gladi - 21-04-2009 22:01
zet120 - eth0 to jest LAN czy NET?



fnmirk - 21-04-2009 22:22
gladi, jak należy rozumieć Twoje pytanie?

Co rozumiesz przez słowo ,,net''? Twoje pytanie jest niezbyt precyzyjne.



gladi - 21-04-2009 23:13
LAN - karta sieciowa od strony sieci LAN
NET (WAN) - karta sieciowa od strony internetu (z adresem publicznym)



zet120 - 24-04-2009 11:01
Oczywiście:
Net=Internet=eth1
Lan=sieć wewnętrzna=eth0



gladi - 04-05-2009 00:01
No w sumie niby ładnie działa wcześniej wymieniony kod, ale jest jeden problem. Udało mi się go rozwiązać. Tak przy okazji napiszę może komuś się to przyda. Przeskanowałem porty nmapem, co wyrzuciło mi: PORT    STATE    SERVICE
80/tcp  open    http
95/tcp  filtered supdup
114/tcp  filtered audionews
173/tcp  filtered xyplex-mux
433/tcp  filtered nnsp
483/tcp  filtered ulpnet
487/tcp  filtered saft
554/tcp  open    rtsp
581/tcp  filtered bdp
1009/tcp filtered unknown
1367/tcp filtered dcs
1411/tcp filtered af
1492/tcp filtered stone-design-1
1498/tcp filtered watcom-sql
3269/tcp filtered globalcatLDAPssl
5145/tcp filtered rmonitor_secure
6588/tcp filtered analogx
7634/tcp filtered hddtemp Do tego dodałem linijkę, a raczej dwie: iptables -A INPUT -p tcp -i eth1 --dport 554 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -i eth1 --dport 554 -j DNAT --to 192.168.0.207:554 I wszystko śmiga. Poza jedną rzeczą. Czy z sieci lokalnej można jakoś dostać się do tej kamerki po zewnętrzne IP? Bo normalnie to mi odrzuca.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • minister.pev.pl

  •  

     


     

     
    Copyright 2003. MĂłj serwis