Перейти до

Редирект на сайт провайдера


Рекомендованные сообщения

Уважаемые форумчане, може кто подскажет - как правильно прописать Iptables под stargazer-ом, чтобы провайдерский сайт на реальном IP был виден не зависимо от того, авторизован абонент или нет.

 

Так же - в идеале - перенаправить бы траф неоплаченных абонентов так же на сайт провайдера, желательно сразу на страничку "доступ заблокирован". Т.е. если деньги закончились - что бы человек не набрал в строке браузера - получил редирект на эту страничку.

Ссылка на сообщение
Поделиться на других сайтах

На счет сайта провайдера нужно разрешить форвардинг пакетов на данный ресурс, а насчет в доступе отказано Dnatишь адрес веб сервера он дисконнекте, а в он коннекте удаляешь.

Ссылка на сообщение
Поделиться на других сайтах

На счет сайта провайдера нужно разрешить форвардинг пакетов на данный ресурс, а насчет в доступе отказано Dnatишь адрес веб сервера он дисконнекте, а в он коннекте удаляешь.

 

Можно примеры волшебных строчек? :D

Ссылка на сообщение
Поделиться на других сайтах

как то давно на фре реализовал редирект любого запроса на страницу с сообщением

natd -t $router_ip -p 8888 -a $router_ip

ipfw add 39979 divert 8888 tcp from $subnetwork to any dst-port 80 in via em0
ipfw add 39981 allow tcp from $subnetwork to $router_ip dst-port 80 in via em0
ipfw add 39983 divert 8888 tcp from $router_ip 80 to $subnetwork out via em0
ipfw add 39984 allow tcp from any 80 to $subnetwork out via em0

Ссылка на сообщение
Поделиться на других сайтах

Есть только у меня примеры для ipset. Что бы было нормально одним iptables-ом не обойтись.

 

да не проблема - лишь бы работало :lol: можно примерчик?

Ссылка на сообщение
Поделиться на других сайтах

это кидаешь в авотзагрузку

 

ipset -N authorized1 ipmap --network $ip1

iptables -A FORWARD -m set --set authorized1 src,dst -j ACCEPT

iptables -A FORWARD -m set --set authorized1 dst,src -j ACCEPT

iptables -t nat -N park

iptables -t nat -A park -m set --set authorized1 src -j RETURN

iptables -t nat -A park -p TCP --dport 80 -j DNAT --to 172.15.1.1:82

iptables -t nat -A PREROUTING -s $ip1 -j park

 

Это в OnConnect

ipset -A authorized1 $2

 

Это в OnDisconnect

ipset -D authorized1 $2

Ссылка на сообщение
Поделиться на других сайтах

это кидаешь в авотзагрузку

 

ipset -N authorized1 ipmap --network $ip1

iptables -A FORWARD -m set --set authorized1 src,dst -j ACCEPT

iptables -A FORWARD -m set --set authorized1 dst,src -j ACCEPT

iptables -t nat -N park

iptables -t nat -A park -m set --set authorized1 src -j RETURN

iptables -t nat -A park -p TCP --dport 80 -j DNAT --to 172.15.1.1:82

iptables -t nat -A PREROUTING -s $ip1 -j park

 

Это в OnConnect

ipset -A authorized1 $2

 

Это в OnDisconnect

ipset -D authorized1 $2

 

несколько вопросиков, если можно:

 

172.15.1.1:82 - это реальник веб сервера на нестандартном порте?

$ip1 - это "внешний" ip stargazer?

$2 - это, насколько помню, ip абонента?

Ссылка на сообщение
Поделиться на других сайтах

это кидаешь в авотзагрузку

 

ipset -N authorized1 ipmap --network $ip1

iptables -A FORWARD -m set --set authorized1 src,dst -j ACCEPT

iptables -A FORWARD -m set --set authorized1 dst,src -j ACCEPT

iptables -t nat -N park

iptables -t nat -A park -m set --set authorized1 src -j RETURN

iptables -t nat -A park -p TCP --dport 80 -j DNAT --to 172.15.1.1:82

iptables -t nat -A PREROUTING -s $ip1 -j park

 

Это в OnConnect

ipset -A authorized1 $2

 

Это в OnDisconnect

ipset -D authorized1 $2

 

несколько вопросиков, если можно:

 

172.15.1.1:82 - это реальник веб сервера на нестандартном порте?

$ip1 - это "внешний" ip stargazer?

$2 - это, насколько помню, ip абонента?

 

172.15.1.1:82 - это да сервак но у меня он работет на 82 порту там чисто висит страница заплати денег

$ip1 - это подсеть твоих абонентов

$2 - это тот кого авторизируем

Ссылка на сообщение
Поделиться на других сайтах
  • 2 weeks later...

Весе супер, все рабо - огромное спасибо и респектище! Упарился только ставить IPSET под Центосом.

Я тоже очень запарился ставить ipset мозг закипел но все таки поставил.

Ссылка на сообщение
Поделиться на других сайтах
  • 1 month later...

Не хотелось бы открывать новую тему, - поэтому задам вопрос по ipset в этой :

Оптимизировал более 3000 правил в 3 )) с помощью ipset.

Кто шейпит у себя трфик по меткам ?

Например так :

iptables -I FORWARD -d $IP -j MARK --set-mark 0x$MARK

?

На каждого пользователя создается такое правило.

Возможно ли их определить так же в сет ?

Если да, то как ?

Почитал маны и примеры с нета, но ответа так и не нашел ?

Для НАТа и форварда прекрасно определил все в сеты.

Так же сделал сеты для блокировки нежелательных портов и вирусных (китайских) подсетей.

Правил в итоге на Линуховом роутере не более 10 :lol:

Но заедает что много правил для меток - они нужны, так что советовать их убрать нежелательно.

Заранее благодарен откликнувшимся.

Ссылка на сообщение
Поделиться на других сайтах

DarkSpider, покажите, как запихнули НАТ в ipset.

Аналогичная проблема, iptables такой огромен, что если сделать iptables -L -n, реально все не увидишь, потому что даже на полосу прокрутки не влазит, приходится перенаправлять куда-то в файл и там уже смотреть.

Ссылка на сообщение
Поделиться на других сайтах

Да просто :lol:

$IPSET -X FSNAT
$IPSET -N FSNAT ipmap --network 192.168.0.0/16
$IPTABLES -t nat -A POSTROUTING  -m set --set FSNAT src -o $eWAN -j SNAT --to-source $IP_eWAN

Все B)

В Connect :

ipset -A FSNAT $IP

В OnDisconnect

ipset -D FSNAT $IP

 

Для реальников - отдельные правила, но их не много.

 

Общий FORWARD показывали выше.

Мне бы еще метки в SET засунуть. А то правила фаера - в основном метки :)

Ссылка на сообщение
Поделиться на других сайтах
  • 1 year later...
это кидаешь в авотзагрузку ipset -N authorized1 ipmap --network $ip1 iptables -A FORWARD -m set --set authorized1 src,dst -j ACCEPT iptables -A FORWARD -m set --set authorized1 dst,src -j ACCEPT iptables -t nat -N park iptables -t nat -A park -m set --set authorized1 src -j RETURN iptables -t nat -A park -p TCP --dport 80 -j DNAT --to 172.15.1.1:82 iptables -t nat -A PREROUTING -s $ip1 -j park Это в OnConnect ipset -A authorized1 $2 Это в OnDisconnect ipset -D authorized1 $2
несколько вопросиков, если можно: 172.15.1.1:82 - это реальник веб сервера на нестандартном порте? $ip1 - это "внешний" ip stargazer? $2 - это, насколько помню, ip абонента?
172.15.1.1:82 - это да сервак но у меня он работет на 82 порту там чисто висит страница заплати денег $ip1 - это подсеть твоих абонентов $2 - это тот кого авторизируем

Подскажите что доделать нужно что бы не днатил локальные ресурсы

Например на этом же сервере форум техподдержки когда пытаешься зайти на форум техподдержки у него своё доменное имя скажем http://support.lan/ юзверя всё равно кидает на 82 порт и замкнутый круг получается а на форум так и не пускает

и ещё когда юзверь вводит в строке браузера например поиском яндекса соответственно видит страницу not Found естественно адрес получается к примеру http://yandex.ru/searchбла бла бла и получает ошибку Not Found А когда открывается например http://ya.ru/ то всё красиво выходит :-)

Ссылка на сообщение
Поделиться на других сайтах
  • 3 weeks later...

Делается прямо на NASе

Редирект на пополнялку для Микротик.

/ip firewall nat

add action=dst-nat chain=dstnat dst-port=80 in-interface=bridge1 protocol=tcp src-address-list=!ALLOW to-addresses=192.168.0.254 to-ports=80

/ip firewall filter

add action=accept chain=forward dst-address=192.168.0.254

add action=drop chain=forward out-interface=!bridge1 src-address-list=!ALLOW

 

В Address List создаем список ALLOW всех IP.

Для редиректа достаточно просто отключить (Не удалять) хомячка в Address List.

Для возобновления - снова включить.

 

Впринципе достаточно только одного первого правила.

2,3 - блокирует полностью доступ ко всему, кроме страницы-попрошайки.

 

Не забудьте про страницу 404.html на компе 192.168.0.254

Или можно без 404. правильный .htaccess с редиректом.

Чтоб редирект с любых ссылок работал.

Это для того, чтоб не было not Found на страницах yandex.ru/searchбла

Просто в GET запросе домен сайта и сама страница находится в разных местах пакета. А IP в третьем.

А DSTNAT - подменяет только IP назначения, но тело GET - запроса он не трогает.

Т.е. изменяются только заголовки пакетов, но не содержимое.

 

IP назначения сервера поменялся. А содержимое GET-запроса не изменилось.

А на новом сервере , куда редиректнули хомячка, такой стараницы searchбла - нету.

Отсюда выскакивает not Found.

запустите Сниффер пакетов. И все станет сразу понятно.

 

 

Удаленно сделаю правильный редирект.

Больше, чем спасибо - тоже приветствуется.

уже на всех времени не хватает.

Ссылка на сообщение
Поделиться на других сайтах

спасибо всё понятно!

Насчёт нот фоунд надо ковырять апач или на чём вебсервер крутится

а с редиректом всё понятно я вышел из положения так:

#Редирект неавторизованных на страничку приветствия и контактов
$IPSET -N authorized1 ipmap --network 10.0.0.0/24
$IPSET -N authorized2 ipmap --network 192.168.10.0/24
$IPTABLES -A FORWARD -m set --set authorized1 src,dst -j ACCEPT
$IPTABLES -A FORWARD -m set --set authorized2 src,dst -j ACCEPT
$IPTABLES -A FORWARD -m set --set authorized1 dst,src -j ACCEPT
$IPTABLES -A FORWARD -m set --set authorized2 dst,src -j ACCEPT
$IPTABLES -t nat -N park
$IPTABLES -t nat -A park -m set --set authorized1 src -j RETURN
$IPTABLES -t nat -A park -m set --set authorized2 src -j RETURN
$IPTABLES -t nat -A park -d 10.0.0.1/32 -j RETURN
$IPTABLES -t nat -A park -p TCP --dport 80 -j DNAT --to 10.0.0.1:82
$IPTABLES -t nat -A PREROUTING -s 10.0.0.0/24 -j park
$IPTABLES -t nat -A PREROUTING -s 192.168.10.0/24 -j park

это на 2 разные подсетки

ну а там дело за апачем он получает принятого хомячка и обрабатывает как нужно

Ещё раз спасибо

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

×
×
  • Створити нове...