在Ubuntu 20.04上安装和设置Roundcube Webmail

在本教程中,我们将学习如何在Ubuntu 20.04上安装Roundcube Webmail。 圆立方 webmail是一个免费的开源基于Web的IMAP电子邮件客户端。它是用PHP编写的,并且与其他任何电子邮件客户端一样工作。它提供了一些功能;

  • 完全支持MIME和HTML消息
  • 完善的隐私保护
  • 撰写带有附件的邮件
  • 多个发件人身份
  • 功能齐全的通讯录,带有组和LDAP连接器
  • 按需查找通讯录集成
  • Richtext / HTML消息编写
  • 转发带有附件的邮件
  • 搜索消息和联系人
  • 拼写检查

您可以找到Roundcube功能的完整列表 这里

在Ubuntu 20.04上安装和设置Roundcube Webmail

先决条件

如前所述,Roundcube Webmail用PHP编写,因此可以在标准的LAMPP服务器上运行。以下是最低服务器要求;

  • Apache,Lighttpd,Nginx,切诺基或Hiawatha Web服务器
  • PHP 5.4或更高版本
  • MySQL,PostgreSQL,SQLite,MSSQL或Oracle数据库
  • 支持IMAP4 rev1的SMTP服务器和IMAP服务器
  • 与Roundcube一起分发的PEAR软件包

在Ubuntu 20.04上继续进行Roundcube Webmail的安装和配置之前,请更新软件包缓存;

apt update

在Ubuntu 20.04上安装和设置LAMP Stack

请点击以下链接,了解如何在Ubuntu 20.04上安装和设置LAMP Stack;

在Ubuntu 20.04上安装和设置LAMP Stack

安装其他必需的PHP模块;

apt install openssl composer php-{net-smtp,mysql,gd,xml,mbstring,intl,zip,json,pear,bz2,gmp,imap,imagick,auth-sasl,net-idna2,mail-mime,net-ldap3,net-sieve,} -y

下载Roundcube

可以通过从以下网站下载源代码来安装Roundcube的最新稳定发行版。 Roundcube下载页面。在撰写本文时,Roundcube 1.4.6是最新的稳定发行版。您可以简单地获取链接并按如下所示拉动压缩包:

请确保下载完整的软件包

wget -P /tmp/ https://github.com/roundcube/roundcubemail/releases/download/1.4.6/roundcubemail-1.4.6-complete.tar.gz

将Roundcube提取到Apache Web根目录

将Roundcube tarball存档提取到您的Web根目录,在本例中,该目录为 /var/www/html/roundcube

如果该目录不存在,请创建它。

mkdir /var/www/html/roundcube
tar xzf /tmp/roundcubemail-1.4.6-complete.tar.gz -C /var/www/html/roundcube --strip-components 1

为Roundcube根目录设置适当的所有权,并为Roundcube设置权限 /temp/logs 目录;

chown -R www-data.www-data /var/www/html/roundcube/
chmod -R 775 /var/www/html/roundcube/{temp,logs}

/config/temp/logs 目录应受到保护,以防止来自浏览器的访问。

为Roundcube配置Apache VirtualHost

为Roundcube创建专用的Apache VirtualHost配置文件;

vim /etc/apache2/sites-available/roundcube.conf

        ServerName roundcube.kifarunix-demo.com
        ServerAdmin [email protected]
        DocumentRoot /var/www/html/roundcube

	
		Options +FollowSymLinks
		AddType text/x-component .htc
		
			php_flag        display_errors  Off
			php_flag        log_errors      On
			php_value       upload_max_filesize     10M
			php_value       post_max_size           12M
			php_value       memory_limit            64M
			php_flag        zlib.output_compression         Off
			php_flag        magic_quotes_gpc                Off
			php_flag        magic_quotes_runtime            Off
			php_flag        zend.ze1_compatibility_mode     Off
			php_flag        suhosin.session.encrypt         Off
			php_flag        session.auto_start      Off
			php_value       session.gc_maxlifetime  21600
			php_value       session.gc_divisor      500
			php_value       session.gc_probability  1
		
		
			RewriteEngine On
			RewriteRule ^favicon.ico$ skins/larry/images/favicon.ico
			RewriteRule ^(?!installer)(.?[^.]+)$ - [F]
			RewriteRule ^/?(.git|.tx|SQL|bin|config|logs|temp|tests|program/(include|lib|localization|steps)) - [F]
			RewriteRule /?(README.md|composer.json-dist|composer.json|package.xml)$ - [F]
		
		
			SetOutputFilter DEFLATE
		
		
			# replace 'append' with 'merge' for Apache version 2.2.9 and later
			# Header append Cache-Control public env=!NO_CACHE
		
		
			ExpiresActive On
			ExpiresDefault "access plus 1 month"
		
		FileETag MTime Size
		
			Options -Indexes
		
		AllowOverride None
		Require all granted
	
	
	
		Options -FollowSymLinks
		AllowOverride None
		Require all denied
	
	
		Options -FollowSymLinks
		AllowOverride None
		Require all denied
	
	
		Options -FollowSymLinks
		AllowOverride None
		Require all denied
	
	
		Options -FollowSymLinks
		AllowOverride None
		Require all denied
	
        ErrorLog ${APACHE_LOG_DIR}/roundcube-error.log
        CustomLog ${APACHE_LOG_DIR}/roundcube-access.log combined

保存并退出配置文件。

如果需要使用HTTPS,请获取SSL / TLS证书并适当配置Apache。

禁用Apache默认站点

a2dissite 000-default

启用Roundcube网站。

a2ensite roundcube

启用以下Apache模块

a2enmod deflate expires headers rewrite

验证Rouncube站点配置中的语法错误。

apachectl -t
Syntax OK

如果存在语法错误,请在出现错误的情况下重新启动Apache。

systemctl restart apache2

创建Roundcube数据库和数据库用户

如上所述,Roundcube支持各种数据库后端。在本指南中,我们将使用已在上面提供链接的指南中安装的MySQL服务器。

登录到MySQL并创建Roundcube数据库。相应地替换数据库和数据库用户名。

mysql -u root -p
create database roundcube;

创建Roundcube数据库用户并授予Roundcube数据库的所有特权。

create user [email protected] identified by 'StrongPassword';
grant all on roundcube.* to [email protected];

重新加载特权表并退出数据库;

flush privileges;
quit

将Roundcube初始数据库导入到上面创建的MySQL数据库中;

mysql -u rcadmin -p roundcube < /var/www/html/roundcube/SQL/mysql.initial.sql

为Roundcube配置PHP

首先,确保启用了mbstring,xml,dom,intl PHP模块;

php -m | grep -iE "mbstring|xml|dom|intl"

在php.ini中设置默认时区;

sed -i 's/^;date.timezone =/date.timezone = Asia/Nicosia/' /etc/php/7.4/apache2/php.ini

在Ubuntu 20.04上配置Roundcube Webmail

您现在可以通过访问浏览器来完成Roundcube的设置 http://server-IP-or-hostname/installer 链接。

检查先决条件

运行安装程序时,它将首先检查是否满足所有必需的依赖性。确保一切都在 在继续操作之前先声明。

创建Roundcube配置

一旦满足所有要求,请单击步骤2为Roundcube创建配置。

为了 常规配置记录与调试 设置,让我们使用默认设置。

设置数据库连接设置;

对于IMAP和SMTP设置,我们都使用GMAIL中继。因此,只需设置主机和端口。

在Ubuntu 20.04上安装和设置Roundcube Webmail在Ubuntu 20.04上安装和设置Roundcube Webmail

对于其余设置,您可以保留默认设置或将其更新为您的首选项。

在页面的底部, 创建配置 使用定义的选项创建Roundcube配置。

您应该看到一条消息,说明配置已成功创建。

请点击 继续 进行和 测试配置。

在Ubuntu 20.04上安装和设置Roundcube Webmail

通过结束电子邮件和密码来测试邮件中继消息的可传递性,然后单击 发送测试邮件

在Ubuntu 20.04上安装和设置Roundcube Webmail

测试您的邮件可接收性,单击 检查登录 核实。

在Ubuntu 20.04上安装和设置Roundcube Webmail

完成安装和最终测试后 去掉 Web根目录中的整个安装程序文件夹。

rm -rf /var/www/html/roundcube/installer/

您只需运行以下命令即可禁用安装程序;

登录到Roundcube Webmail

您现在可以通过以下地址访问Roundcube网络邮件 http://服务器-IP-或主机名。这将带您进入登录屏幕。

在Ubuntu 20.04上安装和设置Roundcube Webmail

使用您的电子邮件帐户凭据登录。对于我而言,我正在使用我的Gmail帐户。

在Ubuntu 20.04上安装和设置Roundcube Webmail

你去。 Roundcube现在已启动并在Ubuntu 20.04上运行。您可以进一步探索该工具的各种功能。

这标志着我们关于如何在Ubuntu 20.04上安装和设置Roundcube Webmail的指南的结尾。

进一步阅读

Roundcube HowTo Wiki

Sidebar