服务器维护,服务器代维,安全设置,漏洞扫描,入侵检测服务

运维之家

 找回密码
 注册
搜索
查看: 13483|回复: 2

Roundcube Webmail 安装配置篇

[复制链接]
dirtysea 发表于 2012-2-7 10:50:00 | 显示全部楼层 |阅读模式

环境:Apache2.2.4+PHP5.2.4+Mysql5.0.41 / Windows Server 2003
  先去官方网站下载:[http://roundcube.net/],最新版0.5.3。下载完后解压缩,得到的目录里有INSTALL、README文件,安装前看看先,尤其是INSTALL文件里的内容,是否和你的PHP、Mysql有所不同。或者上传之后,直接安装,安装步骤中会提示你的环境是否符合安装要求,然后再一一搞定。
  好了,开始,浏览器打开,[http://www.abc.com/上传目录名/installer/index.php],回车,见下图:安装基本分三部分,1、检查安装环境,2、创建配置文件,3、测试配置是否正常。下面配置过程中的各种参数,在设置后,还可以通过编辑主配置文件main.inc.php来修改更新,后面如果你还要安装插件的话,也要从这个配置文件动手。
  点击“START INSTALLATION”按钮继续:安装程序会检测你的WEB环境是否符合要求,PHP的扩展、可用的数据库、第三方插件库、php.ini和.htaccess文件的设定。灰色文字内容有的提示说明部分参数是可选的或者是建议需要的,也就是有没有都可以,也有的是必需的,那就要符合要求,否则Roundcube最终无法正常使用。php.ini和.htaccess的部分,下面五行时必须满足的,PHP extensions下面的5个参数是必须要满足要求的,可用的databases部分起码你得有一个能用,比如Mysql和SQLite,其他的我就没有纠结了,既然是可选或者建议的,就随他去吧,俺也不折腾了。
  点击“NEXT”按钮继续:网页比较长,所以分开截图了,各部分单独说明,General configuration一般设定里面,product_name,你的Webmail服务的名称,显示在网页Title用的,看你需要。其他默认即可。Logging & Debugging日志部分,默认即可。Database setup数据库设置部分,俺是使用Mysql的,所以这里需要填写数据库服务器地址,lacalhost即可,Roundcube使用的数据库名称(并手动创建),访问数据的用户名和密码。
  IMAP Settings,IMAP设置部分,划红框的地方是需要你填写的,default_host输入你的邮件服务器地址,比如mail.abc.com,支持多个,点击add按钮可以增加。端口默认,username_domain是为了WEB方式登录是用的,就是你邮件地址@后面的部分,比如abc.com,这里设置一个即可,后面还可以编辑主配置文件,添加多个。这样WEB方式登录邮箱的时候,用户只需要输入邮件地址@前面的部分+密码就可以登陆了,不需要输入完整的邮件地址。其他默认。SMTP Setting,SMTP设置部分,smtp_server输入你的SMTP的服务地址,比如mail.abc.com。其他默认即可,smtp验证的话,看你需要,俺没有用所以就空着了。Display setting & user prefs显示设置和用户使用相关设置部分,language,就是Roundcube登录时使用的界面语言,为空的话,会根据浏览器的user agent自动检测,咱是**吗,可以输入zh_CN,Roundcube是支持多语言的哦,支持中文。skin就是皮肤了,默认,你要有能力的话,抽空可以自己定义一个个性的。pagesize是设置邮件列表每页显示多少封邮件的。preview_pane设置点击邮件标题时是否下方显示邮件内容预览,这个建议勾选。htmleditor是设置写邮件时用HTML的所见即所得的编辑器,还是纯文本方式,根据你的需要设置,其他默认。
  点击“CREATE CONFIG”按钮继续,根据前面的配置内容生成了对应的两个配置文件,你可以直接下载这两个文件,然后上传到Roundcube目录里的config目录里,或者手工创建这两个文件,把对应文本框里的内容粘贴进去保存即可。main.inc.php文件:db.inc.php文件:上面图中“CONTINUE”按钮下面的内容就是之前你配置的所有内容。

chmod -R 777 temp/

chmod -R 777 logs/
  点击“CONTINUE”按钮继续,点击Initialize database按钮,初始化数据库。Test SMTP config下面,Sender里填写你在hMailserver里创建好的邮件地址,Recipient里填写收邮件的地址,测试一下发送邮件是否正常。Test IMAP config里填好你的Server地址,比如mail.abc.com,然后输入你的hMailserver管理员的用户名和密码,测试一下是否正常。如果都OK,那就恭喜你,Roundcube的安装和配置你就搞定了,可以使用WEB方式登录来收发邮件了。
  安装完之后,别忘了把installer目录干掉,然后在main.inc.php文件里编辑enable_installer的设置改成disable,同时这个文件里包含用户名和密码和Key之类的东东,确保用户通过浏览器无法访问这个文件,如果你是使用Apache,那在httpd.conf里禁止访问,或者是通过.htaccess来禁止访问。
  好了,现在你可以通过浏览器访问[http://www.abc.com/Roundcube的安装目录名/],通过WEB方式收发邮件了,输入用户名(邮件地址@前面的部分)和密码,登录吧。
  这就是主界面了,界面还不错吧,具体细节还可以调整,就看你的动手能力了,下面这个样子是俺已经动过一点手脚了,原先不是这样子的。红框部分原先没有文字,只是图标,鼠标移动到上面的时候会显示中文提示。
  写邮件的界面,红框部分是配置了地址薄插件,写邮件时,可以点击添加收件人,抄送,密送邮件地址。还添加配置了一个拖放文件到左边邮件附件列表的插件。
  通讯录,也就是地址薄,左边的分组里,红框部分,是添加配置了一个全局地址薄组,这样每个登录邮箱的用户都能使用这个全局地址薄了。这个通讯录默认的联系人信息可输入的信息太少,只能输入一个邮件地址,邮箱显示名称,姓名,不够用啊,也没找到相关增强插件,官网说下一版里会增强,只能期待了。
  邮箱设置,红框部分为增加配置的插件,信息高亮显示可以定义收到的邮件在列表里有不同的背景色,密码标签是让用户自行修改邮件登陆密码用的,这个插件默认就在plugins目录里,自带了,配置一下即可。其他的插件都是从官网下载然后配置的。
  Roundcube Webmail的安装和基本配置差不多就这么多了,下一篇的话,准备说说多域的设置,还有使用的几个插件的添加和配置,如果有空的话,尽量。

 楼主| dirtysea 发表于 2012-6-11 17:18:46 | 显示全部楼层
其实多域的话很简单,无非是配置文件里设置的问题,插件也一样,必须在配置文件里配置,否则无法使用。因为有了插件,Roundcube的功能会丰富很多,基本上你能想到的都有插件可以用,所以这个Webmail还是很给力了,况且还是免费开源的。**正题,先说说多域的事情:
  请先**您的HmailServer里,已经把另一个域xyz.com的相关配置搞定了[参见这里:hMailServer配置],然后再开始下面的内容,打开Roundcube Webmail的主配置文件,在config目录下,main.inc.php就是这个文件,安全起见,请先备份一个。查找:
查看代码
打印?

1$rcmail_config['default_host'] =



修改成:
查看代码
打印?

1$rcmail_config['default_host'] = array (

2    'mail.abc.com' => '@abc.com',

3    'mail.xyz.com' => '@xyz.com');



  说明一下,mail.abc.com是安装Roundcube Webmail时配置的那个默认域,xyz.com是你的第二个域,如果是单域是不需要这个array的,直接就是单行的参数,如下:
查看代码
打印?

1$rcmail_config['default_host'] = 'mail.abc.com';



  使用这个array,为的是登录时,登录页面会显示一个下拉列表框,让用户选择使用那个域的邮箱来登录Webmail,用户只需要输入用户名,即邮件地址@前面的部分,Roundcube会自动根据用户选择域下拉列表里的域去补全这个登录参数。算是提升用户体验吧,是否需要这个看你需求,否则就输入整个邮件地址作为帐号。
  继续查找:
查看代码
打印?

1$rcmail_config['username_domain'] =



修改成:
查看代码
打印?

1$rcmail_config['username_domain'] = array (

2    'mail.abc.com' => 'abc.com',

3    'mail.xyz.com' => 'xyz.com');



  修改这个的目的,是在登录Webmail时,Roundcube会根据配置自动和hMailServer通讯,判断用户是那个域的,然后来验证用户完成登录。
  继续查找:
查看代码
打印?

1$rcmail_config['mail_domain'] =



修改成:
查看代码
打印?

1$rcmail_config['mail_domain'] = $rcmail_config['username_domain'];



  这个参数的英文说明我没看太懂,原文:This domain will be used to form e-mail addresses of new users,大意是这里的域配置,是用来为新用户提交邮件地址用的。修改后的配置,表示mail_domain和username_domain参数相同。
  以上三处配置完毕后,Webmail多域就支持了,至少我使用的两个域是没有问题的,用户使用邮件地址@前的部分作为用户名,输入密码,然后下拉框里选择对应的域,就可以登录使用了。
  然后说说关于插件的安装配置,说安装其实谈不上,Roundcube本带了不少插件,在plugins目录下,有20多个吧,修改密码的插件也在里面,我自己又另外去官网[http://trac.roundcube.net/wiki/Plugin_Repository]下载了几个插件,都是我需要的,其他的还不知道具体是啥插件,等以后慢慢了解再说吧。要使用插件目录里的插件,必须要先在主配置文件main.inc.php里,把要用的插件添加到插件配置参数里去,然后登录Webmail就可以使用了,打开main.inc.php,查找:
查看代码
打印?

1$rcmail_config['plugins'] =



  默认安装Roundcube Webmail之后,这个等号后面应该是两个单引号,引号里是空的,俺的目前配置如下:
查看代码
打印?

1$rcmail_config['plugins'] = array('password','fileapi_attachments', 'emoticons', 'compose_addressbook', 'message_highlight','jqueryui','globaladdressbook');



  我加了6个插件,为啥是6个,因为那个jqueryui是其他插件要用的脚本,所以具体插件数目是6个,array圆括号内的参数,单引号引起来的,比如'password',引号内的内容,一定是和plugins目录中插件目录名一致,这样Roundcube才会根据配置,加载相应的插件,password就是用来让用户自己修改密码的;fileapi_attachments这个是支持附件拖放,就是写邮件的时候,直接把电脑里的文件拖放到附件列表区就OK;emoticons用来在写邮件的时候插入表情图标的;compose_addressbook是写邮件时,可以通过点击一个按钮,弹出窗口调出地址簿,让你选择收件人,抄送、密送等邮件地址;message_highlight看名字就能知道是信息高亮显示用的,用户可以根据发件人的邮件地址、用户名等参数,来设置重要邮件在邮件里表里高亮显示,就是背景色和其他邮件不同,可以提醒您不要错过重要邮件;globaladdressbook,全局地址簿,这个功能其实不错,可以让域管理员统一提前配置好公司所有人的邮件地址,这样大家发邮件的时候就可以使用现成的了。当然,这个不影响每个用户自己私人的地址簿,是分开的。
  另外,Roundcube Webmail登录之后,地址薄里联系人信息能填写的内容太少了,好像就一个用户名,一个邮件地址,我现在用的是修改过的,之前的也记不清楚了。这个地址薄扩展不是插件,需要自己修改部分文件的代码,具体如何修改说明文件在这里:http://trac.roundcube.net/ticket/1486377。这个页面里我用的patch是extended_addressbook_0.5stable.patch (18.7 KB),把这个文件右键另存为保存到你的电脑里,然后扩展名改为htm,用浏览器打开来看看,就知道怎么去修改文件了,照着这个说明文件,把所有要修改的文件都搞定,然后你的Webmail里,地址薄里联系人信息就丰富多了,会多出几个标签,联系人的电话**,家庭住址,公司地址等等,部分字段的显示如果是英文,请在语言包文件里把相应的英文翻译成中文即可,其他插件也都带有相应语言包,你自己弄个对应的中文的就行。



2012年4月3日补充:
1、邮件附件大小的问题,hMailserver和Roundcube中都没有单独设置附件大小的地方,所以附件的大小决定在了php的手里,如果需要更改附件大小,只有编辑php.ini文件了,里面有两个地方需要修改,具体都是和post相关的,我也懒得看了,两处设置一样的大小即可,可以Google一下关于php上传相关资料。
2、邮件附件,文件名中文出现乱码的问题,是Roundcube默认使用的编码方式有问题,打开config.inc.php文件,查找“$rcmail_config['mime_param_folding'] ”,把等号后面的值改成2,使用Full 2047 compatible编码方式,这样就不会有乱码了。这是修改全局参数,这样每个用户就不用单独修改了,单个用户也可以通过WEB方式登录邮箱,到邮箱设置里有选择设置的地方。
3、关于那个拖放附件的插件,之前我记忆有误,IE系列浏览器全都嗝屁,一个都不支持,我没有IE10,不知道是否支持,火狐Firefox和Chrome是支持的,这个在插件的安装说明文件里就有说明的,但还是有不少朋友询问,这里统一说明一下。
4、修改密码的插件,插件目录中有配置文件的,配置文件里需要先选择使用的Mailserver类型,如果是使用hMailServer,第一个设置参数就是hmail,然后文件的最后,就是对应要填写hMailServer的管理员帐号和密码,服务器地址填写localhost即可。不配置的话,这个插件是不会工作的。

 楼主| dirtysea 发表于 2013-5-7 13:44:05 | 显示全部楼层
qmail+vpopmail使用Roundcube Webmail ,启用密码修改插件

进到邮件安装目录
cd /var/www/html/mail/
vim config/main.inc.php
$rcmail_config['plugins'] = array('password','jqueryui','filesystem_attachments');

cp -p plugins/password/config.inc.php.dist plugins/password/config.inc.php
vim plugins/password/config.inc.php
$rcmail_config['password_db_dsn'] = 'mysql://root:password@localhost/vpopmail';
$rcmail_config['password_query'] = 'UPDATE vpopmail SET pw_passwd=%c WHERE pw_name=%l LIMIT 1';
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|Archiver|运维之家

GMT+8, 2023-2-6 01:05 , Processed in 0.099207 second(s), 18 queries .

Powered by Dirtysea

© 2008-2020 Dirtysea.com.

快速回复 返回顶部 返回列表