Postfix: смена адреса From для писем root@hostname

Автор: | 10/02/2013
 

postfixПри получении писем с сервера, различных логов и прочей служебной информации, в поле From: указывался адрес:

Charlie Root <[email protected]>

Что бы изменить его – выполним следующие действия.

Операционная система:

# uname -v
FreeBSD 9.0-RELEASE-p3 #0: Tue Jun 12 01:47:53 UTC 2012

Почтовый сервер MTA:

# pkg_info | grep postfix
postfix-2.9.4_2,1

В файл конфигурации сервера Postfix добавляем строку:

sender_canonical_maps = hash:/usr/local/etc/postfix/generic

Теперь создаём файл /usr/local/etc/postfix/generic и в него добавляем строку:

[email protected] [email protected]

Где [email protected] – адрес, который должен устанавливаться в поле From:.

Теперь выполняем:

# postmap /usr/local/etc/postfix/generic

И даём команду серверу Postfix перечитать конфигурационный файл:

# service postfix reload

Теперь, в письмах с сервера в поле From: будет указываться:

Feb 10 11:38:49 akira postfix/qmgr[82576]: B041D50F61: from=<1th@setevoy.kiev.ua>, size=388, nrcpt=1 (queue active)

И напоследок – пример простого скрипта для отправки почты с сервера, из-за которого и возникла необходимость изменить поле From:, т.к. мобильный оператор не принимал письма с обратным адресом типа [email protected]:


#!/usr/local/bin/bash
# Script to send a email

# Тема письма
SUBJECT=”Subject here

# Адрес получателя
EMAIL=”[email protected]

#Файл, который будет содержать текст,
#который позже будет вставлен в тело письма
EMAILMESSAGE=”/tmp/message.txt”

#Текст, который должен быть добавлен в письмо.
#Первая строка добавляется с помощью >
#Последующие – с помощью >>
echo “Message text here” > $EMAILMESSAGE

#Отправка письма с помощью /bin/mail
mail -s “$SUBJECT” “$EMAIL” < $EMAILMESSAGE