LINUX.ORG.RU
решено ФорумAdmin

[iptables] редирект

 


0

0

Нужно с помощью иптаблесов редиректить хосты в локалке с подсети 10.0.1.0/24 на вебсервер на самом шлюзе (10.0.1.1). А людей которые подключились по пппое и имеют адреса в посети 10.1.1.0/24 пускать в интернеты

#!/bin/sh

echo "1" > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A PREROUTING -p tcp -s 10.0.1.0/24  -d ! 10.0.0.0/8 --dport 80 -j DNAT --to-destination 10.0.1.1

iptables -P FORWARD DROP
iptables -A FORWARD -j ACCEPT -p ALL -i ppp+ -o eth0
iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -j ACCEPT -p all -s 10.0.1.0/24  -d 10.0.1.0/24  -o eth0

iptables -t nat -A POSTROUTING -o eth0  -j SNAT --to-source 192.168.3.10

но не хочет работать вот такой скрипт с правилами ЧЯДНТ?

★★

или уже запилить сквид для этого?

кстати использование сквида и пппое это нормальное решение или велосипед?

wlan ★★
() автор топика

Что именно не работает? Перенаправление на 10.0.0.1 или SNAT? У вас сколько интерфейсов? eth0 и eth1?

mky ★★★★★
()
Ответ на: комментарий от mky

Два интефрейса eth0-внешний eth1 - локалка

снат работает, мне нужен редирект тех кто неавторизован по пппое на локальный вебсервер со страничкой информации,

10.0.1.0/24 - локальная сеть, IP выдается DHCP

10.1.1.0/24 - диапазон IP который выдается при подключении по PPPoE

10.0.1.1 - шлюз, он же вебсервер

wlan ★★
() автор топика
#!/bin/sh

echo "1" > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A PREROUTING -s 10.0.1.0/24 -p tcp  --dport 80 -j DNAT --to-destination 10.0.1.1:80

iptables -P FORWARD DROP
iptables -A FORWARD -p ALL -i ppp+ -o eth0 -j ACCEPT
iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -p ALL -s 10.0.1.0/24 -d 10.0.1.1   -j ACCEPT
iptables -A FORWARD -p ALL -s 10.0.1.1 -d 10.0.1.0/24 -j ACCEPT

iptables -t nat -A POSTROUTING -o eth0 -s 10.1.1.0/24 -j SNAT --to-source 192.168.3.10

поправил, должно работать. но не хочет

wlan ★★
() автор топика
#!/bin/sh

echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -t nat -F
iptables -t nat -A PREROUTING -s 10.0.1.0/24 -p tcp  --dport 80 -j DNAT --to-destination 10.0.1.1:80

iptables -P FORWARD DROP
iptables -A FORWARD -p ALL -i ppp+ -o eth0 -j ACCEPT
iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

iptables -A FORWARD -p ALL -s 10.0.1.0/24 -d 10.0.1.1   -j ACCEPT
iptables -A FORWARD -p ALL -s 10.0.1.1 -d 10.0.1.0/24 -j ACCEPT

iptables -A FORWARD -p ALL -s 10.0.1.0/24 -d 85.113.62.227 -j ACCEPT
iptables -A FORWARD -p ALL -s 85.113.62.227 -d 10.0.1.0/24 -j ACCEPT

iptables -t nat -A POSTROUTING -s 10.0.1.0/24 -j SNAT --to-source 192.168.3.10

iptables -t nat -A POSTROUTING -o eth0 -s 10.1.1.0/24 -j SNAT --to-source 192.168.3.10

/usr/sbin/pppoe-server -I eth1 -L 10.1.1.1

вобщем вот рабочий скрипт с редиректом, может пригодится кому,

огромное спасибо л-т и гику в частности

wlan ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.