Начало > Помощен център > Бизнес поща > Поща > Outgoing mail - правила за филтриране

Outgoing mail - правила за филтриране

Помощен център

Outgoing mail - правила за филтриране

Outgoing mail ни предоставя достъп до интерфейси за създаване на персонализирани правила за филтриране на входящи съобщения на базата на регулярни изрази (regular expressions, regex).

В статията ще покажем как може да създаваме и управляваме правилата за филтриране на входящи съобщения и как може да импортираме и експортираме правила в CSV формат.

Не препоръчваме използването на правила за филтриране без познания за работа с регулярни изрази (regular expressions, regex), тъй като неправилното им използване може да доведе до нежелано блокиране на легитимни съобщения и поток от фалшиви предупреждения (false positives).

Препоръчваме използването на онлайн инструменти (като https://regex101.com/, https://www.regextester.com/) за проверка на регулярни изрази (regex), за да се прилагат в Outgoing mail само правила с коректен синтаксис.

Правилата за филтриране се съдържат в два идентични интерфейса - Incoming Whitelist Filtering Rules (одобрени правила за филтриране на входяща поща) и Incoming Blacklist Filtering Rules (блокиращи правила за филтриране на входяща поща), но действат по напълно различни начини.

Incoming Whitelist Filtering Rules разрешават доставянето на съобщение, което съвпада с правило за филтриране, докато Incoming Blacklist Filtering Rules блокират получаването на съобщение, което отговаря на активирано regex правило. Затова трябва да внимаваме в кой интерфейс се намираме когато създаваме regex правила.

Достъп и настройки на Incoming filtering rules

За да достъпим посочените инструменти в контролния панел на ниво домейн избираме в главното меню Incoming - Protection Settings > Whitelist filtering rules или Incoming - Protection Settings > Blacklist filtering rules:

Достъп до filtering rules от главното меню

или кликаме една от маркираните икони в таблото:

Достъп до filtering rules от таблото

Зарежда се интерфейсът Incoming (whitelist/blacklist) filtering rules:

Общ изглед на Incoming filtering rules

Интерфейсите с правилата за филтриране на входящата поща съдържат следните раздели:

Меню с раздели в Incoming filtering rules

  • Domain Rules (правила за домейна) - правила, които се прилагат за конкретен домейн. В този раздел може да добавяме нови правила за филтриране;
  • Admin Rules (правила за администратор) - правила, които се прилагат за всички домейни, по преценка на системния администратор;
  • Default Rules (правила по подразбиране) - правила по подразбиране, които се прилагат за всички домейни, използващи настройки по подразбиране;
  • Global Rules (глобални правилa) - правила, които се прилагат за всички домейни, независимо от настройките по подразбиране;

Всички съществуващи правила се записват в таблица.

Следващото меню ни дава достъп до опции за добавяне на правило, импортиране и експортиране на правила в CSV формат:

Импортиране и експортиране на правила в CSV формат

При кликане на Export rules as CSV автоматично се генерира .csv файл, който се записва на нашия компютър и съдържа следната информация (ако има записано поне едно правило):

Съдържание на експортиран CSV файл

При кликане на Import rules from CSV се зарежда прозорец, в който кликаме бутона Select file и навигираме до .csv файла:

Интерфейс за импортиране на CSV файл

Ако имаме съмнение относно коректния синтаксис на информацията във файла може да кликнем бутона CSV file structure и да видим примерен синтаксис. Връщаме се в предишния прозорец през бутона Go back:

Примерен синтаксис на CSV файл

Кликаме бутона Import file за да качим файла на сървъра и получваме потвърждение за успешно импортиране:

Потвърждение за успешно импортиране

Информацията от файла се записва в таблицата:

Записване на правило в таблица

Ако създадем голям брой правила имаме достъп до познатата функционалност Query Rules, чрез която може да сортираме резултатите в таблицата по различни признаци в полетата атрибути (Regular expression) и логически оператори (contains), както и ключови думи (safe) в третото поле.

Припомняме, че на различни атрибути съответстват различни логически оператори. За да видим резултата кликаме синия бутон със символ лупа:

Сортиране на правила в Query Rules

Добавяне на regex правило за филтриране

Кликаме бутона +Add Rule за да се зареди панел с настройки:

Интерфейс за добавяне на regex правило за филтриране

В полето Rule name въвеждаме име на правилото за филтриране.

В полето Priority (приоритет) въвеждаме число, което представлява приоритета на правилото. Правилата се оценяват по приоритет в посока от най-малкото до най-голямото число, докато не се открие съвпадение или се проверят всички правила.

Важно: Всички whitelist правила се проверяват преди blacklist правилата.

Въвеждаме регулярния израз за правилото в полето Regular expression. Панелът Cheatsheet вдясно на страницата ни дава достъп до примери за това как да създадем нашето regex правило.

В менюто Match (съвпадение) избираме елемент от писмото, за който търсим съвпадение. Налични са следните опции (при избиране на някои опции се отварят допълнителни полета, които сме описали по-долу):

  • Header - Header name;
  • Raw message;
  • Message body - Content type;
  • HELO/EHLO;
  • Recipient;
  • Sender;
  • Sender (verified);
  • Sender IP;
  • Sender Hostname;
  • URL;
  • Language - Automatic or specified;
  • Location - Location type;
  • Attachment Type;
  • Attachment Name;
  • Attachment Type (auto-detect);
  • Message Type;

В допълнителните полета, записани срещу съответните опции въвеждаме:

  • Header name (Header) - може да ограничим проверката до конкретен хедър, като може да ползваме регулярен израз;
  • Content type (Message body) - може да ограничим проверката до конкретни части на съобщението, например text/plain или text/.*, може да ползваме регулярен израз;
  • Automatic or specified (Language) - по подразбиране езиковите съвпадения ще се извършват срещу автоматично откриване на език и когато подателят посочи езика. За да се търси съвпадение само когато подателя посочи, използваме 'specified', а само за автоматично откриване - използваме 'automatic'.
  • Location type (Location) - Може да определим кой тип местоположение да съответства; това може да е регулярен израз. Валидните стойности са city, continent, country, country_iso (ISO 3166-1 alpha code), represented_country, registered country, latitude, or longitude;

В полето Flags въвеждаме някой от следните налични флагове:

  • i (ignore case) - игнориране регистъра на шрифта (не прави разлика между главни и малки букви);
  • m (^ and $ match start and end of line) - символите съвпадат с началото и края на реда;
  • s (. matches newline) - съвпада с нов ред;
  • x (allow spaces and comments) - разрешава интервали и коментари;

Кликаме бутона Save за да запазим правилото. Съобщение ни потвърждава успешното създаване, след което правилото се записва в таблицата:

Потвърждение за успешно създаване на правило

Управление на правилата за филтриране

При кликане на стрелката срещу всяко правило в таблицата се зарежда меню със следните опции:

Опции за управление на правилата за филтриране

Редактиране на правило за филтриране

При избиране на Edit от менюто се отваря прозорец Edit filtering rule, в който може да редактираме всяка настройка и да запазим новите настройки на правилото като кликнем бутона Save:

Редактиране на правило за филтриране

Съобщение ни потвърждава успешната редакция на правилото:

Потвърждение за успешна редакция на правило

Копиране на правило за филтриране

При избиране на Copy rule в менюто се зарежда прозорец Copy filtering rule, в който може да променим всяка настройка (промяната на името на правилото е задължителна) и да запазим копираното правило с новото име като ново правило, което се записва в таблицата:

Копиране на правило за филтриране

Ако опитаме да копираме правилото без да променим неговото име ще получим съобщение за грешка:

Грешка при копиране на правило за филтриране

При успешно копиране на правило за филтриране получаваме съобщение за потвърждение:

Потвърждение за успешно копиране на правило

и копираното правило се записва в таблицата:

Записване на копираното правило в таблица

Запазване на правило за филтриране в CSV формат

При избиране на опцията Export as .CSV автоматично се генерира файл в CSV формат, който се записва на нашия компютър и съдържа следната информация за правилото:

"priority","name","rule","check_type"
5,"new rule copy","(?i)^(safecharge\.com)$","s_addr"

Премахване на правило за филтриране

Последната опция в менюто Remove ни позволява да премахнем правило. При кликане се зарежда прозорец, който съдържа името на правилото и бутон Remove за потвърждение на премахването:

Премахване на правило за филтриране

Съобщение ни потвърждава успешното премахване:

Съобщение за успешно премахване на правило

Ако поставим отметка пред няколко правила в таблицата се зарежда поле Apply to selected, в чието меню имаме достъп до опциите Export as .CSV и Remove:

Управление на множество правила за филтриране

При избиране на Export as .CSV автоматично се генерира .csv файл с информацията за маркираните правила, която се записва на нашия компютър.

При избиране на Remove се зарежда прозорец, който съдържа имената на маркираните правила и бутон Remove за потвърждение на премахването:

Премахване на множество правила за филтриране

Копиране на правило от друг раздел

Сега ще покажем как може да актуализираме съществуващи правила от различни раздели. В нашата инсталация на Outgoing mail в раздел Whitelist filtering rules > Global Rules администраторите са създали няколко примерни правила:

Раздел Global Rules

Запис на правило в таблица

Кликаме стрелката срещу името на правилото и в менюто избираме Copy rule (в този раздел нямаме опция за редактиране Edit):

Меню с опции в Global Rules

Отваря се прозорецът Copy filtering rule и само кликаме бутона Save. Сега отваряме разделът Domain Rules и виждаме, че правилото е копирано в таблицата и тук вече имаме достъп до опция за редактиране Edit, с помощта на която може да променим правилото:

Автоматично копиране на правилото в Domain Rules

Създаване на правило за блокиране (blacklist)

Отваряме интерфейсът Incoming blacklist filtering rules и създаваме по показания по-рано начин ново правило със следните настройки:

Добавяне на ново правило

Правилото се записва в таблицата:

Новото правило се записва в таблицата

Припомняме, че в началото на статията създадохме whitelist правило (pdf attachments), което разрешава получаването на съобщения с прикачени PDF файлове.

От външна за сървъра публична поща изпратихме към поща в домейна две писма, които съдържаха съответно PDF и DOCX прикачен файл. Както се досещате, писмото с .pdf файла се получи успешно:

Писмо в thunderbird с прикачен pdf файл

докато писмото с .docx файла беше отхвърлено със следната грешка (550 Съобщението е отхвърлено от правилата на потребителя):

Съобщение за отхвърляне на писмо

Системата за създаване на правила за филтриране в Outgoing mail дава възможност за създаване на неограничен брой персонализирани правила в съответствие с нашите умения за работа с регулярни изрази.


МЕТА: В статията показваме как се създават regex правила за филтриране в Outgoing mail - добавяне на правило, импортиране и експортиране на правила в CSV формат, управление на правила, тестове на правила за филтриране...

УРЛ: filtering-rules