Cómo instalar SOGo Groupware en Debian 10

Iniciar sesión

SOGo es un servidor de trabajo en grupo gratuito, de c√≥digo abierto y colaborativo lanzado bajo GNU GPL/LGPL v2 y superior. Viene con una interfaz basada en web simple y f√°cil de usar y es compatible con m√ļltiples clientes nativos. Proporciona soporte nativo de Microsoft ActiveSync y tambi√©n es compatible con dispositivos m√≥viles como Apple iPhone, Android, Windows Phone y BlackBerry.

Características

  • Soporta m√ļltiples idiomas.
  • Comparta su correo, calendarios y libretas de direcciones con otros usuarios.
  • Configure alarmas para eventos importantes y reciba alertas directamente desde su navegador.
  • Recibir notificaciones de escritorio.
  • Redacte correo HTML con el completo editor de texto enriquecido en l√≠nea.
  • Soporta m√ļltiples cuentas de correo.
  • Importar y Exportar calendario y buz√≥n.
  • Soporta autenticaci√≥n de dos factores.

En este tutorial, le mostraremos cómo instalar el servidor de trabajo en grupo SOGo en Debian 10.

requisitos previos

  • Un servidor que ejecuta Debian 10.
  • Se configura una contrase√Īa de root en el servidor.

Empezando

Antes de comenzar, se recomienda actualizar y actualizar su servidor a la √ļltima versi√≥n. Puedes hacerlo ejecutando el siguiente comando:

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

Una vez que su servidor esté actualizado, reinícielo para aplicar todos los cambios.

Instalar y configurar MariaDB

SOGo usa MariaDB/MySQL como base de datos. Por lo tanto, deber√° instalarlo en su servidor. Puede instalarlo simplemente ejecutando el siguiente comando:

apt-get install mariadb-server -y

Una vez que MariaDB esté instalado, deberá asegurar la instalación de MariaDB. Puedes hacerlo ejecutando el siguiente script:

mysql_secure_installation

Responda todas las preguntas como se muestra a continuaci√≥n para establecer la contrase√Īa de 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

Una vez que su MariaDB esté protegida, inicie sesión en MariaDB con el siguiente comando:

mysql

Una vez que inicie sesión, cree una base de datos y un usuario para SOGo con el siguiente comando:

MariaDB [(none)]> CREATE DATABASE sogo;
MariaDB [(none)]> GRANT ALL ON sogo.* TO 'sogo'@'localhost' IDENTIFIED BY 'password';

Luego, cambie la base de datos a SOGo y cree una tabla requerida e inserte algunos valores con el siguiente comando:

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

A continuación, elimine los privilegios y salga de MariaDB con el siguiente comando:

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

Una vez que haya terminado, puede continuar con el siguiente paso.

Instalar SOGo

De forma predeterminada, SOGo no está disponible en el repositorio predeterminado de Debian 10, por lo que deberá descargarlo de su sitio web oficial. Puedes ver todos los paquetes en pagina de descarga de sope y Página de descarga de SogoTambién puede descargarlo manualmente usando el siguiente comando:

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

Una vez que se hayan descargado todos los paquetes, inst√°lelos ejecutando el siguiente comando:

dpkg -i *.deb

Después de ejecutar el comando anterior, obtendrá un error de dependencia. Puede instalar todas las dependencias que faltan ejecutando el siguiente comando:

apt-get install -f

Una vez que todas las dependencias estén instaladas, inicie el servicio SOGo y habilítelo para que se inicie al reiniciar el sistema con el siguiente comando:

systemctl start sogo
systemctl enable sogo

Una vez que haya terminado, puede continuar con el siguiente paso.

Instalar y configurar el servidor web Apache

A continuación, deberá instalar y configurar el servidor web Apache para servir SOGo a través del puerto 80. Puede instalarlo ejecutando el siguiente comando:

apt-get install apache2 -y

Una vez que el servidor web Apache esté instalado, ejecute el siguiente comando para habilitar todos los módulos necesarios:

a2enmod proxy proxy_http headers rewrite

A continuación, habilite el archivo de host virtual predeterminado de SOGo con el siguiente comando:

a2enconf SOGo.conf

A continuación, deberá editar el archivo de configuración del host virtual SOGo y reemplazar la conexión https con http y 443 con el puerto 80:

nano /etc/apache2/conf-enabled/SOGo.conf

Encuentra las siguientes líneas:

  RequestHeader set "x-webobjects-server-port" "443"
  RequestHeader set "x-webobjects-server-url" "https://%{HTTP_HOST}e" env=HTTP_HOST

Y, los reemplazó con lo siguiente:

  RequestHeader set "x-webobjects-server-port" "80"
  RequestHeader set "x-webobjects-server-url" "http://%{HTTP_HOST}e" env=HTTP_HOST

Guarde y cierre el archivo, luego verifique si hay alg√ļn error de sintaxis en el servidor Apache ejecutando el siguiente comando: Anuncio

apachectl configtest

Si todo está bien, debería obtener el siguiente resultado:

Syntax OK

Finalmente, reinicie el servicio de Apache para aplicar los cambios:

systemctl restart apache2

También puede verificar el estado del servicio de Apache con el siguiente comando:

systemctl status apache2

Deberías obtener el siguiente resultado:

? 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...

En este punto, el servidor web Apache est√° instalado y configurado. Ahora puede continuar con el siguiente paso.

Configurar SOGo

A continuación, deberá configurar SOGo para usar MariaDB para la autenticación, definir el perfil SOGo, la carpeta OCS, las sesiones COS y el nombre de superusuario. Puede hacerlo editando el archivo de configuración principal de SOGo:

nano /etc/sogo/sogo.conf

Agregue las siguientes l√≠neas antes de la √ļltima l√≠nea }:

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!

Guarde y cierre el archivo cuando haya terminado, luego reinicie el servicio SOGo para aplicar los cambios:

systemctl restart sogo

Ahora puede verificar el estado del servicio SOGo ejecutando el siguiente comando:

systemctl status sogo

Deberías obtener el siguiente resultado:

? 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.

En este punto, SOGo se inicia y escucha en el puerto 20000. Puede verificarlo con el siguiente comando:

ss -ntpl | grep -i sogo

Deberías obtener el siguiente resultado:

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))

Una vez que haya terminado, puede continuar con el siguiente paso.

Acceder a la interfaz web de SOGo

Ahora, abra su navegador web y escriba la URL http://ip-de-su-servidor/SOGo para acceder a la interfaz de usuario web de SOGo. Ser√° redirigido a la siguiente p√°gina:

  • Iniciar sesi√≥n

Proporcione su nombre de usuario de administrador como administrador y la contrase√Īa como ¬ęcontrase√Īa¬Ľ y luego haga clic en el > bot√≥n. Deber√≠a ver el panel predeterminado de SOGo en la siguiente p√°gina:

Tablero de SOGo Groupware

Conclusión

¡Felicidades! Ha instalado y configurado con éxito el software colaborativo SOGo con Apache en Debian 10. Ahora puede explorar SOGo para obtener más funciones e implementarlo en su entorno de producción. No dude en preguntarme si tiene alguna pregunta.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *