Налаштування поштового сервера. Частина 2. Додаткові правила фільтрації. DNSBL
- Деталі
- Категорія: Поштовий сервер
- Опубліковано: П'ятниця, 29 березня 2019, 10:35
- Автор: Super User
- Перегляди: 5174
Викладаю другу статтю з циклу "Налаштування поштового сервера".
Додаткові правила фільтрації поштових повідомлень.
Для зменшення кількості спаму має сенс додати ще декілька правил фільтрації.
В кінець блоку smtpd_helo_restrictions допишемо:
check_helo_access hash:/etc/postfix/helo.list
А в блок smtpd_recipient_restrictions після правила permit_sasl_authenticated вставимо:
check_sender_access hash:/etc/postfix/ext_sender,
Створимо файл /etc/postfix/helo.list
#touch /etc/postfix/helo.list
Відкриємо його на редагування та запишемо в нього рядок:
mail.study.local 550 Don't use my hostname
Та створимо з нього індексовану мапу:
#postmap /etc/postfix/helo.list
Створимо файл /etc/postfix/ext_sender
#touch /etc/postfix/ext_sender
Відкриємо його на редагування та запишемо в нього рядок:
study.local 550 Do not use my domain in your envelope sender
Та створимо з нього індексовану мапу:
#postmap /etc/postfix/ext_sender
Правилом check_helo_access буде здійснюватись перевірка того, що нам надішле сервер-відправник в команді HELO. В тому випадку, якщо він представиться нашим же іменем (рядок mail.study.local в файлі /etc/postfix/helo.list), то з'єднання буде розірвано. В нормальній ситуації жоден сервер не може представлятися нашим іменем, тому, скоріш за все, це буде сервер, що розповсюджує спам.
Правилом check_sender_access буде здійснюватись перевірка адреси відправника листа. В тому випадку, коли відправник знаходиться в нашому ж домені (рядок study.local у файлі /etc/postfix/ext_sender), буде відмовлено в прийомі такого листа. З точки зору нашого сервера лист з таким відправником не може прийти від якогось відправника ззовні. Такий лист може бути відправлений лише користувачем нашого сервера, але тоді з'єднання буде захищене логіном та паролем і в цьому випадку лист буде прийнятий за правилом permit_sasl_authenticated, яке стоїть попереду і тому спрацює раніше.
Також має сенс додати ще одну перевірку:
reject_unknown_client
Це правило забороняє приймання листа в тому випадку, коли у клієнта неправильні налаштування DNS — відсутнє або неправильне доменне ім'я (DNS запис типу A), або відсутня або неправильна зворотня зона (DNS запис типу PTR). Вставляти це правило треба в блок smtpd_helo_restrictions зразу після permit_sasl_authenticated
Використання чорних списків розповсюджувачів спаму — DNSBL
DNSBL — DNS blacklist або DNS blocklist — списки хостів, збережені з використанням системи архітектури DNS. Зазвичай використовуються для боротьби зі спамом. Поштовий сервер звертається до DNSBL і перевіряє в ньому наявність IP-адреси клієнта, з якого він приймає повідомлення. При позитивній відповіді вважається, що відбувається спроба прийому спам-повідомлення. Серверу відправника повідомляється помилка 5xx (невиправна помилка) і повідомлення не приймається. Поштовий сервер відправника створює «відмовну квитанцію» відправнику про недоставку пошти.
Для налаштування використання чорних списків серверів потрібно в кінець блоку правил smtpd_helo_restrictions додати рядки типу
reject_rbl_client sbl.spamhaus.org
Де sbl.spamhaus.org це і є адреса сервіса DNSBL
Таких списків в інтернеті знайти можна дуже багато, але найчастіше використовуються наступні:
sbl.spamhaus.org
cbl.abuseat.org
dnsbl.sorbs.net
При використанні DNSBL слід бути дуже уважним. Безкоштовні сервіси можуть в будь-яку мить припинити роботу, внести в списки нормальні сервери або створити інші неприємності. Тому користуватися ними слід дуже обережно.
Підтримайте, будь ласка автора
та придбайте книгу
"Налаштування поштового
сервера на базі Postfix, Dovecot
та RoundCube"
В електронному вигляді