Pesquisa de site

Rocket.Chat - Ferramenta de comunicação de equipe de código aberto para Linux


Rocket.Chat é uma plataforma gratuita, de código aberto, escalonável, altamente personalizável e segura que permite que você se comunique e colabore com sua equipe, compartilhe arquivos e converse em tempo real. É multiplataforma e funciona em sistemas operacionais móveis Linux, Windows, macOS, Android e iOS.

É semelhante ao Slack e oferece chat ao vivo, conferências gratuitas de áudio e vídeo, canais, acesso de convidados, compartilhamento de tela e compartilhamento de arquivos. Para garantir uma comunicação segura, ele suporta sincronização de grupo LDAP, autenticação de dois fatores (2FA), criptografia ponta a ponta, logon único e vários provedores Oauth.

É importante ressaltar que, sendo totalmente de código aberto, você pode acessar seu código-fonte para personalizar, estender ou adicionar totalmente novas funcionalidades para atender aos requisitos de sua equipe ou de negócios.

Neste artigo, você aprenderá como instalar e configurar o servidor e cliente Rocket.Chat em um sistema Linux.

Etapa 1: Instalando Snaps no Linux

1. A maneira mais fácil de instalar o Rocket.Chat é usando Snaps – são suportados pela maioria, senão por todas as distribuições Linux modernas e são seguros porque eles são executados confinados em uma área restrita de segurança. Além disso, com os snaps, você também pode atualizar automaticamente quando uma nova versão de um pacote estiver disponível.

Primeiro, certifique-se de ter o pacote snapd instalado em seu sistema, caso contrário, instale-o usando seu gerenciador de pacotes padrão, conforme mostrado.

sudo apt install snapd		#Ubuntu and Debian
sudo dnf install snapd		#Fedora 22+/CentOS/RHEL 8
sudo yum install snapd		#CentOS/RHEL 7

2. Quando a instalação for concluída, você precisará habilitar a unidade systemd que gerencia o soquete de comunicação snap principal da seguinte maneira. Observe que este comando iniciará o soquete e permitirá que ele seja iniciado na inicialização do sistema. No Ubuntu, isso deve ser feito automaticamente após a conclusão da instalação do pacote.

sudo systemctl enable --now snapd.socket

Além disso, você pode ativar o suporte ao snap clássico criando um link simbólico entre /var/lib/snapd/snap e /snap.

 
sudo ln -s /var/lib/snapd/snap /snap

Etapa 2: Instalando Rocket.Chat no Linux

3. Agora que você instalou o Snapd, execute o seguinte comando para instalar o rocketchat-server.
$sudo snap install servidor rocketchat

4. Quando a instalação instantânea for concluída, seu servidor rocket.chat começará a rodar e escutar na porta 3000 por padrão. Abra um navegador da web e digite o seguinte endereço para configurar rocket.chat no sistema.

http://SERVER_IP:3000

5. Depois que o assistente de configuração for carregado, forneça o nome completo, nome de usuário, e-mail organizacional e senha do usuário administrativo.

6. Em seguida, forneça as informações organizacionais (tipo de organização, nome, setor, tamanho, país e site) e clique em Continuar.

7. Em seguida, forneça as informações do servidor (nome do site, padrão, tipo de servidor e também habilite 2FA ou não). Em seguida, clique em Continuar.

8. Na próxima página, registre o servidor. Existem duas opções aqui, o padrão é usar os gateways e proxies pré-configurados fornecidos pelo Rocket.Chat (esta é a opção recomendada).

Alternativamente, você pode optar por manter-se autônomo e criar contas com provedores de serviços, atualizar configurações pré-configuradas e também recompilar os aplicativos móveis com seus certificados privados. E clique em Continuar.

A configuração está concluída e seu espaço de trabalho está pronto. Clique em Ir para seu espaço de trabalho.

Etapa 3: configurando o proxy reverso para Rocket.Chat

9. Um proxy reverso como NGINX ou Apache permite que você configure o aplicativo Rocket.Chat para ser acessível através de um domínio ou subdomínio (por exemplo, http://chat.linux-console.net) em vez de digitar o endereço do servidor e a porta do aplicativo (por exemplo, http://10.42.0.247:3000 >).

Além disso, Rocket.Chat é um servidor de aplicativos de camada intermediária que não suporta SSL/TLS. Um proxy reverso também permite configurar certificados SSL/TLS para habilitar HTTPS.

Habilitar proxy reverso Nginx para Rocket.Chat

10. Primeiro, instale o pacote NGINX se ele ainda não estiver instalado em seu sistema.

sudo apt apt install nginx		#Ubuntu/Debian 
sudo dnf install nginx		#Fedora 22+/CentOS/RHEL 8
sudo yum install nginx		#CentOS/RHEL 7

11. Assim que a instalação do pacote for concluída, inicie o serviço Nginx, por enquanto, habilite-o para iniciar automaticamente na inicialização do sistema e verifique seu status para garantir que esteja em execução.

sudo systemctl enable --now nginx
sudo systemctl status nginx

12. Em seguida, crie um arquivo de bloco de servidor virtual para o aplicativo Rocket.Chat no diretório /etc/nginx/conf.d/, por exemplo.

sudo vim /etc/nginx/conf.d/chat.linux-console.net.conf

Em seguida, copie e cole a seguinte configuração no arquivo (substitua chat.linux-console.net pelo seu subdomínio ou domínio válido).

upstream backend {
    server 127.0.0.1:3000;
}

server {
    listen 80;
    server_name chat.linux-console.net;

    # You can increase the limit if you need to.
    client_max_body_size 200M;

    error_log /var/log/nginx/chat.tecmint.com.log;

    location / {
        proxy_pass http://backend/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $http_host;

        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forward-Proto http;
        proxy_set_header X-Nginx-Proxy true;
        proxy_redirect off;
    }
}

Salve o arquivo e feche-o.

13. Em seguida, verifique a configuração do NGINX para ver se há algum problema de sintaxe. Se estiver tudo bem, reinicie o serviço Nginx para aplicar as alterações recentes.

sudo nginx -t
sudo systemctl restart nginx

Habilitar proxy reverso Apache para Rocket.Chat

14. Comece instalando o pacote Apache2 se ainda não estiver instalado em seu sistema.

sudo apt install apache2		#Ubuntu/Debian 
sudo dnf install httpd		#Fedora 22+/CentOS/RHEL 8
sudo yum install httpd		#CentOS/RHEL 7

15. Em seguida, inicie e habilite o serviço Apache e verifique se ele está instalado e funcionando da seguinte maneira.

----- On Ubuntu/Debian -----
sudo systemctl enable --now apache2 	
sudo systemctl status apache2

----- On CentsOS/RHEL 7/8 ----- 
sudo systemctl enable --now httpd
sudo systemctl status httpd

16. Em seguida, crie um arquivo host virtual para o aplicativo Rocket.Chat em /etc/apache2/sites-available/ ou /etc/httpd/conf.d/, por exemplo.

----- On Ubuntu/Debian -----
sudo vim /etc/apache2/sites-available/chat.linux-console.net.conf

----- On CentsOS/RHEL 7/8 ----- 
sudo vim /etc/httpd/conf.d/chat.linux-console.net.conf

17. Copie e cole a seguinte configuração nele, substitua chat.linux-console.net pelo seu domínio válido.

<VirtualHost *:80>
    ServerAdmin [email 
    ServerName chat.linux-console.net

    LogLevel info
    ErrorLog /var/log/chat.linux-console.net_error.log
    TransferLog /var/log/chat.linux-console.net_access.log

    <Location />
        Require all granted
    </Location>

    RewriteEngine On
    RewriteCond %{HTTP:Upgrade} =websocket [NC]
    RewriteRule /(.*)           ws://localhost:3000/$1 [P,L]
    RewriteCond %{HTTP:Upgrade} !=websocket [NC]
    RewriteRule /(.*)           http://localhost:3000/$1 [P,L]

    ProxyPassReverse /          http://localhost:3000/
</VirtualHost>

Salve o arquivo e feche-o.

18. No Ubuntu e no Debian, habilite os módulos apache2 necessários e reinicie o serviço para aplicar as alterações recentes.

sudo a2enmod proxy_http
sudo a2enmod proxy_wstunnel
sudo a2enmod rewrite
sudo systemctl restart apache2

No CentOS/RHEL e Fedora, simplesmente reinicie o serviço Apache.

systemctl restart httpd

19. Agora que tudo está configurado corretamente, abra seu navegador e digite o seguinte endereço. O aplicativo Rocket.Chat deve estar acessível usando seu domínio configurado no servidor proxy.

http://chat.linux-console.net

20. A próxima etapa crucial é adicionar os benefícios de segurança e privacidade de um certificado HTTPS ao seu serviço de chat. Para um ambiente de produção, recomendamos o uso do Let’s Encrypt, que é gratuito e confiável para a maioria dos navegadores modernos.

Observe que o Let’s Encrypt é automatizado: você pode usar o certbot, uma ferramenta gratuita de código aberto para obter e instalar automaticamente ou simplesmente obter e instalar manualmente os certificados Let’s Encrypt nas principais distribuições Linux e servidores web.

Etapa 4: instalação de clientes Rocket.Chat na área de trabalho

21. Por último, mas não menos importante, você pode baixar e instalar um aplicativo de desktop Rocket.Chat para Linux, Mac ou Windows a partir do Rocket.Chat > site do projeto. Ele também fornece aplicativos móveis para Android e iOS.

Para instalar o aplicativo de desktop no Linux, você baixa um pacote deb (x64) ou rpm (x64), dependendo da sua distribuição 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

22. Em seguida, instale o pacote usando o gerenciador de pacotes dpkg ou rpm conforme mostrado.

sudo dpkg -i rocketchat_2.17.7_amd64.deb      #Ubuntu/Debian
sudo rpm -i rocketchat-2.17.7.x86_64.rpm      #CentOS/RedHat

23. Assim que a instalação do pacote for concluída, procure por rocket.chat no Menu do Sistema e inicie-o. Depois de carregar, insira o URL do seu servidor para conectar-se a ele, conforme mostrado na imagem a seguir.