Поиск по сайту:

Как установить групповое ПО SOGo на Debian 10


Это руководство существует для этих версий ОС

  • Debian 10 (Бастер)
  • Debian 8 (Джесси)

На этой странице

  1. Предпосылки
  2. Начало работы
  3. Установка и настройка MariaDB
  4. Установить SOGo
  5. Установка и настройка веб-сервера Apache
  6. Настроить SOGo
  7. Доступ к веб-интерфейсу SOGo
  8. Заключение

SOGo — это бесплатный сервер для совместной работы с открытым исходным кодом, выпущенный под лицензией GNU GPL/LGPL v2 и выше. Он поставляется с простым и удобным веб-интерфейсом и поддерживает несколько собственных клиентов. Он обеспечивает встроенную поддержку Microsoft ActiveSync, а также поддерживает мобильные устройства, такие как Apple iPhone, Android, Windows Phone и BlackBerry.

Функции

  • Поддерживает несколько языков.
  • Поделитесь своей почтой, календарями и адресными книгами с другими пользователями.
  • Установите будильник на важные события и получайте оповещения прямо из браузера.
  • Получать уведомления на рабочем столе.
  • Создавайте почту в формате HTML с помощью полного встроенного редактора форматированного текста.
  • Поддерживает несколько учетных записей электронной почты.
  • Импорт и экспорт каландра и почтового ящика.
  • Поддерживает двухфакторную аутентификацию.

В этом руководстве мы покажем вам, как установить сервер групповой работы SOGo на Debian 10.

Предпосылки

  • Сервер под управлением Debian 10.
  • Пароль root настраивается на сервере.

Начиная

Перед запуском рекомендуется обновить и обновить ваш сервер до последней версии. Вы можете сделать это, выполнив следующую команду:

apt-get update -y
apt-get upgrade -y

Как только ваш сервер будет обновлен, перезапустите его, чтобы применить все изменения.

Установить и настроить MariaDB

SOGo использует MariaDB/MySQL в качестве базы данных. Поэтому вам нужно будет установить его на свой сервер. Вы можете установить его, просто выполнив следующую команду:

apt-get install mariadb-server -y

После установки MariaDB вам необходимо защитить установку MariaDB. Вы можете сделать это, запустив следующий скрипт:

mysql_secure_installation

Ответьте на все вопросы, как показано ниже, чтобы установить пароль root:

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', '');

Затем сбросьте привилегии и выйдите из MariaDB с помощью следующей команды:

MariaDB [sogo]> flush privileges;
MariaDB [sogo]> exit;

Как только вы закончите, вы можете перейти к следующему шагу.

Установить SOGo

По умолчанию SOGo недоступен в стандартном репозитории Debian 10, поэтому вам нужно будет загрузить его с официального сайта. Вы можете увидеть все пакеты на странице загрузки Sogo. Вы также можете загрузить его вручную, используя следующую команду:

wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sogo/sogo_5.0.1.20201110-1_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sogo/sogo-activesync_5.0.1.20201110-1_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sogo/sogo-dbg_5.0.1.20201110-1_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sogo/sogo-dev_5.0.1.20201110-1_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsbjson2.3-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsbjson2.3_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-appserver4.9-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-appserver4.9_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-core4.9-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-core4.9_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-gdl1-4.9-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-gdl1-4.9_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-ldap4.9-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-ldap4.9_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-mime4.9-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-mime4.9_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-xml4.9-dev_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope-xml4.9_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/libsope4.9-dev_4.9.r1664.20201103_all.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-appserver_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-dbg_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-gdl1-mysql_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-gdl1-postgresql_4.9.r1664.20201103_amd64.deb
wget https://packages.inverse.ca/SOGo/nightly/5/debian/pool/buster/s/sope/sope4.9-libxmlsaxdriver_4.9.r1664.20201103_amd64.deb
wget 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 sogo
systemctl enable sogo

Как только вы закончите, вы можете перейти к следующему шагу.

Установка и настройка веб-сервера Apache

Далее вам нужно будет установить и настроить веб-сервер Apache для обслуживания SOGo через порт 80. Вы можете установить его, выполнив следующую команду:

apt-get install apache2 -y

После установки веб-сервера Apache выполните следующую команду, чтобы включить все необходимые модули:

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 установлен и настроен. Теперь вы можете перейти к следующему шагу.

Настроить SOGo

Затем вам нужно будет настроить SOGo для использования MariaDB для аутентификации, определить профиль SOGo, папку OCS, сеансы COS и имя суперпользователя. Вы можете сделать это, отредактировав основной файл конфигурации SOGo:

nano /etc/sogo/sogo.conf

Добавьте следующие строки перед последней строкой }:

SOGoProfileURL = "mysql://sogo::5432/sogo/sogo_user_profile";
OCSFolderInfoURL = "mysql://sogo::5432/sogo/sogo_folder_info";
OCSSessionsFolderURL = "mysql://sogo::5432/sogo/sogo_sessions_folder";

SOGoPasswordChangeEnabled = YES;

SOGoUserSources =
  (
    {
      type = sql;
      id = users;
     viewURL = "mysql://sogo::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

Вы должны получить следующий результат:

? 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

Теперь откройте веб-браузер и введите URL-адрес http://your-server-ip/SOGo, чтобы получить доступ к веб-интерфейсу SOGo. Вы будете перенаправлены на следующую страницу:

Укажите имя пользователя администратора как admin и пароль как «пароль», затем нажмите кнопку >. Вы должны увидеть панель инструментов SOGo по умолчанию на следующей странице:

Заключение

Поздравляем! вы успешно установили и настроили программное обеспечение групповой работы SOGo с Apache в Debian 10. Теперь вы можете изучить дополнительные функции SOGo и развернуть его в своей производственной среде. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.