INNOV.RU | Информационный портал 

   
каждый месяц нас читают более 300 тысяч человек .
КУРСЫ КРИПТОВАЛЮТ

 

Авторизованная почтовая рассылка или как случайно не попасть в спамеры


В статье описана методика настроек домена и почтового сервера для проведения  рассылок и уведомлений пользователям с учётом современных стандартов защиты от спама. Статья будет полезна для  администраторов, а также владельцев сайтов, работающих с базами клиентов.



17.03.2014 12:46
фото: INNOV
3083

Авторизованная почтовая рассылка или как случайно не попасть в спамеры

Сравнительно недавно было отмечено, что участились случаи незавершенной регистрации новых пользователей нашего прокси сервиса BillProxy.NET. Иными словами, желающие купить индивидуальные socks5 прокси регистрировали аккаунты на нашем сайте, после чего им на почту приходило письмо со ссылкой для активации и вот эту самую ссылку почему-то никто не нажимал... Проанализировав статистику, мы обнаружили, что подавляющее большинство таких вот "странных" регистраций приходилось на клиентов известного почтового сервиса Gmail.com. Оказалось, что регистрационные письма от нашего прокси-сервиса Gmail автоматически отправлял в "Спам" - где их, понятное дело, мало кто просматривал... Почитав свежие статьи, мы выяснили, что такое отношение к нашим письмам было вызвано главным образом отсутствием у них так называемой DKIM-подписи (DomainKeys Identified Mail). Следовательно, нам было необходимо в кратчайшие сроки сделать наш почтовый сервер соответствующим современным стандартам защиты от спама.

Что имелось у нас в распоряжении:

  • Панель управления доменами billproxy.net и billproxy.com, зарегистрированных у GoDaddy Inc.
  • Сервер с установленной CentOS 5.5
  • Почтовый сервер Exim 4.72
  • Две головы с минимальными знаниями в области администрирования и более-менее прямые руки ;)

Начать было решено с установки пакета OpenDKIM (оказалось, что у нас на сервере его нет):

 # yum install opendkim 
После успешной установки OpenDKIM необходимо было запустить:
 # service opendkim start 
На всякий случай проверили его статус:
 # service opendkim status 
Следующим шагом необходимо было сгенерировать DKIM-ключи для наших доменов: открытый и закрытый. Следует отметить, что для хранения ключей лучше всего создать отдельную папку (в нашем случае создали папку с именем dkim_keys) и сделать её владельцем наш mail-сервер.
 # opendkim-genkey -D /etc/virtual/dkim_keys -d billproxy.net 
      
-s mail
В результате выполнения этой команды в папке dkim_keys появились два файла - mail.txt и mail.private, содержащие открытый и закрытый ключи соответственно. Однако для дальнейшего обращения их было удобно переименовать и заодно уж сменить владельца:
 # mv mail.txt billproxy.net.txt # mv mail.private 
      
billproxy.net.key # chown mail:mail billproxy.net.txt # chown
mail:mail billproxy.net.key

С OpenDKIM закончили, перешли к настройке почтового сервера Exim. Прежде чем вносить какие-либо изменения в его конфигурационный файл (exim.conf), сервер следовало бы остановить:

 # service exim stop 
Затем открыли файл exim.conf, нашли в нём строки вида
 remote_smtp: driver = smtp 
и модифицировали следующим образом:
 DKIM_DOMAIN = ${lc:${domain:$h_from:}} 
    
DKIM_FILE = /etc/virtual/dkim_keys/${lc:${domain:$h_from:}}.key
DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}}
remote_smtp: driver = smtp dkim_domain = DKIM_DOMAIN
dkim_selector = mail dkim_private_key = DKIM_PRIVATE_KEY
Пришло время вновь запустить Exim:
 # service exim start 

И последнее, что оставалось нам сделать - внести изменения в настройки самих доменов, добавив соответствующие открытым ключам записи типа TXT в Zone File. Например, открытый DKIM-ключ для домена billproxy.net находился в файле billproxy.net.txt. Его содержимое было скопировано так:

 # cat billproxy.net.txt 
Далее выделили всё, что было заключено в кавычках, а именно (приведено не полностью):
 v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQU........Byd9KNwIDAQAB 
В настройках домена была создана запись с именем mail._domainkey, а в поле, соответствующее значению, была вставлена выделенная ранее строка. Кроме того, дополнительно была создана запись с именем _adsp._domainkey и значением dkim=unknown. В итогеe у нас получилось следующее:

11.jpg

Таким образом, все настройки были завершены и нам оставалось только проверить их реализацию в действии, направив самим себе письмо от нашего прокси-сервиса на Gmail'овский ящик. Как видно из приведённого ниже рисунка, проверка DKIM-подписи домена была произведена Gmail'ом вполне успешно:

22.jpg

Надеемся, что изложенная в данной статье последовательность манипуляций с настройками Вам также пригодится и, повторив их у себя, Вы значительно повысите степень доверия к отправляемым Вашим mail-сервером письмам со стороны Gmail и других почтовых служб, использующих проверку через DKIM.



ЧИТАЙТЕ ТАКЖЕ

Решение проблемы регистрации в ЧатГПТ в России Решение проблемы регистрации в ЧатГПТ в России
Искусственный интеллект стал ключевым элементом нашего быта, причём Chat GPT от OpenAI выделяется как одно из наиболее обещающих направлений в этой сфере
Значение специализированных агентств по рекрутингу ИТ-специалистов Значение специализированных агентств по рекрутингу ИТ-специалистов

архив: 2013  2012  2011  1999-2011 новости ИТ гость портала 2013 тема недели 2013 поздравления