2014年12月24日 星期三

CentOS 6.5 安裝 Roundcube WebMail

由於最近在策畫變更內部的 Mail Server,進行一連串的 LAB 測試

 

Webmail 原本由 OpenWebmail 進行擔任,但 openwebmail 在 2006 年最後一次更新後就不在進行維護,所以希望把他換掉,經過這一陣子的評選搜尋後發現近期 roundcubemail 很紅,並且介面非常的親民,符合內部需求。

 

簡單介紹一下優選 Roundcube 的幾個優缺點

Roundcube 其實算是很完善的一個 Webmail,本身加入了 Ajax 可以讓滑鼠搬移信件,安裝簡單,並且畫面做得不錯,雖然是 OpenSouree 但開發團隊非常的用心在經營。

 

有幾點是 MIS 必須要特別注意的,Roundcube 僅支援 IMAP + SMTP

支援的Database : mssql、mysql、mysql5、postgres、sqllite

執行效能 ? 這點還未從網路上的搜尋找到實例上的分享,之後若是有機會上線後再跟大家分享。

再來就是環境需求,Roundcube 對 Server 的需求是比較高的,可以參考 Howto_Requirements



 

 

在這之前你可能必須要先了解一下這篇文章的執行環境

套件: Postfix + Dovecot + Roundcube + mysql + httpd

Protocol : smtp + sasl + TLS (25) / pop3s (995) / imaps (995)

Auth : ldap + file

以下示範的設定請自行斟酌調整

 

安裝 Roundcube 

setp.1 下載 roundcube 可以有兩種方式

1). 到 Roundcube 官網下載 最新版本,但其他所需套件必須自行安裝。

2). 使用 epel repo 來 yum install roundcubemail,這會連帶將所有相依性的套件都進行安裝。

 

安裝方式看自己的需求為準,epel 有可能會為你安裝許多不需要的套件如 ldap、sasl .. 等等,可以按照自己的環境所需選擇

因為 epel 裝的套件比較符合小弟的環境需求,所以直接執行 epel 安裝
shell# yum install --enablerepo=epel roundcubemail

 

epel install Roundcube list

====================================================================
Package Arch Version Repository Size
====================================================================

Installing:
roundcubemail noarch 1.0.3-1.el6 epel 3.4 M
Installing for dependencies:
aspell x86_64 12:0.60.6-12.el6 base 648 k
libicu x86_64 4.2.1-9.1.el6_2 base 4.9 M
libmcrypt x86_64 2.5.8-9.el6 epel 96 k
php-intl x86_64 5.3.3-40.el6_6 updates 73 k
php-ldap x86_64 5.3.3-40.el6_6 updates 41 k
php-mcrypt x86_64 5.3.3-3.el6 epel 19 k
php-pear-Auth-SASL noarch 1.0.6-1.el6 epel 16 k
php-pear-Mail-Mime noarch 1.8.4-1.el6 epel 40 k
php-pear-Mail-mimeDecode noarch 1.5.5-1.el6 epel 17 k
php-pear-Net-IDNA2 noarch 0.1.1-3.el6 epel 24 k
php-pear-Net-SMTP noarch 1.6.1-1.el6 epel 22 k
php-pear-Net-Sieve noarch 1.3.3-1.el6 epel 19 k
php-pear-Net-Socket noarch 1.0.10-1.el6 epel 12 k
php-pspell x86_64 5.3.3-40.el6_6 updates 31 k
Updating for dependencies:
php x86_64 5.3.3-40.el6_6 updates 1.1 M
php-cli x86_64 5.3.3-40.el6_6 updates 2.2 M
php-common x86_64 5.3.3-40.el6_6 updates 527 k
php-gd x86_64 5.3.3-40.el6_6 updates 109 k
php-mbstring x86_64 5.3.3-40.el6_6 updates 458 k
php-mysql x86_64 5.3.3-40.el6_6 updates 84 k
php-pdo x86_64 5.3.3-40.el6_6 updates 78 k
php-process x86_64 5.3.3-40.el6_6 updates 42 k
php-xml x86_64 5.3.3-40.el6_6 updates 106 k

 

setp.2 預設裝起來 roundcubemail 的路徑是在 /usr/share/roundcubemail,小弟習慣將程式都放在 home 內
shell# mv /usr/share/roundcubemail /home/roundcube 

先把權限搞定,wiki有提到temp、logs必須要有 w 的權限
shell# chown apache.apache -R /home/roundcube
shell# chmod 700 /home/roundcube/logs /home/roundcube/temp

 

setp.3 再來建立 roundcube 資料庫
shell# mysql -u root -p 
sql> CREATE DATABASE roundcube;
sql> GRANT ALL PRIVILEGES ON roundcube.* TO roundcube_USER@localhost IDENTIFIED BY 'roundcube_PWD';
sql> FLUSH PRIVILEGES;

 

setp.4 安裝好後 roundcube 會自動建立 httpd 設定檔 /etc/httpd/conf.d/roundcubemail.conf

這邊可以自行調整,預設頁面是 http://ServerName/roundcube
檢查 roundcubemail.conf 設定 
shell# vim /etc/httpd/conf.d/roundcubemail.conf

重啟 httpd 服務
shell# service httpd restart

 

 

setp.5 到這裡 Roundcube 的環境就已經建立好了,再來用內建的 installer 來一步一步完成設定吧!

網頁 installer : http://ServerName/roundcube/installer

2014-12-22_174359

installer 會幫助你進行一連串的測試,測試的範圍包含他所有可能支援的套件,同一類型的套件可以只選擇一種即可,如 MySQL

 

在下一步後,針對幾個細項設定介紹
product_name  這個 webmail 的名稱 
support_url  技術支援頁面,可有可無,會有一個 Link 幫你連結
skin_logo  預設是 roundcube Logo
temp_dir temp的位置,記得要有 w 權限
log_dir logs的位置,記得要有 w 權限

-----Database settings-----
(這邊必須預先建立好資料庫再讓 roundcube 去建 table)
Database type: 選擇你資料庫的種類
Database server: 資料庫的IP位置
Database name: 資料庫名稱
Database user name: 資料庫使用者
Database password: 資料庫密碼
db_prefix: table的表頭命名


-----IMAP Settings-----
default_host: SSL://mailserver.com (IMAP IP,範例有使用SSL加密)
default_port: 993 (SSL port 993)
username_domain: 這是提供驗證使用, ldap不需要所以為空
ex:登入帳號eric, 會自動幫你帶eric@domain, 適合需要加domain的帳號


-----SMTP Settings-----
smtp_server: TLS://mailserver.com (SMTP IP,範例使用TLS加密)
smtp_port: 25
smtp_user/smtp_pass: (如果必須驗證請輸入帳密,也可勾選與IMAP相同帳密)


 

setp.6 Next 後會按照你剛剛給的設定建立設定檔 roundcube/config/config.inc.php

按 CONTINUE 後開始建立

2014-12-24_172536

 

setp.7 再來請點選 Database initializer 開始初始化資料庫建立 table

並且看到提示

DB Schema: OK
DB Write: OK
DB Time: OK

 

setp.8 在各項都測試OK之後,最後兩項最重要的測試,就是 SMTP & IMAP Test,這邊可以幫你驗證設定是否正確,是一個很棒的測試工具。

2014-12-24_174648

 

setp.9 測試都 OK 之後,打開 webmail 網址確認可不可以登入

登入頁 http://ServerName/roundcubemail

2014-12-24_174832

 

登入後

2014-12-24_174933

 

 

到這邊 roundcube 建立已經大功告成。

 

這邊在小弟的環境中還必須調整 domain,因為在 default_host 這一格預設會變成使用者 sender address

舉例:

default_host = mail.sz.com

eric 登入後預設 address = eric@mail.sz.com

但 ... mail.sz.com 並不是我的 domain 呀!! 這只是我 mail server 的位置

 

我要的 domain 應該是 sz.com

好了,這在預設的 config.inc.php 是不會幫你進行設定的

但你可以看到 default.inc.php 有一項 $config['mail_domain'] 是有 support 的唷!!

但預設這個設定是空值,所以會帶入 default_host

 

只要在 config.inc.php 或 default.inc.php 加入以下

$config['mail_domain'] = 'sz.com';

這樣之後登入的就會預設帶入 eric@sz.com 囉 (在設定 mail_domain 之前的只好到設定裡面手動更改啦!! )

 

 

這篇主要為安裝的部分,roundcube 還支援 ldap 通訊錄、多domain 等等功能。

 

 

 

參考資料:

Roundcube wiki

 

其他資料:

CentOS 6.5 -LDAP PAM 整合驗證 Postfix + Dovecot

Postfix SMTP + Dovecot 加密 SSL / TLS

 

Orignal From: CentOS 6.5 安裝 Roundcube WebMail

1 則留言:

  1. 請問roundcube autoreply plugin如何安裝
    謝謝

    回覆刪除