Назад | Перейти на главную страницу

Exim4 с несколькими сайтами

Я использую Ubuntu Server 12.04, и мне удалось установить и настроить Exim4 следующим образом это руководство.

Я установил свое имя хоста на «multiformeingegno.com», и мой / etc / hosts выглядит так:

127.0.0.1                           localhost
127.0.1.1                           multiformeingegno
IPv4 ADDRESS                        multiformeingegno.com      multiformeingegno
IPv6 ADDRESS                        multiformeingegno.com      multiformeingegno

Я прекрасно могу отправлять почту через PHP. У меня 2 вопроса.

  1. Я использую VPS, и мой хост похож на xxxxx.server.topcloud.it, я бы хотел скрыть этот адрес от моих отправленных писем! Я могу просмотреть его по тегу: Получено: от multiformeingegno.com (xxxxxx.server.topcloud.it. [IPv4 ADDRESS]) Есть ли способ отображать "multiformeingegno.com" только как "полученное от"?

  2. На моем VPS я размещаю несколько сайтов. Как я могу изменить свое имя хоста / fqdn (поправьте меня, если я неправильно использую термины) в соответствии с "используемым" доменом? Например, у меня есть контактная форма на моем веб-сайте multiformeingegno.com и еще одна контактная форма на другом веб-сайте example.com. Как я могу изменить "Обратный путь", "Получено от" и т. Д. В зависимости от веб-сайта, который фактически отправляет письма? Это возможно?

У меня есть VPS, на котором размещено несколько доменов на Ubuntu 14.04, и я хотел убедиться, что отправляемые заголовки электронной почты включают только IP или FQDN виртуального хоста.

Я сначала начал с этого руководство на Линоде. После этого я выполнил следующие шаги:

Создайте файл - / etc / exim4 / mailhelo и, используя синтаксис domain.com: helodomain.com, создайте что-то вроде:

domain1.com: domain1.com
domain2.com: domain2.com
*: defaultdomain.com

Создайте файл - /etc/exim4/conf.d/01_custom_transport и вставьте, добавьте следующее:

REMOTE_SMTP_HELO_DATA = ${lookup{$sender_address_domain}lsearch{/etc/exim4/mailhelo}{$value}{$primary_hostname}}

Отредактируйте файл - /etc/exim4/conf.d/30_exim4-config_remote_smtp и добавьте в конец файла следующее:

headers_remove = "received"

Выполнить

update-exim4.conf
service exim4 restart

Глядя на заголовки электронного письма в веб-форме, нет никаких свидетельств моего имени хоста VPS. Не забудьте создать запись SPF для виртуального хоста у своего поставщика DNS.

  1. Вы не можете скрыть адрес из отправленных писем по причине, описанной mgorven: он добавляется почтовым сервером, который получает письмо, а не вашим почтовым сервером.
  2. Вы можете настроить exim для изменения его исходящего имени (т.е. имени, используемого в EHLO / HELO), и если у вас более одного внешнего IP-адреса, вы можете настроить exim для изменения того, какой исходящий IP-адрес он использует в транспорте.

Образец транспорта:

remote_smtp_forwarder:
  debug_print = "Transport: remote_smtp_forwarder for $local_part@$domain"
  driver = smtp
  max_rcpt = 10
  hosts_max_try = 2
  interface = 10.1.2.141
  helo_data = "out.forwarder.iv.ivenue.com"

В этом примере 10.1.2.141 является исходящим через NAT и будет подключаться к вашему почтовому серверу из out.forwarder.iv.ivenue.com (208.89.136.23) и выдаст сообщение "EHLO out.forwarder.iv.ivenue.com"на ваш почтовый сервер. Я жестко запрограммировал свой на конкретный IP-адрес, но вы также можете использовать поиск, чтобы он определил интерфейс и helo_data, если хотите. Это зависит от того, сколько сложности вам нужно.

  1. Этот заголовок добавляется MTA, который получает сообщение от вашего сервера. Он получает имя хоста topcloud.it, выполняя обратный поиск по IP-адресу, с которого вы подключались. Единственный способ изменить это имя хоста - попросить вашего хостинг-провайдера изменить запись PTR для вашего IP-адреса.
  2. Я не знаю конкретно об Exim, но редко бывает, чтобы почтовый сервер менял свое объявленное имя хоста на основе отправляемого сообщения, поэтому я сомневаюсь, что вы сможете это сделать.
  3. Обратный путь определяется адресом От, поэтому это должно происходить автоматически.