Instalación dun chat corporativo Rocket.Chat en Linux

Anonim

Rocket.Chat é un chat de código aberto de código aberto gratuíto deseñado con Meteor. Rocket.Chat pode considerarse un análogo da folga, que pode ser despregado no seu servidor e conectarse a el de clientes en Linux, Windows, MacOS, Android e iOS.

Instalación dun chat corporativo Rocket.Chat en Linux 18002_1

Funcións ROCKET.CHAT

  • Chat en tempo real
  • Conferencia de audio
  • Video Conferencing.
  • Canles
  • Invitado Interior.
  • Pantalla de transmisión
  • Transferencia de ficheiros
  • API con todo tipo

Para garantir a seguridade utilizada:

  • Sincronización do grupo LDAP
  • 2FA autenticación de dous factores
  • A través da cifra
  • Entrada única SSO.
  • Varios provedores de autenticación OUTH

Dixemos como instalar e configurar o servidor e o cliente Rocket.Chat en Linux.

Paso 1. Instalar Snap en Linux

Para a sinxeleza, usaremos o sistema de xestión de paquetes de Snaps. Primeiro de todo, ten que instalar o paquete SNAPD usando o xestor de paquetes.

$ sudo apt install snapd #ubuntu and debian $ sudo dnf instalar snapd #fedora 22 + / Centos / rhel 8 $ sudo yum instalar snapd # CentOS / RHEL 7

A continuación, debes habilitar o módulo Systemd que controla o principal enchufe de comunicación instantánea. Este comando comezará o socket e permitirá que comece cando se cargue o sistema.

$ Sudo SystemCTL Activar --Now Snapd.Socket

Paso 2: Instalar Rocket.Chat en Linux

Para instalar Rocketchat-Server, execute:

$ sudo snap instalar rocketchatchat-server

Cando se completa a instalación a través de Snap, Rocket.Chat Server comezará a traballar e escoitará o porto 3000. A continuación, abra o navegador web e introduza a seguinte dirección para configurar Rocket.Chat a través de GUI.

http: // server_ip: 3000

Despois de descargar o asistente de configuración, especifique os seguintes parámetros: o nome de administrador completo, nome de usuario, enderezo de correo electrónico da organización e contrasinal.

Instalación dun chat corporativo Rocket.Chat en Linux 18002_2

A continuación, cómpre especificar información sobre a organización: tipo de organización, nome, industria, tamaño, país e sitio.

Instalación dun chat corporativo Rocket.Chat en Linux 18002_3

A continuación, necesitas especificar a información do servidor: o nome do sitio, o idioma, o tipo de servidor e a conectar ou desactivar a autenticación de dous factores de 2FA.

Instalación dun chat corporativo Rocket.Chat en Linux 18002_4

Na seguinte páxina ten que rexistrar o servidor. Hai dúas opcións aquí. O primeiro é usar pasarelas e proxies predefinidas proporcionadas por Rocket.Chat segundo: aforrar a autonomía e crear contas dos provedores de servizos, actualizar os parámetros predefinidos e recompilar as aplicacións móbiles cos seus certificados privados.

Instalación dun chat corporativo Rocket.Chat en Linux 18002_5

A configuración rematada e o seu espazo de traballo está listo, agora cómpre facer clic en Ir ao seu espazo de traballo (ir ao espazo de traballo)

Instalación dun chat corporativo Rocket.Chat en Linux 18002_6

Así é como parece.

Instalación dun chat corporativo Rocket.Chat en Linux 18002_7
Paso 3: Inverter Proxy Setup para Rocket.Chat

O servidor proxy inverso, como Nginx ou Apache, permítelle configurar a aplicación Rocket.Chat para acceder a través dun dominio ou subdominio. Rocket.Chat é un servidor de aplicacións de nivel medio que non admite SSL / TLS. O proxy inverso permitirache personalizar certificados SSL / TLS para activar HTTPS.

Inversa proxy nginx para Rocket.Chat

Primeiro instalar nginx.

$ sudo apt apt install nginx # ubuntu / debian $ sudo dnf install nginx #fedora 22 + / centos / rhel 8 $ sudo yum install nginx # CentOS / rhel 7

A continuación, executa o servizo de Nginx, acenda o seu inicio automático ao cargar o sistema e comprobar o seu estado

$ sudo SystemCl Activar - Novow Nginx $ sudo SystemCTL Status Nginx

A continuación, cree un ficheiro de servidor virtual de bloque para a aplicación Rocket.Chat, por exemplo, no directorio /etc/nginx/conf.d/.

$ sudo vim /etc/nginx/conf.d/chat.merionet.com.conf

A continuación, insira a configuración a este ficheiro substituíndo o dominio ao seu e gardar.

Backend upstream {server 127.0.0.1:3000; } Servidor {escoitar 80; Server_name chat.merionet.com; # Pode aumentar o límite se precisa. Client_max_body_size 200m; error_log /var/log/nginx/chat.merionet.com.log; Localización / {proxy_pass http: // backend /; proxy_http_version 1.1; Proxy_set_header actualiza $ http_upgrade; Proxy_set_header conexión "Actualizar"; Proxy_Set_Header Host $ http_host; proxy_set_header x-real-IP $ remoto_addr; proxy_set_header X-reenviado por $ proxy_add_x_forwarded_for; proxy_set_header x-forward-proto http; proxy_set_header x-nginx-proxy true; proxy_redirect off; }}

Finalmente, comprobe a sintaxe e reinicie o servizo Nginx.

$ sudo nginx -t $ sudo systemctl reiniciar nginx

Reverse Proxy Apache para Rocket.Chat

Instala o paquete Apache2

$ Sudo Apt Install Apache2 # Ubuntu / Debian $ sudo DNF instalar httpd #fedora 22 + / CentOS / Rhel 8 $ sudo yum instalar httpd # CentOS / RHEL 7

A continuación, executar e habilitar o servizo de Apache e comprobar se está a executarse e correr.

----- En Ubuntu / Debian ----- $ sudo SystemCTL Activar --Now Apache2 $ SUDO SYSTEMCTL Status Apache2 ----- en Centros / RHEL 7/8 ----- $ SUDO SYSTEMCTL Activar - Agora httpd $ sudo systemct status httpd

A continuación, cree un ficheiro de host virtual para a aplicación Rocket.Chat, por exemplo, no directorio / etc / apache2 / sitio / ou /etc/httpd/conf.d/.

----- en Ubuntu / Debian ----- $ sudo vim /etc/apache2/sites-available/chat.merionet.com.conf ----- en céntimos / RHEL 7/8 ----- $ sudo vim /etc/httpd/conf.d/chot.merionet.com.conf

A continuación, insira a configuración a este ficheiro substituíndo o dominio ao seu e gardar.

Serveradmin [email protected] servername chat.merionet.com loglevel info errorlog /var/log/chat.merionet.com_error.log TransferLog /Var/log/chat.merionet.com_Access.log requiren todas as reescritivas concedidas en Rewritecond% {http: Upgrade} = Websocket [NC] ReWriterule /(.*) WS: // localhost: 3000 / $ 1 [p, l] Rewritecond% {http: Upgrade}! = Websocket [NC] ReWriterule /(.*) http: / / Localhost: 3000 / $ 1 [p, l] proxypassriberse / http: // localhost: 3000 /

En Ubuntu e Debian, habilita os módulos Apache2 necesarios e reinicie o servizo.

$ sudo a2enmod proxy_http $ sudo a2enmod proxy_wstunnel $ sudo a2enmod reescribir $ sudo systemctl reiniciar Apache2

En CentOS / RHEL e Fedora reiniciar o servizo Apache.

# SystemCl reiniciar httpd

Agora abra o navegador e introduza a súa dirección configurada e a aplicación Rocket.Chat estará dispoñible a través do seu dominio configurado no servidor proxy.

http://chat.merionet.com.

Instalación dun chat corporativo Rocket.Chat en Linux 18002_8
Paso 4: Instalar clientes Rocket.Chat

As aplicacións do cliente poden descargarse desde o sitio web oficial Rocket.Chat. Para instalar unha aplicación de escritorio en Linux, descarga o paquete DEB (x64) ou RPM (x64) dependendo da súa distribución de Linux.

$ wget -c https://github.com/rocketchat/rocket.chat.electron/releases/download/2.17.7/rocketchat_2.17.7_amd64.deb

Or.

$ wget -c https://github.com/rocketchat/rocket.chat.electron/releases/download/2.17.7/rocketchat-2.17.7.x86_64.rpm

O seguinte paquete usando DPKG ou RPM Packet Manager

$ sudo dpkg -i rocketchat_2.17.7_amd64.deb # ubuntu / debian $ sudo rpm -i rocketchat-2.17.7.x86_64.rpm # CentOS / RedHat

Instalación manual Rocket.Chat.

Se non queres instalar Rocket.Chat a través de Snaps, podes facelo manualmente.

Node de instalación.js.

En primeiro lugar, actualice a lista de paquetes do sistema:

Actualización de sudo apt.

Set node.js, NPM e todas as outras dependencias necesarias para construír paquetes NPM desde o código fonte:

Sudo apt Instalar nodejs npm build-esencial curl software-Propiedades-Common GraphicionMagick

Usaremos n, paquete NPM, que lle permite xestionar de forma interactiva as versións de node.js. Comando a continuación para instalar n e node.js:

Sudo npm install -g herda n sudo n 8.11.3

Instalar Mongodb.

Mongodb é unha base de datos NOSQL orientada ao documento, que é usada por Rocket.Chat para almacenar datos.

Importar a chave pública Mongodb e activar o repositorio oficial de Mongodb:

Sudo apt-key adv --keyyserver hkp ://keyserver.ubuntu.com: 80 --Recv 9da31620334bd75d9dcb49F368818C72E52529d4 sudo add-apt-repositorio 'deb [arch = amd64] https://repo.mongodb.org/apt/ubuntu bionic /Mongodb-org/4.0 Multiverse '

Despois de activar o repositorio APT, actualice a lista de paquetes e instale Mongodb escribindo:

Sudo Apt Update Sudo APT Instalar MONGODB-ORG

A continuación, acende e inicie o servizo Mongodb:

SUDO SYSTEMCTL START MONGOD SUMNO SYSTEMCTL Activar MONGOD

Crear un novo usuario do sistema

Agora ten que crear un novo usuario e grupo chamado Rocket, que executará Rocket.Chat instancias.

Sudo useradd -m -U -r -d / opt / foguete foguete

Engade un usuario de datos www a un novo grupo de usuarios e cambia os dereitos de acceso ao directorio / opt / rocket para que nginx poida acceder á instalación de Rocket.Chat:

Sudo usermod -a -g foguete www-data sudo chmod 750 / opt / foguete

Instalar Rocket.Chat.

Cambiar ao usuario de foguetes

Sudo su - foguete

Cargue a última versión estable de Rocket.Chat usando CURL:

curl -l https://releases.rocket.chat/lateest/download -o Rocket.Chat.tgz

Despois de completar a descarga, elimine o arquivo e cambie o nome do directorio en ROCKET.CHAT:

tar ZXF ROCKET.CHAT.TGZ MV BUNDLE ROCKET.CHAT

Vaia ao directorio Rocket.Chat/Programs/Server e instala todos os paquetes NPM necesarios:

CD Rocket.Chat/Programs/Server NPM Instalar

Para probar a nosa instalación antes de crear o módulo Systemd e configurar o proxy inverso con Nginx ou Apache, instalaremos as variables de ambiente necesarias e iniciaremos o servidor Rocket.Chat

Exportación porto = 3000 exportación root_url = http: //0.0.0.0: 3000 / Export MONGO_URL = MONGODB: // localHost: 27017 / Rocketchat

Volve ao directorio de Rocket.Chat e executa o servidor Rocket.Chat introducindo os seguintes comandos:

CD ../../ nodo main.js

Se non hai erros, debes ver a seguinte conclusión:

? + --------------------------------------------- +? | Servidor en execución | ? + --------------------------------------------- +? | | ? | Rocket.Chat Versión: 0.71.1 | ? | Nodejs Versión: 8.11.3 - x64 | ? | Plataforma: Linux | ? | Porto de proceso: 3000 | ? | URL do sitio: http: //0.0.0: 3000 / | ? | ReplicasET OPLOG: Desactivado | ? | Cometer hash: e73dc78ffd | ? | Commit Tower: Head | ? | | ? + --------------------------------------------- +.

Pare o servidor Rocket.Chat usando CTRL + C e volva ao usuario sudo escribindo a saída.

Creación dun módulo Systemd

Para executar Rocket.Chat como servizo, necesitas crear un ficheiro do módulo de Rocketchat.Service no / etc / Systemd / System / System.

sudo nano /etc/rsystemd/system/rocrocketchat.service.

Inserir o seguinte código:

[Unidade] Descrición = Rocket.Chat Server After = Network.target nss -lookup.target Mongod.Target [servizo] StandaTotPut = Syslog StandardError = Syslog SysLogidentifier = Rocketchat User = // Locket: 27017 / Rocketchat Root_url = https: //chat.merionet.com port = 3000 execstart = / usr / local / bin / node /opt/rocket/rocket.chat/main.js [install] wantby = multi-user.Target

Diga a Systemd que creamos un novo ficheiro de módulo e executamos o servizo Rocket.Chat realizando:

Sudo SystemCTL Daemon-recargar Sudo SystemCTL Comezar Rocketchat

Comprobe o estado do servizo:

SUDO SYSTEMCTL Status Rocketchat

A conclusión debe ser así:

* ROCKETCHAT.SERVICE - ROCKET.CHAT servidor cargado: cargado (/etc/systemd/system/rocketchat.service; desactivado; Preset de provedores: activado) Activo: activo (en funcionamento) Desde que Mércores 2018-11-07 14:36:24 PST ; 5S Main Pid: 12693 (nodo) Tarefas: 10 (límite: 2319) Cgroup: / system.slice / rocketchat.service` -12693 / usr / local / bin / node /Opt/rocket/rket.chat/main.js

Finalmente, acenda o inicio automático do servizo Rocket.Chat durante a descarga:

SUDO SYSTEMCTL Habilitar Rocketchat

Acabado, instalamos Rocket.Chat manualmente, agora pode ir a configurar o proxy inverso e a inicialización do sistema que se describiu desde o paso 3.

Resultados

Neste manual, aprendeu a instalar Rocket.Chat en Linux e como configurar Nginx e Apache como un proxy inverso.

Para obter máis información sobre Rocket.Chat, visite a páxina de documentación.

Le máis