Как защитить хостинг почты с SPF


Sender Policy Framework (англ. - «структура политики отправителя») или SPF является расширением протокола SMTP, предложенным в 2006 году. SPF обеспечивает отправителю и получателю электронной почты удобный инструмент для идентификации сообщения.

Необходимость идентификации отправителей электронной почты возрастает год от года в связи с распространением спама. Отсутствие в протоколе SMTP, созданном более 30 лет назад, механизмов аутентификации отправителя дало возможность для осуществления мошеннических действий (фишинг, спам и т.д.) от имени других адресов или даже от несуществующих адресов.

Идентификация производится на основании IP-адреса SMTP-сервера отправителя и сравнения его с политикой, опубликованной владельцем домена.

Отправитель (администратор почтового сервера-отправителя) публикует в доменной зоне стандартную запись типа TXT (текст) с указанием политики SPF. Также указывается политика по умолчанию, т. е. как поступать с сообщением, которое не соответствует явно указанным сведениям. Почтовый сервер получателя осуществляет проверку на существование и содержимое SPF-записи доменной зоны отправителя. Если указанные данные соответствуют политике, значит сообщение исходит от легитимного представителя. Если нет, то, возможно, имеет место попытка подделки адреса отправителя.

Пример наилучшей SPF-записи для большинства доменов:

@ IN TXT "v=sfp1 +mx -all"

v=spf1 — указывает на версию протокола SPF, другой версии кроме первой не существует. Обязательное значение.

+mx — означает что легитимные сообщения с указанного домена могут приходить с IP-адресов, которые указаны как MX(Mail eXchanger) записи. Это вполне логично, так как почтовыми серверами отправителями, как правило, являются те же серверы, что и получатели электронной почты домена.

-all — та самая политика по умолчанию, которая указывает серверу-получателю как ему следует поступать с сообщением, если он поступает с не указанного в SPF источника. Может принимать значение +all, т. е. принимать почту от всех хостов сети, что совершенно бесполезно для фильтрации, поскольку никак не ограничивает круг отправителей. ~all означает, что принимать сообщения следует, но необходимо подвергнуть их дальнейшей проверке спам-фильтрами. Значение весьма мало полезно для аутентификации отправителя, поэтому также не должно применяться на практике. Значение -all указывает на необходимость отклонения не авторизованных сообщений, является наиболее защищающим почтовый домен отправителя и, следовательно, рекомендуемым.

Политика SPF является простым и действенным способом защитить хостинг почты от подделки доменов, спама и фишинга, которую следует повсеместно внедрять. Подробно SPF описан в RFC 4408.