Адрес получателя Postfix-Mailman отклонен: пользователь неизвестен в локальной таблице получателей

Я предполагаю, что ошибка связана с моей конфигурацией постфикса. Я выполнил шаги в инструкциях здесь, чтобы настроить apache / postfix / почтальон.

Настоящий домен заменен на mydomain.com. Я создал список рассылки по умолчанию под названием mailman. Когда я отправляю электронное письмо на [email protected], я получаю сообщение об ошибке «Адрес получателя отклонен: пользователь неизвестен в локальной таблице получателей» в mail.log.

550 5.1.1 <[email protected]>: Recipient address rejected: User unknown in local recipient table; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<mail-wi0-f174.google.com>

Выдержки из моего постфикса / main.cf:

myhostname = mydomain.com
mydestination = mydomain.com, localhost
inet_protocols = ipv4
relay_domains = mydomain.com
transport_maps = hash:/etc/postfix/transport
mailman_destination_recipient_limit = 1

Выдержки из / etc / postfix / transport

mydomain.com mailman:

Выдержка из postfix / master.cf

mailman   unix  -       n       n       -       -       pipe
  flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
  ${nexthop} ${user}

Если я правильно понимаю, как это должно работать ...

  1. почта приходит на mydomain.com
  2. postfix проверяет имя хоста на $ myhostname
  3. postfix находит mydomain.com в relay_domains
  4. postfix ретранслирует почту на транспорт, указанный в transport_maps
  5. здесь не работает? таблица postmap обнаруживает, что [email protected] совпадает с mydomain.com
  6. postmap направляет почту почтальону: транспорт, определенный в master.cf
  7. транспортный почтальон: вызывает postfix-to-mailman.py, и почтальон обрабатывает почту

person Ryan H    schedule 11.12.2014    source источник
comment
Ты прав! Рекомендуется не использовать postfix-to-mailman.py, а использовать метод псевдонима. Все шаги верны, за исключением того, что я не понимаю, почему вам нужно копировать / etc / aliases в / var / lib / mailman / data / aliases, и вам не нужно помещать mailman / data / alias в alias_database. Официальное руководство по интеграции postfix и mailman можно найти здесь, http://www.list.org/mailman-install/postfix-integration.html Имейте в виду, что / usr / local / mailman в ссылке будет / lsr / lib / mailman, если вы используете Ubuntu.   -  person wolf97084    schedule 16.12.2014


Ответы (2)


Я не знаю, можно ли это квалифицировать как ответ, но, прочитав гораздо больше, я пришел к такому выводу, и, надеюсь, это поможет кому-то другому.

Есть два способа настроить mailman с постфиксом. 1. Используйте транспортные карты, как я пытался выше. 2. Сопоставление псевдонимов.

Насколько я знаю, метод 1, который использует postfix-to-mailman.py, является неофициальным и плохо поддерживается. Итак, я попытался попробовать метод 2, и он сработал!

Шаги: Удалить способ транспортировки

Удалите строки из postfix / main.cf:

relay_domains = mydomain.com
transport_maps = hash:/etc/postfix/transport
mailman_destination_recipient_limit = 1

Удалите строки из master.cf:

mailman   unix  -       n       n       -       -       pipe
   flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
   ${nexthop} ${user}

Удалите все строки из / etc / postfix / transport:

lists.domain.com   mailman:

Переключиться на метод псевдонима

Раскомментируйте строку в /usr/lib/mailman/Mailman/mm_cfg.py

MTA = 'Postfix'

Скопируйте файл псевдонима в каталог mailman и запустите genaliases, чтобы создать псевдоним db.

sudo cp /etc/aliases /var/lib/mailman/data/aliases
sudo /usr/lib/mailman/bin/genaliases
sudo chomod g+w /var/lib/mailman/data/aliases.db

Обновите alias_maps в postfix / main.cf, чтобы указать на новый файл псевдонима

alias_maps = hash:/etc/aliases,hash:/var/lib/mailman/data/aliases
alias_database = hash:/etc/aliases, hash:/var/lib/mailman/data/aliases

Перезагрузить и перезапустить

sudo /etc/init.d/postfix reload
sudo service postfix restart
person Ryan H    schedule 12.12.2014
comment
s/chomod/chmod/ пожалуйста :) (не следует добавлять псевдонимы mailman в alias_database, как указано ниже) - person Michael Shigorin; 21.07.2015
comment
Я пробовал вашу конфигурацию, но когда я пытаюсь отправить в список, я получаю ошибку 554 (отказано в доступе к реле), поэтому мне пришлось изменить, но использовать транспортные карты (с помощью сценария postfix-to-mailman.py). Любые идеи? - person Vasilis Lourdas; 15.10.2015

Я использую Ubuntu 14.04. После долгих мучений я получил работу со списком рассылки со следующими шагами:

  1. В /etc/apache2/conf-enabled/mailman.conf я изменил следующее. (Для apache2 версии 2.4 и выше)
<Directory /var/lib/mailman/archives/public/>
Options FollowSymlinks
AllowOverride None
#    Order allow,deny
#    Allow from all
Require all granted
</Directory>
  1. Даже тогда, когда в список не было отправлено письмо, веб-страница

http://finelists.kalidoss.com/pipermail/finelists/

пожаловался, что у меня нет разрешения на просмотр страницы.

  1. Затем я перешел в веб-интерфейс «админ» для «финальных списков».

http://finelists.kalidoss.com/cgi-bin/mailman/admin/finelists

и добавил идентификаторы электронной почты (от которых я могу получать письма) как доверенные.

  1. После этого я отправил чек от [email protected] на [email protected] (письма, адресованные [email protected], будут доставлены на finelists), и оно было отображено нормально.

  2. Используйте подходящие заменители для финальных списков, kalidoss.com, kk @ gmail.com, test @ gmail.com

Надеюсь, это кому-то поможет.

person M. Kalidoss    schedule 26.03.2016