Настройка PostfixВ этой главе мы будем настраивать Postfix для приема почты единственного домена. Наш компьютер будет называться mail.example.com, а домен – example.com. Выполним следующие шаги:
1. Настроим в Postfix корректное имя хоста в приветствии почтовых клиентов.
2. Настроим Postfix на прием почты для домена example.com.
3. Настроим Postfix на добавление example.com к сообщениям, отправленным только с именем пользователя.
4. Настроим Postfix на доставку почты, адресованной пользователю root, в другой почтовый ящик.
5. Настроим Postfix на доставку почты различным пользователям в соответствии с указанным адресом.
6. Установим для Postfix разрешение на пересылку исходящей почты вашей сети.
Настройка имени хоста в заголовке smtpd
Когда почтовый клиент и сервер «встречаются», они приветствуют друг друга, называя свои DNS имена. Первое, что мы сделаем, – это определим имя, с которым Postfix будет представляться почтовым клиентам. Если имя вашего хоста совпадает с тем, которое вы хотите использовать в приветствии, вам повезло: ничего менять не надо.
Если же в вашей системе установлено имя хоста www.example.com, а вы хотите, чтобы Postfix, работающий на этой же машине, использовал в своем приветствии имя mail.example.com, то в этом нет ничего сложного.
Предупреждение
Когда Postfix передает сообщения другим почтовым серверам, он выступает в качестве почтового клиента. Представляясь почтовому серверу, он по умолчанию использует параметр myhostname в приветствии HELO. Некоторые почтовые серверы настроены так, что отвергают сообщение, если имя в HELO не соответствует полностью определенному доменному имени, полученному обратным разрешением. Либо убедитесь, что имя хоста, заданное для Postfix, соответствует имени, получаемому по IP адресу вашего сервера либо установите значение параметра smtp_helo_name в соответствии с официальным именем из пространства имен DNS.
Есть два способа назначить другое имя: задать значение параметра myhostname или параметра mydomain.
Параметр myhostnameЧтобы установить значение параметра myhostname, отредактируйте файл /etc/postfix/main.cf. Откройте этот файл в любом редакторе и найдите строку myhostname. Затем введите полностью определенное доменное имя хоста:
myhostname = mail.example.com
Как только вы задали параметр myhostname, Postfix может автоматически получить значение mydomain. Postfix просто отбрасывает все до первой точки включительно. А поскольку мы задали параметру myhostname значение mail.example.com, Postfix установит в mydomain значение example.com – что нам и требовалось.
Параметр mydomainМожно не использовать параметр myhostname, а ограничиться установкой mydomain. Такой вариант может оказаться очень удобным, если вам надо растиражировать конфигурацию на несколько машин.
mydomain = example.com
Как только вы задали параметр mydomain, Postfix может получить значение myhostname, объединив вывод команды uname n на данном хосте созначением mydomain. Из этого следует, что, если в файле main.cf явно задан только параметр mydomain и вы копируете его на другие машины в этом же домене (example.com в нашем примере), Postfix самостоятельно сформирует правильное имя хоста.