Instalar Zulip Chat Server en Debian 9.
Zulip Chat es una excelente aplicación de chat con grupos opensource, que nos permite compartir mensajes de manera privada o publica. Es conocido por ser la competencia directa del archi-famoso slack.
Zulip está escrito en Python y hace uso de Django, PostgreSQL y JavaScript.
Zulip ofrece la posibilidad de integrarse fácilmente con GitHub, Jira, Stripe, Zendesk, etc…, también existen aplicaciones de cliente movil para iPhone, Android y escritorio.
Zulip nos brinda un monton de funciones, como mensajes privados, chats grupales, cargas de archivos arrastrables, Emoji y Emoji Reactions, vista previa de Tweet y muchas más.
En este articulo vemos cómo instalar la aplicación del servidor de chat Zulip en Debian 9.
Primero actualizamos e instalamos las librerías imprescindibles en el sistema.
1 2 3 | sudo apt-get update -y && sudo apt-get upgrade -y sudo apt-get install python-dev python-pip openssl nano wget -y |
El servidor Zulip funciona sobre una conexión HTTPS, por lo que deberemos generar un certificado SSL autofirmado u obtener un certificado SSL comercial. En este tutorial generaremos un certificado privado.
Generamos la clave RSA.
1 | openssl genrsa -des3 -passout pass:x -out server.pass.key 2048 |
Copiamos la clave privada RSA en el archivo zulip.key.
1 | openssl rsa -passin pass:x -in server.pass.key -out zulip.key |
Creamos la solicitud de la firma.
1 | openssl req -new -key zulip.key -out server.csr |
Rellena los campos que te solicita:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:IN State or Province Name (full name) [Some-State]:Gujarat Locality Name (eg, city) []:Ahmedabad Organization Name (eg, company) [Internet Widgits Pty Ltd]:ENJ Organizational Unit Name (eg, section) []:IT Common Name (e.g. server FQDN or YOUR name) []:Hitesh Email Address []:hitjethva@gmail.com Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []: |
Una vez terminado el proceso, generamos los certificados.
1 | openssl x509 -req -days 365 -in server.csr -signkey zulip.key -out zulip.combined-chain.crt |
Copiamos la key y el certificado.
1 2 3 | sudo cp zulip.key /etc/ssl/private/zulip.key sudo cp zulip.combined-chain.crt /etc/ssl/certs/zulip.combined-chain.crt |
Una vez terminado el proceso de los certificados, procedemos a instalar Zulip Chat Server.
Descargamos la ultima versión.
1 | wget https://www.zulip.org/dist/releases/zulip-server-latest.tar.gz |
la descomprimimos…
1 | tar -xvzf zulip-server-latest.tar.gz |
Si quieres revisar la ultima versión, la encontraras en… https://www.zulip.org/dist/releases/
Vamos a la ultima versión, en este caso…
1 | mv zulip-server-1.7.1 zulip |
Abrimos el directorio e instalamos.
1 2 3 | cd zulip sudo ./scripts/setup/install |
Se paciente.
Cuando finalice la instalación debemos de configurar nuestro servidor, no te preocupes es muy sencillo.
Accede.
1 | sudo nano /etc/zulip/settings.py |
edita con tus datos
1 2 3 4 5 | EXTERNAL_HOST localhost ZULIP_ADMINISTRATOR admin@tudominio.com ADMIN_DOMAIN tudominio.com DEFAULT_FROM_EMAIL admin@tudominio.com NOREPLY_EMAIL_ADDRESS admin@tudominio.com |
Guarda y cierra el editor.
Llego el momento de la verdad, debes iniciar tu basa de datos PostgreSQL.
1 | su zulip -c /home/zulip/deployments/current/scripts/setup/initialize-database |
si seguiste los pasos correctamente tan solo necesitas reiniciar el servidor del chat.
1 | su zulip -c /home/zulip/deployments/current/scripts/restart-server |
Observa lo fantástico que es este chat.