30 Январь, 2014

Exim4 smarthost smtp + hide received headers

Возникла задача запилить почтовый сервер для пересылки писем который бы работал в качестве релея и отправлял письма через внешний smtp другого сервера. Также надо было обеспечить отсутствие в заголовках писем адресов серверов которые коннектятся к нему (по умолчанию все почтовые сервера через которые шла пересылка добавляются в заголовки Received:).

Вот собственно конфиги:

/etc/exim4/update-exim4.conf.conf

dc_eximconfig_configtype='smarthost'
dc_other_hostnames='mailsender'
dc_local_interfaces='127.0.0.1 ; xx.xx.xx.xx, ::1' //xx... это внешний ip сервера
dc_readhost='mailsender'
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets='aaa.aaa.aaa.aaa; bbb.bbb.bbb.bbb;' //ip серверов которым разрешено использовать этот сервер в качестве релея
dc_smarthost='smtp.remote_server.ru:587' //удрес внешнего smtp
CFILEMODE='644'
dc_use_split_config='true'
dc_hide_mailname='true'
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'

Еще один:

/etc/exim4/passwd.client

smtp.remote_server.ru:addr@remote_server.ru:password //реквизиты для доступа к внешнему smtp

А для затирания Received из заголовков писем с ip серверов которые коннектятся к нашему почтовику надо добавить вот эту строчку:

/etc/exim4/conf.d/transport/30_exim4-config_remote_smtp_smarthost

headers_remove = Received

Внимание! Чтобы затирание заголовков работало параметр dc_use_split_config='true' обязателен.

Home