Postfix - SASL - не проходит аутентификация - вырезается домен
Привет всем!
Система построена на Postfix, mysql, pam_mysql, sasl, cyrus и должна была поддерживать некторое количество виртуальных доменов, что она успешно и делает.
Но в результате того, что не проходит SASL аутентификация, почту отправить (исключая релей) нельзя. Долго копался, в итоге из логов понял, что postfix пытается произвести SASL аутентификацию следующим образом.
На вход smtpd получает
user@domain.tld и преобразовывает его в -> user
Далее пытается проверить через SASL имя пользователя user.
Но поскольку домены виртуальные, то в базе записано именно user@domain.tld, а не user.
Далее все понятно - проверка возвращает false и далее relay denied.
Через saslauthd проверка проходит замечательно.
Подскажите, каким образом запретить ему вырезать домен из имени пользователя.
На всякий случай частичный конфиг postfix, saslauthd и pam_mysql
POSTFIX
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_limit = 51200000
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
#virtual_transport = virtual
# Additional for quota support
virtual_create_maildirsize = yes
virtual_mailbox_extended = yes
virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_maildir_limit_message = Sorry, the user's maildir has overdrawn his diskspace quota, please try again later.
virtual_overquota_bounce = yes
virtual_mailbox_base = /var/spool/vmail
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
alias_database = hash:/etc/postfix/aliases
smtpd_sasl_local_domain =
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination
#smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination,permit_sasl_authenticated,reject_non_fqdn_hostname,reject_non_fqdn_sender,reject_non_fqdn_recipient,reject_unauth_destination,reject_unauth_pipelining,reject_invalid_hostname,reject_rbl_client opm.blitzed.org,reject_rbl_client list.dsbl.org,reject_rbl_client bl.spamcop.net,reject_rbl_client sbl-xbl.spamhaus.org
smtpd_tls_auth_only = no
smtp_use_tls = yes
smtpd_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
SASLAUTHD
cat smtpd.conf
pwcheck_method: saslauthd
log_level: 7
mech_list: PLAIN LOGIN
allow_plaintext: true
PAM_MYSQL
auth required pam_mysql.so user=postfix passwd=xxxx host=localhost db=postfix table=mailbox usercolumn=username passwdcolumn=password crypt=1
account sufficient pam_mysql.so user=postfix passwd=xxxx host=localhost db=postfix table=mailbox usercolumn=username passwdcolumn=password crypt=1
Заранее спасибо!