Если вам все равно нужна SMTP-аутентификация и вы просто хотите, чтобы скрипт действовал как MDA , я думаю, вы можете сделать это, просто установив mailbox_command = /path/to/my/script
в /etc/postfix/main.cf
и настроив схему аутентификации.Если у вас также работает dovecot
, я могу рекомендовать postfix
пройти аутентификацию через dovecot
, что очень настраивается, когда дело доходит до аутентификации SASL.
Обновление
Поскольку вы будетеимея незашифрованные пароли, передаваемые по сети (при условии, что эта услуга доступна из сети), я рекомендую разрешить аутентификацию только по зашифрованной линии.Конфигурация, которую я собираюсь показать, будет по-прежнему принимать почту, для которой сервер является пунктом назначения без аутентификации.Насколько я знаю, такое поведение предписано RFC для SMTP-серверов, которые доступны из Интернета.
Объявить аутентификацию SASL только по зашифрованным соединениям
smtpd_tls_auth_only=yes
Не требовать всехразговаривать с вами по зашифрованному каналу
smtpd_tls_security_level=may
шаблон SASL
smtpd_sasl_auth_enable = yes
smtpd_sasl_authenticated_header = yes
smtpd_sasl_local_domain = $mydomain
Для кого принимать почту.Это работает слева направо, до тех пор, пока не встретится разрешающее или запрещающее правило.Резервное поведение будет разрешать.
smtpd_recipient_restrictions = permit_auth_destination, reject_plaintext_session, permit_sasl_authenticated, reject
permit_auth_destination
, поскольку первое правило будет гарантировать, что клиенты могут доставлять почту пользователям, за которые я чувствую ответственность без проверки подлинности.Клиенты могут выбрать, использовать ли TLS или нет. reject_plaintext_session
, поскольку второе правило гарантирует, что все остальные правила, расположенные ниже по линии, могут предполагать зашифрованный канал. permit_sasl_authenticated
является self-explanatory reject
, поскольку последнее правило в основном меняет политику по умолчанию на "deny".
Если вы не хотите принимать почту без аутентификации SMTP, вы можете захотетьотбросьте первое правило smtpd_recipient_restrictions
.
Не показана конфигурация сертификата SSL и как узнать о нем постфикс (последний из которых прост).