... {toc} h1. Общая информация Carbon Reductor поддерживает фильтрацию с помощью нескольких списков, что позволяет блокировать разным абонентам разные ресурсы и показывать разные страницы заглушки в зависимости от того из какого списка запрещённых URL был открыт ресурс. Кастомные списки располагаются в директории: {panel} /app/reductor/cfg/userinfo/hooks {panel} и состоят из списков заблокированных ресурсов, списков абонентских сетей и файла с описанием связки между ресурсами и абонентами, а также страницей на которую они будут редиректиться. h1. Описания файлов h2. Разные списки заблокированных URL В первую очередь нужно перечислить список блокируемых URL. Создайте папку {panel} mkdir \-p /app/reductor/cfg/userinfo/hooks/custom_url_lists/ {panel} внутри неё создайте файл со списком url ([требования к спискам те же, что и для собственных списков провайдера|http://docs.carbonsoft.ru/67404013]). название файла должно состоять из номера списка (без расширения), который будет использоваться в качестве его идентификатора при создании правила и загрузки списка в ядро. Пример: {panel} /app/reductor/cfg/userinfo/hooks/custom_url_lists/1 /app/reductor/cfg/userinfo/hooks/custom_url_lists/2 {panel} содержимое: {panel} \#cat /app/reductor/cfg/userinfo/hooks/custom_url_lists/1 http://боль.кладбище.гроб.рф http://игил.и.прочие.тренды.рф[http://sorry.for.this.example.com] \#cat /app/reductor/cfg/userinfo/hooks/custom_url_lists/2[http://something.very.bad]
|
{panel}
|
h2. Разные списки заблокированных Domain Нужно перечислить список блокируемых domain. Создайте папку {panel} mkdir \-p /app/reductor/cfg/userinfo/hooks/custom_domains/ {panel} Дальше по аналогии с URL, создайте списки с нужными ресурсами.
|
h2. Разные подсети абонентов
|
... Создайте папку {panel} mkdir \-p /app/reductor/cfg//userinfo/hooks/custom_ipsets {panel} внутри неё создайте файл со списком подсетей ([требования к спискам те же, что и для собственных списков провайдера|http://docs.carbonsoft.ru/67404013]). название файла должно состоять из номера списка (без расширения), который будет использоваться в качестве его идентификатора при создании правила и загрузки списка в ядро. Пример: {panel} /app/reductor/cfg/userinfo/hooks/custom_ipsets/1 /app/reductor/cfg/userinfo/hooks/custom_ipsets/2 {panel} содержимое: {panel} \#cat /app/reductor/cfg/userinfo/hooks/custom_ipsets/1 192.168.3.0/24 10.30.0.0/16 \#cat /app/reductor/cfg/userinfo/hooks/custom_ipsets/2 196.168.4.0/24 {panel}
|
h2. Связывание этих списков и разные страницы редиректа
|
Далее необходимо описать связь между этими списками в файле.
|
h5. Для *URL:*
|
{panel} /app/reductor/cfg/userinfo/hooks/custom_bindings
|
... {panel} Формат файла: 1 колонка - id списка (одноимённо с файлом списка, только цифры. id списка фильтрации по всем ФЗ, минюсту, our.list итд - 0). 2 колонка - id ipset’а 3 колонка - url куда редиректить 4 колонка - комментарий, в правиле показываться будет разделитель - пробел или tab, комментарии не поддерживаются h3. Пример содержимого для редиректа части абонентов на другую заглушку: {panel} 0 1 [http://www.patriarchia.ru] just_other_block_page 0 \-1 [http://default.redirect.page/] default {panel} h3. Пример содержимого для фильтрации доп. URL для части абонентов: {panel} 1 1 [http://www.patriarchia.ru] no_suicide_and_terrorism
|
2 2 [http://somthing.very.good] no_something_very_bad {panel}
|
h5. Для *Domain:* /app/reductor/cfg/userinfo/hooks/custom_bindings_dns Формат файла: 1 колонка - id списка (одноимённо с файлом списка, только цифры. id списка фильтрации по всем ФЗ, минюсту, our.list итд - 0). 2 колонка - id ipset’а 3 колонка \- IP куда редиректить 4 колонка - Статично прописать "*with_subdomains*" 5 колонка - Вид списка "*black*" 6 колонка - комментарий, в правиле показываться будет разделитель - пробел или tab, комментарии не поддерживаются h3. Пример содержимого для редиректа абонентов на заглушку: {panel} 1 1 192.168.1.100 with_subdomains black content_filter {panel}
|