RSS
 

Хозяйке на заметку: Postfix SMTP Auth и соответствие envelope-from

28 мая

Для пользователей, которые успешно авторизовались с помощью SMTP Auth (логин типа vasya@domain), мы разрешаем отсылать письма через наш почтовый сервер с любого IP-адреса (то есть поддерживаем roaming users). В определенный момент мы натолкнулись на неприятный случай – у одного клиента был украден/заснифлен его логин-пароль и с нескольких IP-адресов была массированная рассылка спама. При этом, так как клиент “представился”, ему было позволено указывать любой envelope-from, чем и воспользовались спаммеры. Ситуация расстроила, адреса зафильтровали, клиентский логин/пароль заблокировали, но нужно было что-то решать в комплексе – для авторизованных клиентов разрешать использование envelope-from, соответствующий их логину.

В postfix есть возможность указать ограничение reject_sender_login_mismatch, при использовании которого производится проверка в таблице smtpd_sender_login_maps соответствия логина и MAIL FROM. Но тут возникает другой момент – для тысяч почтовых ящиков генерировать такую таблицу можно, но это потребует напильника в postfixadmin, который используется для управления аккаунтами клиентов. Немного посоображав, была реализована следующая грубая, но работающая схема с помощью mysql maps: описываем таблицу в main.cf:

smtpd_sender_login_maps         = mysql:/usr/local/etc/postfix/sql/mysql_authentificated_users.cf

Сам mysql_authentificated_users.cf прост до безобразия:

user = mysql_username
password = mysql_password
hosts = database_host
dbname = database_name
query          = SELECT '%s'

Не забываем в main.cf указать, чтобы те, кто используют несовпадающий envelope-from, получали reject:

smtpd_sender_restrictions =
reject_authenticated_sender_login_mismatch
permit

Вот такая история из цикла “неэлегантно, но практично” :)

 

Tags: ,

Leave a Reply

You must be logged in to post a comment.

  1. I have a fiverr gig

    января 31, 2011 at 22:05

    I Am doing a fiverr gig myself i’m selling 1000 auto-aprove blogs for only a fiver! its amazing