如何在Ubuntu 18.04上安装Roundcube Webmail

时间:2020-03-05 15:28:11  来源:igfitidea点击:

Roundcube是一种免费和开放源代码的Webmail解决方案,具有来自Web浏览器的类似于桌面的用户界面,易于安装,可在标准Web服务器上运行。
本教程将说明在运行LAMP服务器的Ubuntu 18.04上安装Roundcube的不同步骤。
它提供了我们希望从电子邮件客户端,通讯录,搜索消息和联系人,共享文件夹以及其他功能中获得的全部功能。

在安装Roundcube之前,我们需要在Ubuntu 18.04上安装一个可以正常运行的Web服务器,例如LAMP(Linux Apache MySql PHP)服务器。
要能够通过Roundcube发送和接收邮件,还需要在Ubuntu上安装postfix和dovecot。

1)下载Roudcube

在编写本教程时,Rouncube的实际最新稳定版本是1.3.6.
我们可以在官方下载页面上选择最适合的版本。

在Ubuntu 18.04上,通过终端下载

# wget https://github.com/roundcube/roundcubemail/releases/download/1.3.6/roundcubemail-1.3.6-complete.tar.gz
--2016-05-23 14:40:05--  https://github.com/roundcube/roundcubemail/releases/download/1.3.6/roundcubemail-1.3.6-complete.tar.gz
Resolving github.com (github.com)... 192.30.255.112, 192.30.255.113
Connecting to github.com (github.com)|192.30.255.112|:443... connected.
HTTP request sent, awaiting response... 302 Found
....
....

现在我们看到了软件包

# ls -l | grep roundcube
-rw-r--r-- 1 root root 5529370 Apr 11 19:52 roundcubemail-1.3.6-complete.tar.gz

2)安装和配置Roundcube

现在,我们可以完成安装过程。
首先,我们需要解压缩

# tar xvf roundcubemail-1.3.6-complete.tar.gz 
roundcubemail-1.3.6/
....
....

然后,我们必须将其移动到我们的Web服务器树中,我们将在操作过程中重命名该文件夹。

# mv roundcubemail-1.3.6 /var/www/html/webmail

a)为Roundcube创建数据库和用户

我们需要创建数据库,Roundcube将在该数据库中存储其信息。
首先,登录mysql

# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor. Commands end with ; or \g.

现在创建数据库

mysql> create database 'roundcubedb';
Query OK, 1 row affected (0.00 sec)

创建数据库用户并设置密码

mysql> create user 'roundcube'@'localhost' IDENTIFIED BY 'your-password';
Query OK, 0 rows affected (0.00 sec)

向roundcube用户授予“ roundcubedb”数据库及其所有表的所有特权

mysql> GRANT ALL PRIVILEGES ON roundcubedb.* to 'roundcube'@'localhost';
Query OK, 0 rows affected (0.00 sec)

现在保存配置,然后退出

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
mysql> EXIT;
Bye

现在我们需要将初始表导入roundcubedb数据库,因为该数据库为空。
我们需要通过包含在我们移动到Web服务器树的roundcube提取文件夹的子目录中的mysql.initial.sql文件来初始化它。
这将设置数据库的结构,以便Roundcube将知道将其信息保存在何处。

# cd /var/www/html/webmail

现在检查SQL目录的存在

# ls -l | grep SQL
drwxr-xr-x 7 501 80 4096 Apr 11 11:13 SQL

现在我们可以初始化数据。
我们需要指出roundcube数据库和用户。
系统将提示我们输入密码

# mysql -u roundcube -p roundcubedb < SQL/mysql.initial.sql
Enter password:

b)为Roundcube配置apache

现在,我们需要为Roundcube配置虚拟主机。
如果我们在apache服务器上托管多个站点,则更加干净。
我们将创建默认的Apache配置文件的副本

# cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/webmail.conf

现在编辑配置文件,使其具有以下内容

# vim /etc/apache2/sites-available/webmail.conf
<VirtualHost *:80>
        ServerName webmail.mytheitroad.com or your-ip-address
        ServerAdmin [email protected]
        DocumentRoot /var/www/html/webmail
        ErrorLog ${APACHE_LOG_DIR}/webmailerror.log
        CustomLog ${APACHE_LOG_DIR}/webmailaccess.log combined
        <Directory /var/www/html/webmail>
                Options -Indexes
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>
</VirtualHost>

通常,在安装Apache时,输入IP地址或者域名时,默认主页是apache的页面。
我们将要求apache停止托管该默认站点,并将roundcube虚拟主机托管为默认站点。
这意味着在输入IP地址或者域名时,我们将直接启动Roundcube。

# a2dissite 000-default
Site 000-default disabled.
To activate the new configuration, you need to run:
 systemctl reload apache2

当要求Apache将Roundcube托管为默认站点时,请勿使用Webmail配置文件的扩展名,而仅使用文件名。

# a2ensite webmail
Enabling site webmail.
To activate the new configuration, you need to run:
 systemctl reload apache2

现在为Roundcube启用'mod_rewrite'Apache模块

# a2enmod rewrite
Enabling module rewrite.
To activate the new configuration, you need to run:
 systemctl restart apache2

然后重新启动Apache以激活新配置

# systemctl restart apache2

我们可以检查apache的状态

# systemctl status apache2

c)配置和安装Roundcube

现在,我们将通过首先更改Webmail文件夹的所有权和权限来配置Roundcube,以便允许Apache创建和编辑配置和日志文件

# chown -R www-data:www-data /var/www/html/webmail/
# chmod 755 /var/www/html/webmail/temp//var/www/html/webmail/logs/

现在,我们可以通过安装程序在其文件夹中安装Roundcube。
因为我们已将Webmail配置为默认站点,才能访问Roundcube,所以我们只需要指出域名或者IP地址,后跟安装程序的名称,例如http://domain_name_or_IP/installer,通常,当我们不更改时在默认站点上,我们需要指出域名或者IP地址,webmail根文件夹以及安装程序的名称,例如http://domain_name_or_IP/webmail/installer。
在本例中,我们将使用第一个地址。
Rouncube将检查我们服务器的环境。
确保具有所需的所有php扩展名

现在转到下一页。
我们将需要配置一些设置来为Webmail创建默认配置文件。

  • 常规配置:我们可以更改产品名称。该信息将显示在Roundcube登录页面的底部
  • 数据库设置:其中我们将输入我们使用Mysql配置的Rouncube的数据库信息
  • IMAP设置:如果安装了正常工作的邮件服务器,则需要输入其信息以进行邮件发送。如果没有,则可以尝试使用Gmail。我们将使用SSL配置Gmail,因此端口为993. 如果我们不想每次都指定域名(@ gmail.com),则仅用域名填写username_domain行,然后选中auto_create_user框以创建一个数据库中的用户,以防止我们登录
  • SMTP设置:我们仍将使用Gmail smtp信息和SSL的端口465. 确保选中“使用当前IMAP用户名和密码进行SMTP身份验证”旁边的框,以便将smtp_user/smtp_pass下的字段保留为空白
  • 插件:我们可以选择合适的插件集成到Roundcube中。阅读说明以选择合适的。我们有一些有趣的插件,例如用于PGP加密的emigma或者表情符号等。

在页面末尾,选择CREATE CONFIG。
这会将所有配置保存在一个文件中,该文件将保存在webmail目录中。

现在,我们可以通过为测试填写好的smtp和imap参数来继续并测试所有设置。

我们从Roundcube收到警告消息,要求出于某些安全原因删除安装程序文件。

# rm -rf /var/www/html/webmail/installer/

如果测试不起作用,请确保我们提供了良好的信息。
如果我们仍然遇到相同的问题,则意味着如果我们不想受到Google的某些限制,则可能需要允许Gmail中的安全性较低的应用程序

现在我们可以转到登录页面。
输入凭证信息

现在,我们可以看到Roundcube网络邮件的主页。
我们可以看到我允许使用的安全性较低的应用

现在,我们可以检查和浏览Roundcube Webmail客户端。

现在,我们可以访问邮件服务器,并通过Roundcube使用凭据信息登录。
我们可以安装新主题以增强客户端的外观,并可以安装一些插件来添加新功能,这些功能可以满足需求或者更好的用户体验。