roma33rus Posted May 29, 2013 Всем привет. Имеется сервер с FreeBSD 9.1 и ipfw, через него ходят пользователи в интернет (не nat). Задача состоит в том, чтобы настроить такую штуку. Допустим пользователь просыпается, пытается зайти в интернет на какую-либо страничку. И ему вместо предположим яндекса выползает моя информационная страничка, он ее один раз увидел, прочитал, ознакомился и все, дальше пользователю эту страничку не показываем. Кто-нибудь делал такое? я думаю, так, в ipfw добавить на каждый ip адрес правило форвардинга и далее написать скриптик, который будет смотреть, если какие-то данные были по правилу форвардинга для конкретного ip адреса, то это правило убираем из ipfw и пользователь дальше работает в штатном режиме. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Hawk128 Posted May 29, 2013 Направление правильное, только используйте таблицы. Упростите себе жизнь. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
roma33rus Posted May 29, 2013 Направление правильное, только используйте таблицы. Упростите себе жизнь. Ага, тоже думал по этому поводу. Только пока не нашел инфы как посмотреть счетчик трафика для ip адреса, который находится в таблице. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Kostyan Posted May 29, 2013 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 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
roma33rus Posted May 29, 2013 Да, возможно придется как-то со стороны веб сервера разруливать. Спасибо. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Kostyan Posted May 29, 2013 По подсчету трафика смотрите в сторону: Abills: Модуль для подсчета трафика в локальной сети. ну и поиск по теме - flow-tools учет трафика Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
roma33rus Posted May 29, 2013 Спасибо, буду разбираться. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted May 29, 2013 Всем привет. Имеется сервер с FreeBSD 9.1 и ipfw, через него ходят пользователи в интернет (не nat). Задача состоит в том, чтобы настроить такую штуку. Допустим пользователь просыпается, пытается зайти в интернет на какую-либо страничку. И ему вместо предположим яндекса выползает моя информационная страничка, он ее один раз увидел, прочитал, ознакомился и все, дальше пользователю эту страничку не показываем Первым по хттп лезет виндовс апдейт, антивирусники обновляются и прочее, им ваша страничка фиолетова и только мешается. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
terrible Posted May 29, 2013 ]Первым по хттп лезет виндовс апдейт, антивирусники обновляются и прочее, им ваша страничка фиолетова и только мешается. Согласен, IPFW редирект должен быть на страничку, которая в свою очередь должна уже через http редиректить абонента ещё куда-то, на какой-то сайт, чтобы он там что-то прочитал, иначе страничка не успеет показаться абоненту, и его IP уже будет в ipfw table, где форварда не будет. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
roma33rus Posted May 29, 2013 Либо можно сделать проще. На страничку поместить кнопку. То есть пользователь прочитал, нажал кнопку (назовем к примеру "Прочитал") и уже тогда его ip адрес удалился из таблички. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
roysbike Posted May 29, 2013 (edited) Или проще)) отправте СМС на номер и страница больше не покажится))) Ну а так через личный кабинет и там бахнуть кнопку. Заодно приучите к личному кабинету. Мне ваша идея понравилась . Edited May 29, 2013 by roysbike Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
roma33rus Posted May 29, 2013 Или проще)) отправте СМС на номер и страница больше не покажится))) Ну а так через личный кабинет и там бахнуть кнопку. Заодно приучите к личному кабинету. Мне ваша идея понравилась . В том то и проблема, что даже некоторые клиенты не пользуются и личным кабинетом. Так идея использования информирования абонентов через личный кабинет была на первой полке. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
MMM Posted May 31, 2013 (edited) чтобы не попасть с антивирусами и апдейтерами, делайте редирект на transparent proxy, который проанализирует useragent и тип запроса (только для GET) и выведет редирект 302 на вашу страничку, передав в параметре старый URL, а страничка по кнопке вернет юзера назад. ну и разрешите юзеру это отключать, а то гики замучают жалобами Edited May 31, 2013 by MMM Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...