如何在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的默認儀錶板。

SOGo組件儀錶盤

結論

恭喜!現在,已在Debian 10上使用Apache成功安裝和配置了SOGo組件。現在,您可以探索SOGo的其他功能,並將其部署在生產環境中。如有任何疑問,請隨時與我們聯繫。

Source

Sidebar