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

Адрес отправителя отклонен: не принадлежит пользователю

У меня есть установка Postfix в моем SBC, работающая под управлением Parabola GNU / Linux-libre (Arch и ALARM-based) плюс Dovecot.

Он работает очень хорошо, и я создал учетную запись в Thunderbird. Единственная проблема, которую я обнаружил, заключается в том, что при отправке писем я получаю:

Sender address rejected: not owned by user megver83

И я везде искал решение, например

но ничего, это действительно безумие. Иногда проблемы, которые они решают, связаны с использованием MySQL, но, к сожалению, MySQL не работает на моем сервере, поэтому я на всякий случай установил PostgreSQL.

mail.log:

Aug 28 16:27:30 localhost postfix/smtpd[12064]: connect from gateway[192.168.50.1]
Aug 28 16:27:31 localhost postfix/smtpd[12064]: Anonymous TLS connection established from gateway[192.168.50.1]: TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)
Aug 28 16:27:31 localhost postfix/trivial-rewrite[12070]: warning: do not list domain eumela.ga in BOTH mydestination and virtual_alias_domains
Aug 28 16:27:31 localhost postfix/trivial-rewrite[12070]: warning: do not list domain eumela.ga in BOTH mydestination and virtual_mailbox_domains
Aug 28 16:27:31 localhost postfix/smtpd[12064]: NOQUEUE: reject: RCPT from gateway[192.168.50.1]: 553 5.7.1 <megver83@eumela.ga>: Sender address rejected: not owned by user megver83; from=<megver83@eumela.ga> to=<megver83@eumela.ga> proto=ESMTP helo=<[192.168.50.10]>
Aug 28 16:27:33 localhost postfix/smtpd[12064]: disconnect from gateway[192.168.50.1] ehlo=2 starttls=1 auth=1 mail=1 rcpt=0/1 quit=1 commands=6/7

Здесь ^ Я пытался автоматически отправить мне письмо, но это происходит со всеми адресами, на которые я пишу.

$ postconf -n
alias_database = $alias_maps
alias_maps = hash:/etc/postfix/aliases
append_dot_mydomain = no
biff = no
broken_sasl_auth_clients = yes
command_directory = /usr/bin
compatibility_level = 2
daemon_directory = /usr/lib/postfix/bin
data_directory = /var/lib/postfix
debug_peer_level = 2
debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5
home_mailbox = Maildir/
html_directory = no
inet_interfaces = all
inet_protocols = ipv4
mail_owner = postfix
mailbox_size_limit = 134217728
mailq_path = /usr/bin/mailq
manpage_directory = /usr/share/man
message_size_limit = 134217728
meta_directory = /etc/postfix
mydestination = localhost.$mydomain, localhost, $mydomain, smtp.$mydomain
mydomain = eumela.ga
myhostname = pi.eumela.ga
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix
relay_domains = *
relayhost =
sample_directory = /etc/postfix
sendmail_path = /usr/bin/sendmail
setgid_group = postdrop
shlib_directory = /usr/lib/postfix
smtp_tls_note_starttls_offer = yes
smtp_tls_security_level = may
smtpd_helo_required = yes
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain =
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = dovecot
smtpd_sender_login_maps = $virtual_mailbox_maps
smtpd_tls_cert_file = /etc/letsencrypt/live/smtp.eumela.ga/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/smtp.eumela.ga/privkey.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_security_level = may
unknown_local_recipient_reject_code = 550
virtual_alias_maps = hash:/etc/postfix/virtual
virtual_mailbox_domains = hash:/etc/postfix/virtual-mailbox-domains
virtual_mailbox_maps = hash:/etc/postfix/virtual-mailbox-users

ваши параметры конфигурации SASL выглядят правильно - Postfix будет полагаться на Dovecot в части аутентификации. Я полагаю, ваша аутентификация работает [1]. Пользователь, с которым вы выполняете аутентификацию, может отличаться от адреса отправителя электронной почты. Вы хотите сообщить Postfix, какие аутентифицированные пользователи делают карта дополнительным отправителям. Это, кстати, то же самое и для получения, где вы можете назначить получателей пользователям системы в /etc/aliases или другими способами.

Эти линии показывают, где искать

smtpd_sender_login_maps = $virtual_mailbox_maps
virtual_mailbox_maps = hash:/etc/postfix/virtual-mailbox-users

И отредактируйте файл соответствующим образом, для пример

#  envelope sender   owner (SASL login names)
sender@example.com   user

Тогда беги postmap -f /etc/postfix/virtual-mailbox-users и перезагрузите постфиксную службу. После этого postfix позволит вам отправлять с отображенными записями.

[1]: например: userdb {driver = passwd} и passdb {driver = pam} который будет указывать на аутентификацию системного пользователя или виртуальных пользователей через файл passwd / userdb или серверную часть SQL

О, я вижу, это проблема с файлом master.cf. Где сказано:

  -o smtpd_helo_restrictions=reject_sender_login_mismatch

И просто прокомментировал это

#  -o smtpd_helo_restrictions=reject_sender_login_mismatch