Подготовка списков фильтрации EcoNAT Documentation / Фильтрация по пользовательским спискам / Подготовка списков фильтрации
Пользовательский список фильтрации должен представлять собой простой текстовый файл, который может содержать:
- URL,
- отдельные адреса IPv4 и IPv6,
- диапазоны адресов IPv4,
- подсети IPv4 и IPv6,
- Perl-совместимые регулярные выражения (PCRE).
При подготовке файла со списком фильтрации необходимо учитывать следующее:
- Каждая запись (URL, IP-адрес и др.) должна быть представлена отдельной строкой. Разделителем строк в файле должен быть управляющий символ CR или CR LF.
- URL можно указать со схемой (“http://” или “https://”) или без неё. URL без схемы означает, что в списке он присутствует с обеими схемами. При этом фильтр для HTTPS-соединений будет учитывать только доменное имя в URL. То есть при указанном в примере ниже написании ссылки на статью Википедии будут блокироваться все соединения с русскоязычной версией Википедии. Таким образом, если требуется закрыть доступ только к одной статье, то в списке должно быть указано “http://ru.wikipedia.org/wiki/GRE_(протокол)”
- В записи URL можно использовать замещающий символ '*' (звёздочка), который означает любое количество символов доменного имени от первого до какой-либо точки. Например, можно указать *.example.ru или *.org, но нельзя указать www.*.com. Если необходимо фильтровать и HTTP, и HTTPS, то '*' ставится в начале URL, а если только один из протоколов, то перед '*' указывается схема “http://” или “https://”.
- IPv6-адреса необходимо указывать в квадратных скобках.
- IP-адреса можно указывать в связке с портом или диапазоном портов.
- Перед регулярным выражением необходимо ставить знак '~' (тильда). Например, ~^((http|https|ftp):\/\/)?.*\.qwe\..*$. В противном случае регулярное выражение не будет идентифицировано подсистемой DPI при обработке загруженного файла.
- Нельзя указывать IP-адреса в виде регулярных выражений.
- Имя и расширение файла не регламентированы.
- Можно использовать комментарии. Например, для именования групп записей. Каждая строка комментария должна начинаться с символа '#' (решётка). Этим же символом можно при необходимости "закомментировать" определённые строки в списке, чтобы они не обрабатывались при построении или обновлении базы данных.
Пример содержимого файла:
# URLs
http://www.badsite.com:8080/badpath.htm
http://flibusta.net
https://*.example.ru
*.badsite.ru
http://vk.com
ru.wikipedia.org/wiki/GRE_(протокол)
# ip
8.8.8.0/24
3.3.3.1
5.5.5.5-5.5.5.150
# ip:port
22.48.50.55:2020
149.154.1.5/16:3000-9000
[2001:67c:4e8:f002::0:0001]/112:3000-9000
# PCRE
~^((http|https|ftp):\/\/)?.*\.boo\..*$