Як насправді працює перевірка в чорних списках
Чорний список DNSBL — це не база, до якої ходять окремим протоколом. Це звичайна
DNS-зона, і в цьому весь фокус. Щоб спитати, чи є в списку 198.51.100.7,
октети перевертають, дописують ім'я зони і питають A-запис:
7.100.51.198.zen.spamhaus.org
Відповідь із діапазону 127.0.0.0/8 означає, що адреса в списку. NXDOMAIN —
такого імені немає — означає, що її там немає. Це весь протокол, і саме він пояснює,
чому чорні списки стали повсюдними: DNS уже вміє кожен поштовий сервер, відповіді
кешуються резолверами дорогою, а сам запит завершується за мілісекунди. Останнє важливо,
бо приймальний сервер ухвалює рішення під час SMTP-сесії — ще до того, як тіло
листа взагалі передали.
Код відповіді теж має зміст, і саме тут більшість сторінок-перевірячів зупиняється. Зведений список кодує причину в останньому октеті: одне значення для відомого джерела спаму, інше для зараженої машини, що шле через ботнет, третє для діапазону, про який сам провайдер заявив, що звідти не мають слати пошту напряму. Це різні звинувачення з різними способами лікування, і зведення їх до єдиного вироку — саме те, що перетворює фразу «вас у чорному списку» на марну пораду.
Відповідь, схожа на потрапляння, але це не воно
Є режим відмови, про який варто знати, бо він тихо отруює багато перевірячів. Провідні
списки — насамперед Spamhaus — відмовляються відповідати на запити, що прийшли через
публічні резолвери на кшталт 8.8.8.8 чи 1.1.1.1, і так само
відмовляють джерелам, які вийшли за безкоштовний добовий обсяг. Відмова не є повідомленням
про помилку. Це відповідь із 127.255.255.0/24 — і для наївного розбору вона
виглядає точнісінько як справжнє потрапляння в список.
Перевіряч, який їх не розрізняє, звинувачує кожну адресу, яку йому дали, упевнено й без жодної видимої поломки. Ця сторінка питає через власний резолвер, а не через публічний, тримає коди відмови окремим станом і прямо каже, коли список відповідати відмовився, замість зараховувати це до «у списку» чи «чисто». Якщо відмовилося одразу кілька списків, ви побачите їх кількість — бо це означає, що наш результат неповний, а не що з адресою все гаразд.
Не кожен список означає «ви щось порушили»
Це найбільше непорозуміння навколо чорних списків. Вони поділяються на кілька типів, і лише частина з них є звинуваченням:
- Політичні списки
- Діапазони, про які сам оператор мережі заявив, що звідти не мають слати пошту напряму в інтернет, — тобто фактично кожне домашнє й мобільне підключення. Потрапляння сюди не є докором: це констатація типу вашого підключення, опублікована вашим же провайдером. Пошта з дому має йти через вихідний сервер провайдера.
- Списки зламаних машин і ботнетів
- Адреси, з яких помічено розсилання через шкідливе програмне забезпечення, відкриті проксі чи захоплені пристрої. На домашньому підключенні це зазвичай означає, що в мережі щось заражене, — і не обов'язково той комп'ютер, з якого ви це читаєте. Принтер, камера чи старий телефон — цілком звичайні винуватці.
- Списки репутації та джерел спаму
- Адреси, з яких справді слали небажану пошту, найчастіше за свідченнями пасток — скриньок, що існують виключно для її прийому і до яких жоден добропорядний відправник не має потрапити.
- Списки зворотного розсіювання
- Сервери, які надсилають повідомлення про недоставку на підроблених відправників. Класична причина — поштовий сервер, що приймає лист і лише потім виявляє відсутність одержувача, після чого сумлінно відбиває його на адресу, яка нічого не надсилала.
Є ще один тип, який ми свідомо не включаємо. Частина операторів заносить цілі підмережі
або навіть цілі автономні системи через одного поганого сусіда й пропонує платне
прискорене виключення. Показати це як «вашу адресу внесено» означало б сказати неправду
про людину, яка ні до чого не причетна, — тому ця сторінка питає лише той список цієї
родини, що працює на рівні адреси, і не питає списки вищих рівнів. З тієї самої причини тут
немає зон репутації, де та сама відповідь 127.0.0.x означає «добрий
відправник»: спільна обробка перетворила б похвалу на звинувачення.
Чому адреса потрапила в список
Приблизно в тому порядку, у якому кожна причина справді виявляється винною:
- Адреса не лише ваша. За NAT рівня оператора одна публічна адреса обслуговує багатьох абонентів, тож потрапляння, зароблене будь-ким із них, дістається всім. Те саме з динамічною адресою, яку кілька годин тому звільнив попередній клієнт.
- У мережі щось зламано. Заражений пристрій, що шле через ботнет, заносить адресу в списки за години. Шукайте вихідні з'єднання на порт 25 від усього, що не є вашим поштовим сервером: підозрюваний — той пристрій, якому взагалі нема чого слати пошту.
- Вебзастосунок використали як ретранслятор. Форма зворотного зв'язку без обмеження частоти, необновлена CMS або забутий скрипт, який шле все, що йому передали. Це найчастіша причина для сервера, який «пошту не надсилає», а в списках усе одно є.
- Пересилання. Якщо ваш сервер пересилає пошту на іншу адресу, ви берете на себе відповідальність за все переслане, зокрема спам. Пересилачі потрапляють у списки за чужі листи постійно.
- Справжня розсилка тим, хто її не просив. Куплена база, лист «сплячим» клієнтам після років мовчання чи імпорт контактів зі сторонньої бази швидко натрапляють на пастки.
Виключення зі списку — у тому порядку, який працює
Майже кожен список має самостійне виключення, і майже всі користуються ним не в тому порядку. Виключення — це останній крок, а не перший:
- Знайдіть і усуньте причину. Якщо адреса й далі робить те, за що потрапила в список, виключення дасть вам кілька годин. Більшість списків заносять повторно автоматично, а деякі за рецидив призначають довший строк.
- Перевірте базові речі в поштовому налаштуванні. Зворотний DNS, що вказує на ім'я, яким ви представляєтесь, прямий запис у відповідь, коректна політика SPF, підпис DKIM і запис DMARC. Вони не знімають потрапляння, але саме через їх відсутність сумнівну пошту відхиляють навіть із чистої адреси.
- Прочитайте, що каже сам список. Рядок подробиць у результатах вище зазвичай називає причину й веде на сторінку оператора. Там написано, які в них свідчення і що саме вони хочуть бачити виправленим.
- Попросіть виключення один раз. Повторні звернення нічого не пришвидшують, а в деяких списках подовжують очікування.
- Далі чекайте на кеші. Приймальні сервери кешують відповіді DNS, тож листи можуть відбиватися ще якийсь час після того, як запис зник. Зазвичай години, не дні.
Один виняток варто сказати прямо: якщо ви на домашньому підключенні й опинилися в політичному списку, виправляти нема чого й просити нема про що. Надсилайте через вихідний сервер провайдера або через поштовий сервіс — і питання зникає. Тримати поштовий сервер на домашній лінії — це не проблема налаштувань, а суперечка з усім приймальним світом, і приймальний світ думки не змінить.
Що ця перевірка доводить, а що ні
Вона каже, що конкретний набір списків думає про одну адресу просто зараз. Кожен приймальний сервер сам обирає, до яких списків звертатися і яку вагу їм давати, тож чиста відповідь тут не гарантує доставки, а одне потрапляння в маловідомий список рідко пояснює проблему з доставкою саме по собі. Якщо листи відхиляють, повідомлення про недоставку інформативніше за будь-яку сторінку перевірки: у ньому зазвичай прямо названо і список, і причину.
Суміжні перевірки: хто керує цією адресою — це варто знати до висновку, що виправляти її вам, — і DNS-записи домену, де насправді живуть SPF, DKIM і DMARC.