我最近安装了Postfix,Dovecot在我自己的VPS上设置邮件服务器(使用本教程:Email with Postfix, Dovecot, Mysql)
Imaps服务器使用端口993进行身份验证,Postfix使用端口25发送邮件。 在本教程中,用户存储在数据库中(因此imaps使用mysql对用户进行身份验证)。 我确信每个东西都可以正常使用imaps和postfix,因为几天前我安装了Kmail客户端(在我的linux上)并从我的服务器接收邮件。发送邮件也工作正常,我发送邮件到Gmail和谷歌收到它没有问题(在我的" Gmail收件箱"不是垃圾邮件文件夹)
为了从网络邮件客户端访问我的电子邮件,我在 / var / www / mail 目录上安装了Roundcube。
我多次配置Roundcube。但每次它给我这个错误:
IMAP错误:来自X.x.X.x的[me @ mydomain]登录失败。空 启动问候语(localhost:993)in 第184行/var/www/mm/program/lib/Roundcube/rcube_imap.php(POST /毫米/ _任务=登录_Task =登录&安培;?_action =登录)
当我从roundcube登录时,imap服务器说(在 /var/log/mail.log 中):
May 20 07:05:16 my-server dovecot:imap-login:断开连接(没有身份验证 尝试):rip = :: 1,lip = :: 1,TLS握手:断开连接
这是我的roundcube配置文件:
$config['db_dsnw'] = 'mysql://roundcubeuser:myPassword@localhost/roundcubemail';
// ----------------------------------
// IMAP
// ----------------------------------
$config['debug_level'] = 13;
$config['default_host'] = 'ssl://127.0.0.1';
$config['default_port'] = 993;
// ----------------------------------
// SMTP
// ----------------------------------
$config['smtp_server'] = 'ssl://localhost';
问题是什么?我真的不知道发生了什么!
谢谢。
答案 0 :(得分:4)
我现在使用postfix + dovecot + roundcube几个月了,它正在为我工作。在我的配置中,postfix拒绝明文会话,因此roundcube 与ssl连接 - 并且它正在工作。
这是来自我的main.inc.php
。我不记得在这里编辑任何内容,它只是在安装过程中创建的初始配置。
现在我正在查看它,default_port没有任何意义,我认为它只是被忽略了。
// To use SSL/TLS connection, enter hostname with prefix ssl:// or tls://
// Supported replacement variables:
// %n - http hostname ($_SERVER['SERVER_NAME'])
// %d - domain (http hostname without the first part)
// %s - domain name after the '@' from e-mail address provided at login screen
// For example %n = mail.domain.tld, %d = domain.tld
// TCP port used for IMAP connections
$rcmail_config['default_port'] = 143;
$rcmail_config['default_host'] = array("ssl://localhost:993");
// TCP port used for IMAP connections
$rcmail_config['default_port'] = 143;
答案 1 :(得分:1)
如果其他答案不起作用,那么这对我有用。我的config.inc.php
现在包含:
$config['default_host'] = 'ssl://localhost';
$config['default_port'] = 993;
注意:使用tls://localhost
对我不起作用。我必须指定ssl://
作为URI方案。
通过PhpMyAdmin,我还运行了此SQL命令(我所有的用户帐户都在运行RoundCube的同一台计算机上):
UPDATE `rc_users` SET `mail_host`='ssl://localhost'
我得到了运行sudo netstat -tulnp
的端口号993表格,以确定Dovecot正在监听的端口。