LINUX.ORG.RU
решено ФорумAdmin

Roundcube не может пройтить аутентификацию на smtp.

 , ,


0

2

Roundcube настроен так:

$rcmail_config['smtp_server'] = 'localhost';
$rcmail_config['smtp_port'] = 25;
$rcmail_config['smtp_user'] = '%u';
$rcmail_config['smtp_pass'] = '%p';
$rcmail_config['smtp_auth_type'] = '';
$rcmail_config['smtp_auth_cid'] = null;
$rcmail_config['smtp_auth_pw'] = null;
$rcmail_config['smtp_helo_host'] = 'localhost.localdomain';
$rcmail_config['smtp_timeout'] = 0;

при попытке отправить почту вываливается ошибка:

[27-May-2013 21:44:05 +0400]: SMTP Error: SMTP error: Authentication failure: SMTP server does not support authentication (Code: ) in /usr/share/roundcubemail/program/include/rcmail.php on line 1009 (POST /mail/?_unlock=loading1369676645733&_lang=ru?_task=mail&_action=send)

При этом smtp авторизация через thunderbird проходит наура.

логи постфикса в студию. может, запрешена аутентификация для plain text (nonTLS/SSL) коннектов.

Bers666 ★★★★★
()
Ответ на: комментарий от Bers666
root@www:~# postconf | grep smtpd_sasl_security_options
smtpd_sasl_security_options = noanonymous
smtpd_sasl_tls_security_options = $smtpd_sasl_security_options

/var/log/mail.log:

May 27 22:18:58 www postfix/smtpd[2969]: connect from localhost[127.0.0.1]
May 27 22:18:58 www postfix/smtpd[2969]: disconnect from localhost[127.0.0.1

Acceptor ★★
() автор топика
Ответ на: комментарий от Bers666

Вот полный /etc/postfix/main.cf:

# ---------------------- AUTOCONFIG ---------------------------------
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
append_dot_mydomain = no
delay_warning_time = 4h
readme_directory = no
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
myhostname = site.ru
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = www.site.ru, localhost
relayhost = 
mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = ipv4
queue_directory = /var/spool/postfix
# ---------------------- AUTOCONFIG END -----------------------------

# ---------------------- LIMITS -------------------------------------
smtpd_client_message_rate_limit = 8 
anvil_rate_time_unit = 60
# smtpd_client_event_limit_exceptions = localhost
# ---------------------- LIMITS END ---------------------------------

# ---------------------- VIRTUAL DOMAINS START ----------------------
virtual_mailbox_domains         = proxy:mysql:$config_directory/mysql_virtual_domains_maps.cf
virtual_mailbox_base            = /var/vmail
virtual_mailbox_maps            = proxy:mysql:$config_directory/mysql_virtual_mailbox_maps.cf
virtual_minimum_uid             = 1002
virtual_uid_maps                = static:1002
virtual_gid_maps                = static:1002
virtual_transport               = dovecot
dovecot_destination_recipient_limit = 1
local_transport                 = virtual
# ---------------------- VIRTUAL DOMAINS END ------------------------

# ---------------------- SASL PART START ----------------------------
smtpd_sasl_auth_enable          = yes
smtpd_sasl_local_domain         = $myhostname
smtpd_sasl_exceptions_networks  = $mynetworks
smtpd_sasl_security_options     = noanonymous
broken_sasl_auth_clients        = yes
smtpd_sasl_type                 = dovecot
smtpd_sasl_path                 = private/dovecot-smtp-auth
smtpd_recipient_restrictions    = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
# ---------------------- SASL PART END ------------------------------

Acceptor ★★
() автор топика
Последнее исправление: Acceptor (всего исправлений: 2)
Ответ на: комментарий от Acceptor
- smtpd_recipient_restrictions    = permit_sasl_authenticated, permit_mynetworks, reject_unauth_des
+ smtpd_recipient_restrictions    = permit_mynetworks, permit_sasl_authenticated, reject_unauth_des
beastie ★★★★★
()
Ответ на: комментарий от beastie

ошибка в roundcube таже, но теперь /var/log/mail.log пишет следующее:

May 28 00:08:49 www postfix/smtpd[4530]: connection established
May 28 00:08:49 www postfix/smtpd[4530]: master_notify: status 0
May 28 00:08:49 www postfix/smtpd[4530]: name_mask: resource
May 28 00:08:49 www postfix/smtpd[4530]: name_mask: software
May 28 00:08:49 www postfix/smtpd[4530]: connect from localhost[127.0.0.1]
May 28 00:08:49 www postfix/smtpd[4530]: match_list_match: localhost: no match
May 28 00:08:49 www postfix/smtpd[4530]: match_list_match: 127.0.0.1: no match
May 28 00:08:49 www postfix/smtpd[4530]: match_list_match: localhost: no match
May 28 00:08:49 www postfix/smtpd[4530]: match_list_match: 127.0.0.1: no match
May 28 00:08:49 www postfix/smtpd[4530]: match_hostname: localhost ~? 127.0.0.0/8
May 28 00:08:49 www postfix/smtpd[4530]: match_hostaddr: 127.0.0.1 ~? 127.0.0.0/8
May 28 00:08:49 www postfix/smtpd[4530]: > localhost[127.0.0.1]: 220 site.ru ESMTP Postfix (Debian/GNU)
May 28 00:08:49 www postfix/smtpd[4530]: xsasl_dovecot_server_create: SASL service=smtp, realm=site.ru
May 28 00:08:49 www postfix/smtpd[4530]: name_mask: noanonymous
May 28 00:08:49 www postfix/smtpd[4530]: xsasl_dovecot_server_mech_filter: keep mechanism: PLAIN
May 28 00:08:49 www postfix/smtpd[4530]: xsasl_dovecot_server_mech_filter: keep mechanism: LOGIN
May 28 00:08:49 www postfix/smtpd[4530]: watchdog_pat: 0x7fc563ce4cb0
May 28 00:08:49 www postfix/smtpd[4530]: < localhost[127.0.0.1]: EHLO localhost
May 28 00:08:49 www postfix/smtpd[4530]: > localhost[127.0.0.1]: 250-site.ru
May 28 00:08:49 www postfix/smtpd[4530]: > localhost[127.0.0.1]: 250-PIPELINING
May 28 00:08:49 www postfix/smtpd[4530]: > localhost[127.0.0.1]: 250-SIZE 10240000
May 28 00:08:49 www postfix/smtpd[4530]: > localhost[127.0.0.1]: 250-VRFY
May 28 00:08:49 www postfix/smtpd[4530]: > localhost[127.0.0.1]: 250-ETRN
May 28 00:08:49 www postfix/smtpd[4530]: match_hostname: localhost ~? 127.0.0.0/8
May 28 00:08:49 www postfix/smtpd[4530]: match_hostaddr: 127.0.0.1 ~? 127.0.0.0/8
May 28 00:08:49 www postfix/smtpd[4530]: sasl_exceptions: localhost[127.0.0.1], match=1
May 28 00:08:49 www postfix/smtpd[4530]: match_list_match: localhost: no match
May 28 00:08:49 www postfix/smtpd[4530]: match_list_match: 127.0.0.1: no match
May 28 00:08:49 www postfix/smtpd[4530]: > localhost[127.0.0.1]: 250-STARTTLS
May 28 00:08:49 www postfix/smtpd[4530]: > localhost[127.0.0.1]: 250-ENHANCEDSTATUSCODES
May 28 00:08:49 www postfix/smtpd[4530]: > localhost[127.0.0.1]: 250-8BITMIME
May 28 00:08:49 www postfix/smtpd[4530]: > localhost[127.0.0.1]: 250 DSN
May 28 00:08:49 www postfix/smtpd[4530]: watchdog_pat: 0x7fc563ce4cb0
May 28 00:08:49 www postfix/smtpd[4530]: < localhost[127.0.0.1]: RSET
May 28 00:08:49 www postfix/smtpd[4530]: > localhost[127.0.0.1]: 250 2.0.0 Ok
May 28 00:08:49 www postfix/smtpd[4530]: watchdog_pat: 0x7fc563ce4cb0
May 28 00:08:49 www postfix/smtpd[4530]: < localhost[127.0.0.1]: QUIT
May 28 00:08:49 www postfix/smtpd[4530]: > localhost[127.0.0.1]: 221 2.0.0 Bye
May 28 00:08:49 www postfix/smtpd[4530]: match_hostname: localhost ~? 127.0.0.0/8
May 28 00:08:49 www postfix/smtpd[4530]: match_hostaddr: 127.0.0.1 ~? 127.0.0.0/8
May 28 00:08:49 www postfix/smtpd[4530]: match_hostaddr: 127.0.0.1 ~? 127.0.0.0/8
May 28 00:08:49 www postfix/smtpd[4530]: disconnect from localhost[127.0.0.1]
May 28 00:08:49 www postfix/smtpd[4530]: master_notify: status 1
May 28 00:08:49 www postfix/smtpd[4530]: connection closed
May 28 00:08:49 www postfix/smtpd[4530]: watchdog_stop: 0x7fc563ce4cb0
May 28 00:08:49 www postfix/smtpd[4530]: watchdog_start: 0x7fc563ce4cb0

Acceptor ★★
() автор топика
Ответ на: комментарий от Acceptor

SMTP server does not support authentication

все слова понятны же. вот и при коннекте на localhost:25 не было видно поддерживаемых типов аутетнификации (нет в выводе AUTH). Еще раз — добейся, чтоб postfix выдавал AUTH на EHLO при non-TLS/SSL сессии.

Bers666 ★★★★★
()
Ответ на: комментарий от Bers666

мда и правда при локальном коннекте:

root@www:~# telnet localhost 25
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 site.ru ESMTP Postfix (Debian/GNU)
EHLO site
250-site.ru
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
и при подключении извне:
220 site.ru ESMTP Postfix (Debian/GNU)
EHLO site
250-site.ru
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN

В чем затык?

Acceptor ★★
() автор топика
Ответ на: комментарий от Acceptor

мда, а дело было в этой опции:

smtpd_sasl_exceptions_networks = $mynetworks

Acceptor ★★
() автор топика
Ответ на: комментарий от Acceptor

Что то тут очень не так. AUTH PLAIN с удалённого сайта должен быть доступен только после STARTTLS или через SSL. А вот локально можно сразу разрешить AUTH или вообще без него (на доверительных отношениях).

beastie ★★★★★
()
Ответ на: комментарий от beastie

А как прикрутить starttls к определенному интерфейсу, ну чтобы локально он не работал, а снаружи работал?

Acceptor ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.