А задумка проста: пока забывчивый коллега серфит интернет показать ему страничку напоминалку вместо желаемого сайта, ну и через некоторое время все же показать что он там хотел увидеть вечером в пятницу.
Для этих целей поднимаем на Mikrotik`е прокси сервер
/ip proxy set enabled=yes
Далее сбрасываем страничку сообщающую об ошибках:
/ip proxy reset-html
Нас спросят:
Current html pages will be lost! Reset anyway? [y/N]:
и мы смело жмем «y»
Далее создаем правило, которое блокирует все странички проходящие через наше прокси
/ip proxy access add action=deny disabled=no
В Mikrotik`е появится страничка webproxy/error.html ее оформляем красиво. Тут еще дополню: можно пользоваться переменной $(url) она содержит URL адрес назначения — куда пользователь хотел попасть. Я сделал редирект на страничке:
<meta http-equiv="refresh" content="5; url=$(url)">
Вот что я сделал:
Добавляем правило о перенаправлении трафика с 80 порта к нашему прокси, игнорируем адреса из списка Ok — этот список будет содержать тех кто уже видел напоминалку.
/ip firewall nat add disabled=no chain=dstnat protocol=tcp dst-port=80 src-address-list=!Ok action=redirect to-ports=8080 comment=sysadmin
Данное правило должно быть выше других:
/ip firewall nat move [find comment=sysadmin] destination=0
ну и теперь добавляем в список Ok тех кто видел нашу напоминалку:
/ip firewall filter add disabled=no chain=input protocol=tcp dst-port=8080 action=add-src-to-address-list address-list=Ok address-list-timeout=15m comment=sysadmin
Чтобы кто то не позабыл ставим timeout нахождение в списке на 15 минут
Теперь при попытке зайти на сайт по http коллеги увидят нашу напоминалку а после редиректа ту страничку которую хотели. Минут через 15 все повторится.
Остается только ждать поздравлений.
Ссылки по теме:
Manual:IP/Proxy
How to make transparent web proxy
MikroTIK + Заглушка
ссылка на оригинал статьи http://habrahabr.ru/post/231103/
Добавить комментарий