如何在Debian 10上安装SOGo组件
如何在Debian 10上安装SOGo组件
SOGo是在GNU GPL / LGPL v2及更高版本中发布的免费开源协同软件服务器。它带有一个简单,易于使用的基于Web的界面,并支持多个本机客户端。它提供了本机Microsoft ActiveSync支持,还支持移动设备,例如Apple iPhone,Android,Windows Phone和BlackBerry。
特性
- 支持多种语言。
- 与他人共享您的电子邮件,日历和地址簿。
- 设置紧急事件警报并直接从浏览器接收警报。
- 接收桌面通知。
- 使用完整的嵌入式RTF编辑器编写HTML邮件。
- 支持多个电子邮件帐户。
- 导入和导出日历和邮箱。
- 支持两因素认证。
本教程将向您展示如何在Debian 10上安装SOGo Groupware Server。
先决条件
- 运行Debian 10的服务器。
- 根密码是在服务器上设置的。
入门
我们建议您在开始之前将服务器更新到最新版本。您可以通过运行以下命令来运行它:
apt-get update -yapt-get upgrade -y
更新服务器后,请重新启动服务器以应用所有更改。
安装和配置MariaDB
SOGo使用MariaDB / MySQL作为数据库后端。因此,必须将其安装在服务器上。只需运行以下命令即可安装。
apt-get install mariadb-server -y
安装MariaDB之后,您需要保护MariaDB安装。您可以通过运行以下脚本来实现。
mysql_secure_installation
回答所有问题并设置根密码,如下所示。
Enter current password for root (enter for none): OK, successfully used password, moving on... Set root password? [Y/n] Y Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
一旦MariaDB受保护,请使用以下命令登录MariaDB:
mysql
登录后,使用以下命令创建SOGo数据库和用户。
MariaDB [(none)]> CREATE DATABASE sogo;MariaDB [(none)]> GRANT ALL ON sogo.* TO 'sogo'@'localhost' IDENTIFIED BY 'password';
然后将数据库更改为SOGo,创建所需的表,并使用以下命令插入一些值:
MariaDB [(none)]> USE sogo;MariaDB [sogo]> CREATE TABLE sogo_users (c_uid VARCHAR(10) PRIMARY KEY, c_name VARCHAR(10), c_password VARCHAR(32), c_cn VARCHAR(128), mail VARCHAR(128));MariaDB [sogo]> INSERT INTO sogo_users VALUES ('admin', 'admin', MD5('password'), 'Hitesh', '[email protected]');
然后刷新特权并使用以下命令退出MariaDB:
MariaDB [sogo]> flush privileges;MariaDB [sogo]> exit;
完成后,您可以继续下一步。
安装SOGo
默认情况下,SOGo在Debian 10的默认存储库中不可用,必须从官方网站下载。您可以在以下位置查看所有软件包 Sope下载页面 和 崇光下载页面您也可以使用以下命令手动下载它:
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sogo/sogo_5.0.1.20201110-1_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sogo/sogo-activesync_5.0.1.20201110-1_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sogo/sogo-dbg_5.0.1.20201110-1_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sogo/sogo-dev_5.0.1.20201110-1_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsbjson2.3-dev_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsbjson2.3_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-appserver4.9-dev_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-appserver4.9_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-core4.9-dev_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-core4.9_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-gdl1-4.9-dev_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-gdl1-4.9_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-ldap4.9-dev_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-ldap4.9_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-mime4.9-dev_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-mime4.9_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-xml4.9-dev_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-xml4.9_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope4.9-dev_4.9.r1664.20201103_all.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-appserver_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-dbg_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-gdl1-mysql_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-gdl1-postgresql_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-libxmlsaxdriver_4.9.r1664.20201103_amd64.debwget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-stxsaxdriver_4.9.r1664.20201103_amd64.deb
下载所有软件包后,请运行以下命令来安装所有软件包。
dpkg -i *.deb
当我运行上面的命令时,我得到一个依赖错误。您可以运行以下命令来安装所有缺少的依赖项。
apt-get install -f
安装所有依赖项后,请启动SOGo服务,以便可以使用以下命令在系统重新启动时启动它:
systemctl start sogosystemctl enable sogo
完成后,您可以继续下一步。
安装和配置Apache Web服务器
接下来,您需要安装和配置Apache Web服务器以通过端口80为SOGo服务。您可以通过运行以下命令来安装它:
apt-get install apache2 -y
安装Apache Web服务器后,运行以下命令以启用所有必需的模块。
a2enmod proxy proxy_http headers rewrite
然后使用以下命令启用SOGo的默认虚拟主机文件。
a2enconf SOGo.conf
接下来,您需要编辑SOGo虚拟主机配置文件,并将https连接替换为http,将443替换为端口80。
nano /etc/apache2/conf-enabled/SOGo.conf
找到下一行。
RequestHeader set "x-webobjects-server-port" "443" RequestHeader set "x-webobjects-server-url" "https://%{HTTP_HOST}e" env=HTTP_HOST
我将它们替换为:
RequestHeader set "x-webobjects-server-port" "80" RequestHeader set "x-webobjects-server-url" "http://%{HTTP_HOST}e" env=HTTP_HOST
保存并关闭文件,然后运行以下命令以检查Apache服务器的语法错误:
apachectl configtest
如果一切正常,您应该获得以下输出:
Syntax OK
最后,重新启动Apache服务以应用更改。
systemctl restart apache2
您还可以使用以下命令检查Apache服务的状态:
systemctl status apache2
您应该获得以下输出:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2020-11-12 04:17:37 UTC; 14s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 15278 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 15282 (apache2) Tasks: 55 (limit: 4701) Memory: 17.2M CGroup: /system.slice/apache2.service ??15282 /usr/sbin/apache2 -k start ??15283 /usr/sbin/apache2 -k start ??15284 /usr/sbin/apache2 -k start Nov 12 04:17:37 debian10 systemd[1]: Starting The Apache HTTP Server...
至此,已经安装并配置了Apache Web服务器。现在,您可以继续下一步。
弥补SOGo
接下来,您需要配置SOGo以使用MariaDB进行身份验证,并定义SOGo配置文件,OCS文件夹,COS会话和超级用户名。 您可以通过编辑SOGo主配置文件来做到这一点:
nano /etc/sogo/sogo.conf
在最后一行之前添加以下行}:
SOGoProfileURL = "mysql://sogo:[email protected]:5432/sogo/sogo_user_profile"; OCSFolderInfoURL = "mysql://sogo:[email protected]:5432/sogo/sogo_folder_info"; OCSSessionsFolderURL = "mysql://sogo:[email protected]:5432/sogo/sogo_sessions_folder"; SOGoPasswordChangeEnabled = YES; SOGoUserSources = ( { type = sql; id = users; viewURL = "mysql://sogo:[email protected]:3306/sogo/sogo_users"; canAuthenticate = YES; isAddressBook = NO; userPasswordAlgorithm = md5; } ); SOGoPageTitle = SOGo; SOGoVacationEnabled = YES; SOGoForwardEnabled = YES; SOGoSieveScriptsEnabled = YES; SOGoMailAuxiliaryUserAccountsEnabled = YES; SOGoTrustProxyAuthentication = NO; SOGoXSRFValidationEnabled = YES; SOGoSuperUsernames = (admin); // This is an array - keep the parens!
完成后,保存并关闭文件,然后重新启动SOGo服务以应用更改。
systemctl restart sogo
现在,您可以通过运行以下命令来检查SOGo服务的状态:
systemctl status sogo
您应该获得以下输出:Advertisement
? sogo.service - LSB: SOGo server Loaded: loaded (/etc/init.d/sogo; generated) Active: active (running) since Thu 2020-11-12 04:19:00 UTC; 3s ago Docs: man:systemd-sysv-generator(8) Process: 15422 ExecStart=/etc/init.d/sogo start (code=exited, status=0/SUCCESS) Tasks: 4 (limit: 4701) Memory: 44.9M CGroup: /system.slice/sogo.service ??15493 /usr/sbin/sogod -WOWorkersCount 3 -WOPidFile /var/run/sogo/sogo.pid -WOLogFile /var/log/sogo/sogo.log ??15495 /usr/sbin/sogod -WOWorkersCount 3 -WOPidFile /var/run/sogo/sogo.pid -WOLogFile /var/log/sogo/sogo.log ??15496 /usr/sbin/sogod -WOWorkersCount 3 -WOPidFile /var/run/sogo/sogo.pid -WOLogFile /var/log/sogo/sogo.log ??15497 /usr/sbin/sogod -WOWorkersCount 3 -WOPidFile /var/run/sogo/sogo.pid -WOLogFile /var/log/sogo/sogo.log Nov 12 04:19:00 debian10 systemd[1]: Starting LSB: SOGo server... Nov 12 04:19:00 debian10 sogo[15422]: Starting SOGo: sogo. Nov 12 04:19:00 debian10 systemd[1]: Started LSB: SOGo server.
此时,SOGo已启动并正在侦听端口20000。您可以使用以下命令进行检查。
ss -ntpl | grep -i sogo
您应该获得以下输出:
LISTEN 0 5 127.0.0.1:20000 0.0.0.0:* users:(("sogod",pid=15497,fd=3),("sogod",pid=15496,fd=3),("sogod",pid=15495,fd=3),("sogod",pid=15493,fd=3))
完成后,您可以继续下一步。
访问SOGo Web界面
然后打开网络浏览器并输入URL http:// your-server-ip / SOGo 访问SOGo Web UI。您将被重定向到下一页。
输入管理员用户名admin和密码“ password”,然后单击。 >> >> 按钮。下一页显示SOGo的默认仪表板。
结论
恭喜!现在,已在Debian 10上使用Apache成功安装和配置了SOGo组件。现在,您可以探索SOGo的其他功能,并将其部署在生产环境中。如有任何疑问,请随时与我们联系。