Cómo instalar SOGo Groupware en Debian 10
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:
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:
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.