安装和配置Roundcube Webmail
这是设置和配置邮件服务器系列的最后一部分,我们将介绍如何安装和配置Roundcube Webmail。
Roundcube是基于Web的IMAP电子邮件客户端,具有用PHP编写的非常直观和现代的用户界面。
要使用Roundcube,我们只需要一个Web浏览器。
RoundCube包括我们在电子邮件客户端中所需的所有功能,例如RTF/HTML邮件撰写,地址簿,对MIME/HTML电子邮件的支持,多个发件人身份,拼写检查,三列视图,拖放邮件管理等等。
准备工作
在继续本教程之前,请确保我们以具有sudo特权的用户身份登录。
PHP依赖
首先,我们将更新软件包列表并安装所有必需的PHP依赖项:
sudo apt updatesudo apt install php-auth php-intl php-mail-mime php-mail-mimedecode php-mcrypt php-net-smtp php-net-socket php-pear php-xml php7.0-intl php7.0-mcrypt php7.0-xml php7.0-gd php7.0-gd php-imagick
安装完成后,运行以下“ sed”命令将“ date.timezone”值设置为“ UTC”:
sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.0/fpm/php.ini
重新启动PHP FPM服务以使更改生效:
sudo systemctl php7.0-fpm restart
创建MySQL数据库
Roundcube支持MySQL,PostgreSQL和SQLite数据库后端。
在本教程中,我们将使用MySQL作为数据库服务器。
登录到MySQL shell:
mysql -u root -p
创建一个新的MySQL数据库,一个用户,并通过新创建的数据库向该用户授予特权:
CREATE DATABASE roundcubemail;GRANT ALL ON roundcubemail.* TO 'roundcubemail'@'localhost' IDENTIFIED BY 'P4ssvv0rD';FLUSH PRIVILEGES;
下载Roundcube
在撰写本文时,1.3.8是Roundcube的最新稳定版本。
在继续下一步之前,我们应该检查Roundcube下载页面以查看是否有较新的版本。
首先使用以下wget命令下载Roundcube归档文件:
https://github.com/roundcube/roundcubemail/releases/download/1.3.8/roundcubemail-1.3.8.tar.gz
下载完成后,解压缩档案并将Roundcube代码移至“/var/www/roundcubemail”目录:
tar xzf roundcubemail-1.3.8.tar.gz.tar.gzsudo mv roundcubemail-1.3.8//var/www/roundcubemail
Nginx和PHP-FPM在“ www-data”用户下运行,因此我们需要将“/var/www/postfixadmin”目录的所有权更改为该用户:
sudo chown -R www-data: /var/www/roundcubemail
配置Nginx
在本系列的第一部分中,我们为PostfixAdmin实例创建了一个Nginx服务器块。
打开配置文件并添加以下位置指令,以黄色突出显示的位置指令:
/etc/nginx/sites-enabled/mail.theitroad.com.conf
... location /roundcubemail { index index.php; try_files $uri $uri//roundcubemail/index.php; } location ~ ^/roundcubemail/(README|INSTALL|LICENSE|CHANGELOG|UPGRADING)${ deny all; } location ~ ^/roundcubemail/(bin|SQL|config|temp|logs)/{ deny all; } ...
重新加载Nginx服务以使更改生效:
sudo systemctl reload nginx
配置Roundcube
打开浏览器并导航到'https://mail.theitroad.com/roundcubemail/installer'。
我们将看到以下 Screen:
在“检查可用数据库”部分中,仅需要MySQL扩展。
如果所有必需的PHP扩展均已加载,我们可以继续执行下一步,在此我们可以配置Roundcube安装:
这里最重要的部分是输入正确的MySQL数据库设置。
完成配置步骤后,请继续下一步,并通过点击“初始化数据库”按钮导入Roundcube的MySQL数据库结构。
创建数据库结构后,删除“安装程序”目录以防止重新配置和/或者未经授权的访问。
sudo rm -rf /var/www/roundcubemail/installer
启用Roundcube的自动缓存清除功能是可选的,但建议:
sudo crontab -u www-data -l | { cat; echo "18 11 * * * /var/www/roundcubemail/bin/cleandb.sh"; } | sudo crontab -u www-data
验证Roundcube安装
打开网络浏览器,导航至:“ https://mail.theitroad.com/roundcubemail”,然后使用电子邮件帐户的用户名和密码登录。
启用Roundcube插件
Roundcube带有许多默认情况下处于禁用状态的插件。
在本教程中,我们将启用“密码”和“管理”插件。
该插件将允许用户在Roundcube界面内创建筛滤器并更改其密码。
/var/www/roundcubemail/config/config.inc.php
//Enable plugins $config['plugins'] = array('managesieve','password'); //Configure managesieve plugin $rcmail_config['managesieve_port'] = 4190; //Configure password plugin $config['password_driver'] = 'sql'; $config['password_db_dsn'] = 'mysql://postfixadmin:P4ssvv0rD@localhost/postfixadmin'; $config['password_query'] = 'UPDATE mailbox SET password=%c WHERE username=%u';
不要忘记在“ password_db_dsn”行中输入PostfixAdmin数据库凭据。