Есть выделенный сервер, на котором кроме основного IP есть несколько дополнительных. Управление сервером лежит на плечах ISPManager Lite. И вот встала задача - один конкретный домен "повесить" на отдельный дополнительный IP. Средствами ISPManager это делается легко, но загвоздка вот в чем была: при отправке писем через exim (стандартной функцией mail() в php) получатель видел в заголовках информацию об основном IP адресе, а не о том, который фактически привязан к домену.
То есть.
1.1.1.1 - основной IP сервера, maindomain.ru - домен, привязанный к основному IP сервера.
2.2.2.2 - дополнительный IP. mydomain.ru - домен на этом доп. IP.
Отправляю почту с mydomain.ru, а в заголовках видим следующее:
ISPManager имеет возможность привязки отдельных доменов к отдельным IP только в версии Pro, а у меня версия Lite. Но задачу решить можно.
1. Открываем файл /etc/exim4/exim4.conf.template
2. Находим блок remote_smtp, где видим параметр interface. Он должен быть вот таким:
interface = <;${extract{1}{:}{${lookup{$sender_address_domain}lsearch{/etc/exim4/domainips}}}}
Видим, что IP интерфейса может браться из файла /etc/exim4/domainips, где формат должен быть следующим:
5. Перезагружаем exim /etc/init.d/exim4 restart
6. Пробуем отправить себе почту с домена mydomain.ru
Еще есть возможность убрать информацию о maindomain.ru, но об этом в другой раз напишу.
Подчеркиваю - этот способ работает при установленном ISPManager Lite, другие варианты я не рассматривал.
То есть.
1.1.1.1 - основной IP сервера, maindomain.ru - домен, привязанный к основному IP сервера.
2.2.2.2 - дополнительный IP. mydomain.ru - домен на этом доп. IP.
Отправляю почту с mydomain.ru, а в заголовках видим следующее:
Received: from maindomain.ru (mydomain.ru. [1.1.1.1])А надо, что бы информации о 1.1.1.1 не было.
ISPManager имеет возможность привязки отдельных доменов к отдельным IP только в версии Pro, а у меня версия Lite. Но задачу решить можно.
1. Открываем файл /etc/exim4/exim4.conf.template
2. Находим блок remote_smtp, где видим параметр interface. Он должен быть вот таким:
interface = <;${extract{1}{:}{${lookup{$sender_address_domain}lsearch{/etc/exim4/domainips}}}}
Видим, что IP интерфейса может браться из файла /etc/exim4/domainips, где формат должен быть следующим:
mydomain.ru:2.2.2.24. Открываем файл /etc/exim4/domainips и прописываем необходимые связки как указано выше.
anotherdomain.ru:3.3.3.3
*:1.1.1.1 #указывается основной IP, на случай если связка домен:IP не найдена.
5. Перезагружаем exim /etc/init.d/exim4 restart
6. Пробуем отправить себе почту с домена mydomain.ru
mail('maymail@gmail.com', 'Subject', 'Exim4 IP test');
Где смотрим оригинал письма и видим инфомрацию:Received: from maindomain.ru (mydomain.ru. [2.2.2.2])То есть, информация об основном IP отсутствует, а прописан именно тот, на который привязан домен.
Еще есть возможность убрать информацию о maindomain.ru, но об этом в другой раз напишу.
Подчеркиваю - этот способ работает при установленном ISPManager Lite, другие варианты я не рассматривал.
3 коммент.:
Приветствую. А как убрать информацию о maindomain.ru ?
Спасибо
Вам понадобится написан собственный блок received_header_text, в котором вы сможете сами определить какая информация должна быть указана и в каком виде. Например, можно убрать информацию об использовании Exim или его версии и многое другое.
http://www.exim.org/exim-html-current/doc/html/spec_html/ch-main_configuration.html - найдите там блок с описанием и примером конфигурации.
а у меня упорото не посылает со второго IP, а всегда подставляет только основной. :(
Отправить комментарий