Назад | Перейти на главную страницу

Postfix master.cf против main.cf

Я часто вижу, что одни и те же настройки можно указать как в main.cf, так и в master.cf, используя префикс -o.

Мой вопрос: переопределяет ли одно другое, и если да, то какому файлу будет отдан приоритет, если в обоих найдены одинаковые настройки (с разными значениями)?

Например, если

smtpd_tls_auth_only=yes

был указан в main.cf, но

-o smtpd_tls_auth_only=no 

было указано в master.cf, на какой postfix обратить внимание?

Как задокументировано,

-o name=value
                 Override  the  named  main.cf  configuration
                 parameter.

main.cf устанавливает значения по умолчанию, используемые всеми службами, определенными в master.cf; Параметры -o в master.cf могут отменять их для каждой службы.

В основном настройки в main.cf действительны и используются глобально, если они не переопределены в master.cf для определенных демонов Postfix (smtpd, trivial-rewrite, cleanup, pickup, ...). Вы можете указать, например, smtp_tls_security_level = may в main.cf и отключите его для порта отправки, привязанного к localhost для smtpd демон:

localhost:submission inet n       -       -       -       -       smtpd
  -o smtpd_tls_security_level=none

Но для порта отправки на внешнем IP-адресе вы можете применить шифрование:

1.2.3.4:submission inet n       -       -       -       -       smtpd
  -o smtpd_tls_security_level=encrypt
  -o ...

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

127.0.0.1:10025 inet    n       -       -       -       -       smtpd
  -o content_filter=
  -o ...
  -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_address_mappings
  -o ...

Конечно, во время обычной работы вне Amavis вам нужны сопоставления адресов, поэтому по умолчанию они включены в main.cf.