1

Иногда мне нужно отправить письмо через адрес отправителя, который обычно получен на универсальный почтовый адрес. Но обычный метод манипулирования возвратом почты не является хорошим решением. Поэтому я использую "рабочий" сценарий с i-MSCP + RoundCube:

  • фиксированные почтовые ящики и одна ловушка
  • Если мне нужно отправить через динамический почтовый адрес (будет перехвачен catchall), я регистрирую почтовый ящик (временный для этой почты или почтового ящика + пересылка) и использую новые учетные данные в RoundCube.

Но теперь у меня есть минимальный сервер без программного обеспечения для управления. Я настроил postfix с фиксированными почтовыми ящиками и одним уловом (на основе регулярных выражений + черный список). Также dovecot работает с IMAP и учетными данными. Помимо того, что в настоящее время я не могу отправить почту через почтовый клиент (проблемы с аутентификацией), я хочу гораздо более простой способ отправки почты с любого адреса. Я не хочу что-то регистрировать, просто используйте <dynamic name>@domain.tld и глобальный пароль.

Мой постфикс /dovecot:

  • несколько доменов
  • нет базы данных, только файлы хешей и регулярных выражений
  • maildir (почти стандарт)
  • нет виртуальных пользователей (у catchall есть собственный пользователь unix)
  • нет транспортных манипуляций

Что такое секретное оружие postfix для достижения этого сценария отправки?

my main.cf (вход через smtp пока не работает, общие send и imap работают:

myhostname = domain.tld
smtpd_banner = $myhostname ESMTP $mail_name
biff = no
append_dot_mydomain = no
delay_warning_time = 4h
readme_directory = no

smtpd_tls_cert_file=/etc/letsencrypt/live/domain.tld/cert.pem
smtpd_tls_key_file=/etc/letsencrypt/live/domain.tld/privkey.pem
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtp_tls_security_level = may
smtpd_tls_auth_only = no
smtpd_tls_received_header = yes
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
smtpd_tls_protocols = !SSLv2, !SSLv3

smtp_tls_mandatory_protocols = !SSLv2, !SSLv3
smtp_tls_protocols = !SSLv2, !SSLv3

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, domain.tld, localhost
relayhost = 
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
mynetworks_style = host
home_mailbox = Maildir/
virtual_alias_maps = hash:/etc/postfix/virtual, regexp:/etc/postfix/regexp_virtual

smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/recipient_access, permit_mynetworks, reject_unauth_destination

smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd

1 ответ1

0

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

Вы должны иметь возможность проходить проверку подлинности с помощью почтового адреса вашей учетной записи, но настроить учетную запись с другим адресом отправителя. Например, Thunderbird также позволяет предоставлять несколько учетных записей для каждой учетной записи SMTP, которая доступна именно для этой цели.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .