Перейти к содержимому
Калькуляторы

FreeBSD + IPFW

Всем привет. Имеется сервер с FreeBSD 9.1 и ipfw, через него ходят пользователи в интернет (не nat). Задача состоит в том, чтобы настроить такую штуку. Допустим пользователь просыпается, пытается зайти в интернет на какую-либо страничку. И ему вместо предположим яндекса выползает моя информационная страничка, он ее один раз увидел, прочитал, ознакомился и все, дальше пользователю эту страничку не показываем. Кто-нибудь делал такое? я думаю, так, в ipfw добавить на каждый ip адрес правило форвардинга и далее написать скриптик, который будет смотреть, если какие-то данные были по правилу форвардинга для конкретного ip адреса, то это правило убираем из ipfw и пользователь дальше работает в штатном режиме.

Поделиться сообщением


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

Направление правильное, только используйте таблицы. Упростите себе жизнь.

Поделиться сообщением


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

Направление правильное, только используйте таблицы. Упростите себе жизнь.

 

Ага, тоже думал по этому поводу. Только пока не нашел инфы как посмотреть счетчик трафика для ip адреса, который находится в таблице.

Поделиться сообщением


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

rc.firewall

#Пользователи в таблице 10 - посмотревшие страничку
ipfw add 100 allow ip from table\(10\) to any
ipfw add 110 allow ip from any to table\(10\)
#Заворачиваем не посмотревших
ipfw add 120 fwd 127.0.0.1,80 tcp from table\(11\) to any dst-port 80 in via em1
#запрещаем/разрешаем по вкусу
#ipfw add 130 deny ip from table\(11\) to not me

 

Далее на стороне веб сервера необходимо сделать манипуляцию с IP адресами пользователей по добавлению/удалению их в наших табличках.

ipfw table 11 add IP.adress

ipfw table 11 delete IP.adress

Поделиться сообщением


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

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

Поделиться сообщением


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

По подсчету трафика смотрите в сторону:

Abills: Модуль для подсчета трафика в локальной сети.

 

ну и поиск по теме - flow-tools учет трафика

Поделиться сообщением


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

Спасибо, буду разбираться.

Поделиться сообщением


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

Всем привет. Имеется сервер с FreeBSD 9.1 и ipfw, через него ходят пользователи в интернет (не nat). Задача состоит в том, чтобы настроить такую штуку. Допустим пользователь просыпается, пытается зайти в интернет на какую-либо страничку. И ему вместо предположим яндекса выползает моя информационная страничка, он ее один раз увидел, прочитал, ознакомился и все, дальше пользователю эту страничку не показываем

Первым по хттп лезет виндовс апдейт, антивирусники обновляются и прочее, им ваша страничка фиолетова и только мешается.

Поделиться сообщением


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

]

Первым по хттп лезет виндовс апдейт, антивирусники обновляются и прочее, им ваша страничка фиолетова и только мешается.

Согласен, IPFW редирект должен быть на страничку, которая в свою очередь должна уже через http редиректить абонента ещё куда-то, на какой-то сайт, чтобы он там что-то прочитал, иначе страничка не успеет показаться абоненту, и его IP уже будет в ipfw table, где форварда не будет.

Поделиться сообщением


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

Либо можно сделать проще. На страничку поместить кнопку. То есть пользователь прочитал, нажал кнопку (назовем к примеру "Прочитал") и уже тогда его ip адрес удалился из таблички.

Поделиться сообщением


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

Или проще)) отправте СМС на номер и страница больше не покажится))) Ну а так через личный кабинет и там бахнуть кнопку. Заодно приучите к личному кабинету. Мне ваша идея понравилась .

Изменено пользователем roysbike

Поделиться сообщением


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

Или проще)) отправте СМС на номер и страница больше не покажится))) Ну а так через личный кабинет и там бахнуть кнопку. Заодно приучите к личному кабинету. Мне ваша идея понравилась .

 

В том то и проблема, что даже некоторые клиенты не пользуются и личным кабинетом. Так идея использования информирования абонентов через личный кабинет была на первой полке.

Поделиться сообщением


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

чтобы не попасть с антивирусами и апдейтерами, делайте редирект на transparent proxy, который проанализирует useragent и тип запроса (только для GET) и выведет редирект 302 на вашу страничку, передав в параметре старый URL, а страничка по кнопке вернет юзера назад.

 

ну и разрешите юзеру это отключать, а то гики замучают жалобами

Изменено пользователем MMM

Поделиться сообщением


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

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.