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

Postfix - Проблемы аутентификации SASL Cram-MD5 с StartTLS

Недавно я настроил свой почтовый сервер, который использует Postfix и Courier. Все работает, кроме аутентификации при отправке почты через мой сервер Postfix (работающий на порту 587), на котором включен StartTLS и используется SASLAuthentication с виртуальными доменами и картами.

Журналы

Когда я пытаюсь подключиться к своему почтовому клиенту для отправки сообщения, я получаю следующие сообщения, которые отображаются в /var/log/mail.log:

postfix/smtpd[5108]: connect from ip domain.com[xxx.xxx.xxx.xxx]
postfix/smtpd[5108]: Anonymous TLS connection established from domain.com[xxx.xxx.xxx.xxx]: TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)
postfix/smtpd[5108]: warning: domain.com[xxx.xxx.xxx.xxx]: SASL CRAM-MD5 authentication failed: authentication failure
postfix/smtpd[5108]: disconnect from domain.com[xxx.xxx.xxx.xxx]

Конфигурация

/etc/postfix/main.cf:

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
append_dot_mydomain = no
readme_directory = no
smtpd_use_tls = yes
smtpd_tls_received_header = yes
smtpd_tls_cert_file = /etc/ssl/private/domain_com.crt
smtpd_tls_key_file = /etc/ssl/private/domain.key
smtpd_tls_CAfile = /etc/ssl/private/certificates.ca-bundle
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
broken_sasl_auth_clients = yes
smtpd_sasl_path = smtpd
smtpd_tls_session_cache_timeout = 3600s
smtpd_tls_loglevel = 1
tls_random_source = dev:/dev/urandom
myhostname = domain.com
virtual_mailbox_domains = /etc/postfix/virtual_domains
virtual_mailbox_base = /home/vmail
virtual_mailbox_maps = hash:/etc/postfix/virtual_maps
virtual_minimum_uid = 100
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
myorigin = domain.com
mydestination = domain.com, localhost.com, , localhost
        reject_unknown_recipient_domain,
        reject_unauth_destination,
        reject_rbl_client sbl.spamhaus.org,
        permit
smtpd_helo_restrictions = reject_invalid_helo_hostname,
        reject_non_fqdn_helo_hostname,
        reject_unknown_helo_hostname
smtpd_client_restrictions = reject_rbl_client dnsbl.sorbs.net
smtpd_sasl_local_domain = 
smtpd_sasl_authenticated_header = yes
smtp_use_tls = yes
smtp_tls_note_starttls_offer = yes
home_mailbox = Maildir/
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous noplaintext 
smtpd_recipient_restrictions = reject_unauth_destination permit_sasl_authenticated
smtpd_tls_security_level = encrypt
smtpd_tls_loglevel = 1
smtpd_tls_auth_only = no

/ и т.д. / по умолчанию / saslauthd:

START=yes
PWDIR="/var/spool/postfix/var/run/saslauthd"
PARAMS="-m ${PWDIR}"
PIDFILE="${PWDIR}/saslauthd.pid"
DESC="SASL Authentication Daemon"
NAME="saslauthd"
MECHANISMS="rimap"
MECH_OPTIONS="127.0.0.1"
THREADS=5
OPTIONS="-c -r -m /var/spool/postfix/var/run/saslauthd"

Справочники

ls / и т.д. / постфикс / sasl /:

(empty)

ls / etc / postfix /:

dynamicmaps.cf  main.cf  master.cf  postfix-files  postfix-script  post-install  sasl  smtpd.conf  virtual.db  virtual_domains  virtual_maps  virtual_maps.db

ls / etc / courier /:

authdaemonrc  imapd  imapd.cnf  imapd-ssl  shared  userdb  userdb.dat  userdb.lock  userdbshadow.dat

Ноты

Вопросы

  1. Как исправить свою конфигурацию, чтобы включить функцию аутентификации.
  2. Можно ли отладить SASLAuthentication, он только сообщает мне, успешно он или нет, но не о том, что, например, имя пользователя не может быть найдено.

Если вам нужна дополнительная информация, не стесняйтесь спрашивать. Если вы заметили что-то странное в моей конфигурации или у вас есть предложения по улучшению, также сообщите мне. Большое спасибо. Любая помощь очень ценится.