Exim - как отправлять письма с другого IP: различия между версиями

Материал из Wiki - Iphoster - the best ever hosting and support. 2005 - 2024
Перейти к:навигация, поиск
(Новая страница: « === Exim - как отправлять письма с другого IP - конфиги для ISPManager, Cpanel, VestaCP === ==== Для Cpanel ==== Нах…»)
 
 
(не показаны 3 промежуточные версии этого же участника)
Строка 16: Строка 16:
 
  *: 147.75.16.21
 
  *: 147.75.16.21
  
 +
Документация Cpanel/WHM:
 +
https://docs.cpanel.net/knowledge-base/email/how-to-configure-the-exim-outgoing-ip-address/
  
 
Проверяем отправку писем с сайта сервера через [[Проверка_работы_функции_php_mail_()|php mail ()]] , в заголовках должен быть новый IP.
 
Проверяем отправку писем с сайта сервера через [[Проверка_работы_функции_php_mail_()|php mail ()]] , в заголовках должен быть новый IP.
 
<br />
 
<br />
 
  
 
==== Для ISPManager====
 
==== Для ISPManager====
Строка 47: Строка 48:
 
  # v-list-users | tail -n +3 | awk '{print "v-list-web-domains "$1" | tail -n +3"}' | bash | awk '{ print $1,$2}'  > /etc/exim/domain2ip
 
  # v-list-users | tail -n +3 | awk '{print "v-list-web-domains "$1" | tail -n +3"}' | bash | awk '{ print $1,$2}'  > /etc/exim/domain2ip
 
  # /etc/init.d/exim restart
 
  # /etc/init.d/exim restart
 +
 +
==== Для DirectAdmin ====
 +
# cd /etc
 +
# egrep -r domainips *
 +
exim.conf:  interface = <; ${if exists{/etc/virtual/domainips}{${lookup{$sender_address_domain}lsearch*{/etc/virtual/domainips}}}}
 +
exim.conf:  interface = <; ${if exists{/etc/virtual/domainips}{${lookup{$original_domain}lsearch*{/etc/virtual/domainips}}}}
 +
 +
Поэтому изменить IP с которого идет отправка можно через файл '''/etc/virtual/domainips'''
 +
# vi /etc/virtual/domainips
 +
*:IP1
 +
site.kiev.ua:IP2
 +
 +
все письма будут отправляться с IP1, а для site.kiev.ua с IP2<br>
 +
Чтобы автоматом делалось для аккаунтов DA:
 +
# vi /usr/local/directadmin/conf/directadmin.conf
 +
add_domain_to_domainips=1
 +
 +
По-умолчанию, стоит
 +
add_domain_to_domainips=0

Текущая версия на 15:31, 7 марта 2023

Exim - как отправлять письма с другого IP - конфиги для ISPManager, Cpanel, VestaCP

Для Cpanel

Находим строку в конфиге - "remote_smtp" и ищем какой конфиг файл читает exim:

remote_smtp:
 driver = smtp
 headers_rewrite = * ${perl{get_headers_rewrite}} f
 headers_add = "${perl{get_headers_rewritten_notice}}"
 interface = ${if exists {/etc/mailips}{

У нас это - /etc/mailips


Проверяем его и указываем нужный IP для всех доменов сервера:

*: 147.75.16.21

Документация Cpanel/WHM:

https://docs.cpanel.net/knowledge-base/email/how-to-configure-the-exim-outgoing-ip-address/

Проверяем отправку писем с сайта сервера через php mail () , в заголовках должен быть новый IP.

Для ISPManager

Для ISPManager - это файл /etc/exim/domainips:

                interface = <;${lookup{$sender_address_domain}lsearch{/etc/exim/domainips}}


Для VestaCP

Пример для CentOS 6:

добавляем 2 строки снизу в конфиг файл почтового сервера exim:
 # vi /etc/exim/exim.conf
remote_smtp:
 driver = smtp
 #helo_data = $sender_address_domain
 dkim_domain = DKIM_DOMAIN
 dkim_selector = mail
 dkim_private_key = DKIM_PRIVATE_KEY
 dkim_canon = relaxed
 dkim_strict = 0
 interface = ${lookup{$sender_address_domain}lsearch{/etc/exim/domain2ip}{$value}}
 helo_data = $sender_address_domain


генерируем список доменов и на каких они IP:
# v-list-users | tail -n +3 | awk '{print "v-list-web-domains "$1" | tail -n +3"}' | bash | awk '{ print $1,$2}'  > /etc/exim/domain2ip
# /etc/init.d/exim restart

Для DirectAdmin

# cd /etc
# egrep -r domainips *
exim.conf:  interface = <; ${if exists{/etc/virtual/domainips}{${lookup{$sender_address_domain}lsearch*{/etc/virtual/domainips}}}}
exim.conf:  interface = <; ${if exists{/etc/virtual/domainips}{${lookup{$original_domain}lsearch*{/etc/virtual/domainips}}}}

Поэтому изменить IP с которого идет отправка можно через файл /etc/virtual/domainips

# vi /etc/virtual/domainips
*:IP1
site.kiev.ua:IP2

все письма будут отправляться с IP1, а для site.kiev.ua с IP2
Чтобы автоматом делалось для аккаунтов DA:

# vi /usr/local/directadmin/conf/directadmin.conf
add_domain_to_domainips=1

По-умолчанию, стоит

add_domain_to_domainips=0