Страница 1 из 1

Postfix + fetchmail !=fqdn

Добавлено: 07 авг 2014, 14:07
Phantom
Все просто. Есть postfix в котором есть правило вида

Код: Выделить всё

smtpd_recipient_restrictions = permit_mynetworks,reject_non_fqdn_recipient, reject_unknown_recipient_domain, reject_unlisted_recipient, reject_unauth_destination
И есть fetchmail,который должен опросить ящики на хостинге и перенаправить их в postfix. НО! Он это делает с подменой домена на localhost. Т.е в логах почта приходит вместо user@post.ru на user@localhost, что совсем не fqdn. Аксиома: сохранить требования по fqdn в обе стороны.
Что я только не пробовал.... но заставить fetchmail подставлять номальное доменное имя не смог. Пока работаю без reject_non_fqdn_recipient , но это не комильфо как понимаете....
У exim есть возможность указать local_domains, но тут postfix. Есть идеи куда копать?

Re: Postfix + fetchmail !=fqdn

Добавлено: 08 авг 2014, 14:40
Infernal Flame
Phantom
полные конфиги можно поглядеть?

Re: Postfix + fetchmail !=fqdn

Добавлено: 11 авг 2014, 09:46
Phantom
Да. Вот postfix.

Код: Выделить всё


#Представляемся
smtpd_banner = $myhostname ESMTP $mail_name (Linux)

#Отключаем comsat
biff = no

#Запрещаем автоматически дополнять неполное доменное имя в адресе письма
append_dot_mydomain = no

#Указываем каталог очереди для Postfix
queue_directory = /var/spool/postfix

#Устанавливаем интерфейсы на которых будет работать MTA
inet_interfaces = 127.0.0.1, 192.168.10.20

#Указываем имя нашего хоста
myhostname = server

#Указываем домен для FQDN
myorigin = domen.ru # Имя выдуманное. На самом деле тут нормальное

#Указываем карту альясов
alias_maps = hash:/etc/postfix/aliases
alias_database = hash:/etc/postfix/aliases

#Указываем транспортную карту
transport_maps = hash:/etc/postfix/transport

#Указываем адрес релей сервера для отправки почты
relayhost = тут релей SMTP провайдера

#Указываем для каких доменов будем принимать почту
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, domen.ru

#Указываем список доверенных подсетей
mynetworks = 127.0.0.0/8, 192.168.0.0/16

#Устанавливаем ограничения на размер письма (внешний MTA все равно больше не пропустит)
message_size_limit = 26624000

#Устанавливаем ограничение на размер почтового ящика = 500Mb (мы не хранилище почтового хлама)
mailbox_size_limit = 500000000

#Устанавливаем разделитель для получателя
recipient_delimiter = +

#Указываем обязательность использование клиентами команды helo
smtpd_helo_required = yes

#Отрабатываем весь сеанс, от установления соединения до RCPT TO включительно **НЕ ГЛЯДЯ НИ НА КАКИЕ ОГРАНИЧЕНИЯ**, и лишь после этого будем запускать проверки
smtpd_delay_reject = yes

#Если получатель не существует сообщить отправителю об этом
unknown_local_recipient_reject_code = 550

#Защищаемся от email флуда и ошибок клиентского ПО
smtpd_error_sleep_time = 1s
smtpd_soft_error_limit = 5
smtpd_hard_error_limit = 10
local_destination_concurrency_limit = 1

#Устанавливаем необходимые ограничения
smtpd_helo_restrictions = permit_mynetworks, reject_invalid_hostname
smtpd_sender_restrictions = permit_mynetworks, reject_non_fqdn_sender, reject_unknown_sender_domain
smtpd_recipient_restrictions = permit_mynetworks,[b] reject_unknown_recipient[/b]_domain, reject_unlisted_recipient, reject_unauth_destination
В fetchmail`е ничего фантастического нет. Разве что опция set daemon.