Tôi có một thiết lập Postfix / Dovecot / Roundcube mà tôi sử dụng cá nhân, cũng như cung cấp cho người dùng khác. Tôi đang cố gắng chuyển toàn bộ thiết lập này sang một hộp mới, nhưng gặp một số vấn đề.
Nhận thư đang hoạt động tốt, (chỉ được kiểm tra nội bộ, tên miền chưa được chuyển.) Cũng như IMAP & SMTP bên ngoài hoạt động tốt khi sử dụng TLS / SSL (ví dụ Thunderbird)
Vấn đề là với thiết lập roundcube của tôi, có thể sử dụng IMAP đến 127.0.0.1 và hiển thị email của người dùng một cách tuyệt vời, nhưng không thể gửi e-mail, chỉ cần tuyên bố: "SMTP Error (220): Authentication failed."
Điều kỳ lạ là, với cùng cấu hình Postfix / Dovecot mà tôi đã sử dụng trên máy chủ hiện tại của mình, Roundcube không còn có thể truy cập nó trên máy chủ mới của tôi. Đây là cấu hình roundcube có liên quan:
$config['smtp_server'] = 'tls://localhost';
// Log SMTP conversation to <log_dir>/smtp or to syslog
$config['smtp_debug'] = true;
// SMTP port (default is 25; use 587 for STARTTLS or 465 for the
// deprecated SSL over SMTP (aka SMTPS))
$config['smtp_port'] = 587;
// SMTP username (if required) if you use %u as the username Roundcube
// will use the current username for login
$config['smtp_user'] = '%u';
// SMTP password (if required) if you use %p as the password Roundcube
// will use the current user's password for login
$config['smtp_pass'] = '%p';
Nhật ký / lỗi của Roundcube chỉ đơn giản nói:
[02-Jan-2015 16:55:49 America/New_York] STARTTLS failed ():
[02-Jan-2015 16:55:49 -0500]: SMTP Error: SMTP error: Authentication failure: STARTTLS failed (Code: ) in /var/wwwmail/program/lib/Roundcube/rcube.php on line 1505 (POST /?_task=mail&_unlock=loading1420235752730&_lang=undefined&_framed=1?_task=mail&_action=send)
Trong khi nhật ký / smtp của Roundcube hiển thị:
[02-Jan-2015 17:50:01 -0500]: Recv: 220 example.net ESMTP Postfix
[02-Jan-2015 17:50:01 -0500]: Send: EHLO example.net
[02-Jan-2015 17:50:01 -0500]: Recv: 250-example.net
[02-Jan-2015 17:50:01 -0500]: Recv: 250-PIPELINING
[02-Jan-2015 17:50:01 -0500]: Recv: 250-SIZE 104857600
[02-Jan-2015 17:50:01 -0500]: Recv: 250-VRFY
[02-Jan-2015 17:50:01 -0500]: Recv: 250-ETRN
[02-Jan-2015 17:50:01 -0500]: Recv: 250-STARTTLS
[02-Jan-2015 17:50:01 -0500]: Recv: 250-ENHANCEDSTATUSCODES
[02-Jan-2015 17:50:01 -0500]: Recv: 250-8BITMIME
[02-Jan-2015 17:50:01 -0500]: Recv: 250 DSN
[02-Jan-2015 17:50:01 -0500]: Send: STARTTLS
[02-Jan-2015 17:50:01 -0500]: Recv: 220 2.0.0 Ready to start TLS
[02-Jan-2015 17:50:01 -0500]: Send: RSET
[02-Jan-2015 17:50:01 -0500]: Recv: M I A…"qhçR¸
[02-Jan-2015 17:50:01 -0500]: Send: QUIT
Dưới đây là các đoạn có liên quan của cấu hình postfix của tôi từ /etc/postfix/main.cf
# TLS parameters for SMTP service
smtpd_tls_security_level = may
smtpd_tls_cert_file = /etc/ssl/private/example.net/example.net.crt
smtpd_tls_key_file = /etc/ssl/private/example.net/example.net.key
smtpd_tls_auth_only = yes
Dưới đây là các đoạn có liên quan của cấu hình postfix của tôi từ /etc/postfix/master.cf
smtp inet n - - - - smtpd
-o content_filter=spamassassin
submission inet n - n - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o cleanup_service_name=cleanup_submit
smtps inet n - - - - smtpd
-o content_filter=spamassassin
-o syslog_name=postfix/smtps
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING
Nhật ký hậu tố /var/log/mail.log
báo cáo các lỗi sau:
Jan 2 17:50:01 example postfix/submission/smtpd[19959]: connect from localhost.localdomain[127.0.0.1]
Jan 2 17:50:01 example postfix/submission/smtpd[19959]: SSL_accept error from localhost.localdomain[127.0.0.1]: 0
Jan 2 17:50:01 example postfix/submission/smtpd[19959]: warning: TLS library problem: error:14094418:SSL routines:SSL3_READ_BYTES:tlsv1 alert unknown ca:s3_pkt.c:1292:SSL alert number 48:
Jan 2 17:50:01 example postfix/submission/smtpd[19959]: lost connection after STARTTLS from localhost.localdomain[127.0.0.1]
Jan 2 17:50:01 example postfix/submission/smtpd[19959]: disconnect from localhost.localdomain[127.0.0.1]
Tôi đã đọc một vài câu hỏi khác với mã lỗi tương tự, nhưng tất cả chúng dường như đang sử dụng chứng chỉ tự ký hoặc thêm liên kết đến hàm băm của chứng chỉ từ / etc / ssl / certs / , mà tôi đã thử, mặc dù tôi đã thử có thể đã hiểu sai và liên kết chứng chỉ sai.
Roundcube được cập nhật lên 1.0.4, được cho là đã khắc phục sự cố với tính không tương thích của phiên bản php do openssl. Tôi hết ý tưởng rồi, có ai có ý kiến gì không?