如何配置roundcube与imaps一起使用?

时间:2014-05-20 11:19:24

标签: email ssl imap postfix-mta roundcube

我最近安装了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';

问题是什么?我真的不知道发生了什么!

谢谢。

2 个答案:

答案 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正在监听的端口。