Temat: Iptables i kilka wyjątków

Witam,

w mojej sieci stoi sobie transparentny squid, do którego ruch trafia dzięki małemu przekierowaniu portów:


iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/24 -p tcp --dport 80 -j REDIRECT --to-port 8080


Chciałbym jednak aby hosty: 192.168.0.2, 192.168.0.20, 192.168.0.100 nie korzystały z proxy.
Jak stworzyć takie trzy wyjątki?

Chciałbym też aby ruch, który idzie do wybranej sieci, załóżmy 192.168.1.0/24 i 192.168.10.0/24 nie przechodził przez Squida.

Podejrzewam, że da się do powyższej linijki iptables dodać ! - d 192.168.1.0/24
Ale tu też musiałbym zastosować dwa wyjątki.
Jarosław K.

Jarosław K. Student,
Politechnika
Poznańska

Temat: Iptables i kilka wyjątków

Zrobił bym tak:
wyjatek=("jeden_IP_adres" "drugi_IP_adres")

for wyj in ${wyjatek[@]}
do
/sbin/iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/24 -p tcp --dport 80 -d! $wyj -j
REDIRECT --to-port 8080
done

Nie testowałem składni.
Polecam: http://www.digipedia.pl/usenet/thread/3/778644/

Temat: Iptables i kilka wyjątków

Ale czy to rozwiąże problem?

iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/24 -p tcp --dport 80 -d! 192.168.1.0/24 -j
REDIRECT --to-port 8080
iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/24 -p tcp --dport 80 -d! 192.168.2.0/24 -j
REDIRECT --to-port 8080

Pierwszy przekieruje ruch do sieci 192.168.2.0/24, a nie chcemy aby tak było.
Nie chodziło mi o napisanie pętli for, nie tu tkwił problem.

konto usunięte

Temat: Iptables i kilka wyjątków

Załóż nowy chain, wrzuć w kolejności przed swoją regułą na squida, w chainie dopisuj ip'ki i reguły dla hostów wyjątków, kończysz LOG/DROP/REJECT
http://www.thegeekstuff.com/2011/01/iptables-fundament...

Obrazek


Lub tworzysz 2 chainy, każdy wykonuje inne markowanie, po powrocie do tabeli podejmujesz decyzję na podstawie marku:
http://andys.org.uk/bits/2010/01/27/iptables-fun-with-...Marcin Bojko edytował(a) ten post dnia 21.12.11 o godzinie 10:22

Temat: Iptables i kilka wyjątków

Zrobiłem takie coś:


iptables -t nat -N EXCEPTIONS
iptables -t nat -A EXCEPTIONS -i eth0 -s 192.168.0.0/24 -p tcp --dport 80 -d 192.168.1.0/24 -j RETURN
iptables -t nat -A EXCEPTIONS -i eth0 -s 192.168.0.0/24 -p tcp --dport 80 -d 192.168.2.0/24 -j RETURN
iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/24 -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables -t nat -A PREROUTING -j EXCEPTIONS


Nadal jednak w pliku /var/log/squid/access.log widzę wpisy z sieci 192.168.0.0/24 do sieci 192.168.1.0.

Co zrobiłem nie tak?

Temat: Iptables i kilka wyjątków

Rozwiązałem problem następująco


iptables -t nat -N WYJATEK
iptables -t nat -A WYJATEK -s 192.168.0.0/24 ! -d 192.168.1.0/24 -p tcp --dport 80 -j REDIRECT --to-port 8080

iptables -t nat -A PREROUTING -s 192.168.0.0/24 ! -d 192.168.2.0/24 -p tcp --dport 80 -j WYJATEK



Dziękuję Marcinie, Twoje podpowiedzi były bardzo pomocne!

Następna dyskusja:

Xen domU iptables i REDIREC...




Wyślij zaproszenie do