Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam
Mam następujący problem:
serwer_na_debianie -> serwer_ISA -> serwer_www
na serwerze ISA opublikowałem już port 80 i mogę się dostać na stronę www, ale teraz chce przed nimi postawić kolejny serwer.
Niestety mam problem z przekierowaniem ruchu.
znalazłem kilka sposobów, ale żaden u mnie nie zadziałał, próbowałem np tak:
iptables -A PREROUTING -t nat -p tcp -i $WAN --dport 80 -j DNAT --to-destination - 192.168.1.2:80
Proszę o pomoc.
Pozdrawiam
Ostatnio edytowany przez Paad (2009-09-02 11:25:43)
Offline
hmm kombinuję dalej samemu, ale nie wychodzi mi nic, czy ma ktoś jakiś pomysł?
Offline
zainstalowałem sobie lynx'a na reverseProxy i mogę stronę umieszczoną na serwerze www otworzyć, wnioskuję z tego, że jest dobrze.
Podobnie gdy podepnę się do switcha przed ISA swojego laptopa - strona też się wyświetla;)
Ostatnio edytowany przez Paad (2009-10-05 11:45:39)
Offline
Paad napisał(-a):
iptables -A PREROUTING -t nat -p tcp -i $WAN --dport 80 -j DNAT --to-destination - 192.168.1.2:80
Dokładnie tak to masz? Co robi ten "-" po --to-destination ?
Offline
literówka;)
ale obecnie mam takie dwa wpisy
iptables -t nat -A PREROUTING -i $WAN adres_zew -j DNAT --to-destination=192.168.1.2
iptables -t nat -A POSTROUTING -o $WAN -s 192.168.1.2 -j SNAT --to-source adres_zew
Offline
Paad napisał(-a):
literówka;)
ale obecnie mam takie dwa wpisy
iptables -t nat -A PREROUTING -i $WAN adres_zew -j DNAT --to-destination=192.168.1.2
"=" też tam nie powinno być jak wynika z man-a (btw czytaj mana!), nie dostajesz żadnych błędów po odpaleniu?
Offline
zrób taki eksperyment przed ISA z jakimś ip 192.168.1.0/24 podepnij klienta i ten klient musi móc wejść na www na serwer 192.168.10.2 jak tak pójdzie do teraz konfiguracja iptables jak nie to męcz ISA aż pójdzie.
Ostatnio edytowany przez djjanek (2009-10-05 13:11:26)
Offline
kamikaze napisał(-a):
Paad napisał(-a):
literówka;)
ale obecnie mam takie dwa wpisy
iptables -t nat -A PREROUTING -i $WAN adres_zew -j DNAT --to-destination=192.168.1.2"=" też tam nie powinno być jak wynika z man-a (btw czytaj mana!), nie dostajesz żadnych błędów po odpaleniu?
nie dostawałem żadnego błędu - poprawiłem, ale nic się nie zmieniło, strona dalej się nie otwiera
djjanek napisał(-a):
zrób taki eksperyment przed ISA z jakimś ip 192.168.1.0/24 podepnij klienta i ten klient musi móc wejść na www na serwer 192.168.10.2 jak tak pójdzie do teraz konfiguracja iptables jak nie to męcz ISA aż pójdzie.
tzn przed ISA do switcha wpiąłem się moim laptopem i strona mi sie otwiera bez problemów.
Ostatnio edytowany przez Paad (2009-10-05 13:13:17)
Offline
IP forwarding włączony?
Offline
kamikaze napisał(-a):
IP forwarding włączony?
na chwile obecną tak wygląda całość
#!/bin/bash
WAN='eth0'
LAN='eth2'
iptables -F
iptables -X
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD ACCEPT
iptables -t nat -A PREROUTING -i $WAN -d adres_zew -j DNAT --to-destination 192.168.1.2
iptables -t nat -A POSTROUTING -i $WAN -s 192.168.1.2 -j SNAT --to-source adres_zew
jednak później na FORWARD też będę chciał dać DROP i tylko wybrane pakiety forwardować
p.s: /proc/sys/net/ipv4/ip_forward jest włączone;)
Ostatnio edytowany przez Paad (2009-10-05 13:26:44)
Offline
No a odpowiedź na moje pytanie? Czy jeśli nie ma IP forwarding w skrypcie to mam zgadywać, że nie włączony? Jeśli nie to włącz, inaczej nie będzie działać.
Offline
kamikaze napisał(-a):
No a odpowiedź na moje pytanie? Czy jeśli nie ma IP forwarding w skrypcie to mam zgadywać, że nie włączony? Jeśli nie to włącz, inaczej nie będzie działać.
forwarding włączyłem ręcznie, ale zaraz dopiszę do skryptu również tym czasem, pół sukcesu mam.
napisałem to wszystko od nowa raz jeszcze (jak w poście wyżej i zaczęło śmigać), ale w momencie gdy zmienie FORWARD na
iptables -P FORWARD DROP
strona znów nie działa, wychodzi więc, że coś jeszcze muszę przeforwardować, ale nie mam za bardzo pojęcia co.
Offline
Paad napisał(-a):
wychodzi więc, że coś jeszcze muszę przeforwardować, ale nie mam za bardzo pojęcia co.
Jak to coś jeszcze? Jak masz iptables -P FORWARD DROP to nic nie forwardujesz przecież. Nic jeszcze tylko to co masz formwardować, czyli ten ruch na z portu 80 tej maszyny na port 80 innej maszyny. Przecież nie masz innych regułek włączających ten forward. Działało jak FORWARD był na ACCEPT bo forwardowało się wszystko teraz nie forwarduje się nic jak polityka dla FORWARD jest DROP i nie ma innych reguł dla FORWARD.
Offline
dopisałem sobie jeszcze takie dwie linijki
## adres zewnetrzny = 192.168.100.36
iptables -A FORWARD -i $WAN -p tcp --dport 80 -j ACCEPT
iptables -A PREROUTING -t nat -i $WAN -p tcp --source 192.168.100.36 --dport 80 -j DNAT --to 192.168.1.2
efekt jest taki, że strona dalej się nie otwiera.
Zainstalowałem jeszcze iptraf efekt przy łączeniu jest taki:
#...100.4 - to adres mojego kompa
192.168.100.4:1181 = 3 144 S--- eth0
192.168.100.36:80 = 0 0 ---- eth0
192.168.100.4:1181 = 3 144 S--- eth2
192.168.1.2:80 = 3 144 S-A- eth2
Offline
Może warto otworzyć jeszcze forward w drugą stronę:
iptables -A FORWARD -i eth2 -p tcp --sport 80 -j ACCEPT
Offline
Działa, dziękuję bardzo za pomoc:)
Pozdrawiam.
p.s: z ciekawości zakomentowałem linijkę
iptables -A PREROUTING -t nat -i $WAN -p tcp --source 192.168.100.36 --dport 80 -j DNAT --to 192.168.1.2
i bez niej również działa.
Offline