Rocket.Chat - Open Source Team Communication Tool for Linux


Rocket.Chat er en gratis, åpen kildekode, skalerbar, svært tilpassbar og sikker plattform som lar deg kommunisere og samarbeide med teamet ditt, dele filer og chatte i sanntid. Det er på tvers av plattformer og det kjører på Linux, Windows, macOS, Android og iOS mobile operativsystemer.

Det ligner Slack og har live chat, gratis lyd- og videokonferanser, kanaler, gjestetilgang, skjermdeling og fildeling. For å sikre sikker kommunikasjon støtter den LDAP-gruppesynkronisering, tofaktorautentisering (2FA), End-to-End-kryptering, Single Sign-On og flere Oauth-leverandører.

Viktigere er at du er fullstendig åpen kildekode, og du kan få tilgang til kildekoden for å tilpasse, utvide eller legge til ny funksjonalitet for å møte teamets eller forretningskravene dine.

I denne artikkelen vil du lære hvordan du installerer og konfigurerer Rocket.Chat-serveren og -klienten på et Linux-system.

Trinn 1: Installere Snaps i Linux

1. Den enkleste måten å installere Rocket.Chat på er å bruke Snaps – støttes av de fleste om ikke alle moderne Linux-distribusjoner, og de er sikre fordi de kjører innesperret under en restriktiv sikkerhetssandkasse. I tillegg, med snaps, kan du også oppdatere automatisk når en ny versjon av en pakke er tilgjengelig.

Først, sørg for at du har snapd-pakken installert på systemet ditt, ellers installer den ved å bruke standardpakkebehandlingen som vist.

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

2. Når installasjonen er fullført, må du aktivere systemd-enheten som administrerer hoved-snap-kommunikasjonskontakten som følger. Merk at denne kommandoen vil starte socket og aktivere den til å starte ved systemoppstart. På Ubuntu bør dette gjøres automatisk etter at pakkeinstallasjonen er fullført.

sudo systemctl enable --now snapd.socket

I tillegg kan du aktivere klassisk snap-støtte ved å opprette en symbolsk kobling mellom /var/lib/snapd/snap og /snap.

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

Trinn 2: Installere Rocket.Chat i Linux

3. Nå som du har Snapd installert, kjør følgende kommando for å installere rocketchat-serveren.
$sudo snap installer rocketchat-server

4. Når snap-installasjonen er fullført, vil rocket.chat-serveren din begynne å kjøre og lytte på port 3000 som standard. Åpne en nettleser og skriv inn følgende adresse for å sette opp rocket.chat på systemet.

http://SERVER_IP:3000

5. Etter at installasjonsveiviseren er lastet opp, oppgi den administrative brukerens fulle navn, brukernavn, organisasjons-e-postadresse og passord.

6. Deretter oppgir du organisasjonsinformasjonen (organisasjonstype, navn, bransje, størrelse, land og nettsted), og klikker deretter på Fortsett.

7. Deretter oppgir du serverinformasjonen (nettstedsnavn, standard, servertype, og aktiver også 2FA eller ikke). Klikk deretter på Fortsett.

8. Registrer serveren på neste side. Det er to alternativer her, standard er å bruke de forhåndskonfigurerte gatewayene og proxyene levert av Rocket.Chat (dette er det anbefalte alternativet).

Alternativt kan du velge å beholde frittstående og opprette kontoer hos tjenesteleverandører, oppdatere forhåndskonfigurerte innstillinger og også rekompilere mobilappene med dine private sertifikater. Og klikk på Fortsett.

Oppsettet er fullført og arbeidsområdet ditt er klart. Klikk Gå til arbeidsområdet ditt.

Trinn 3: Konfigurering av omvendt proxy for Rocket.Chat

9. En omvendt proxy som NGINX eller Apache lar deg konfigurere Rocket.Chat-applikasjonen slik at den er tilgjengelig via et domene eller underdomene (f.eks. http://chat.linux-console.net) i stedet for å skrive inn serverens adresse og applikasjonsport (f.eks. http://10.42.0.247:3000 >).

I tillegg er Rocket.Chat en mellomlags applikasjonsserver som ikke håndterer SSL/TLS. En omvendt proxy lar deg også konfigurere SSL/TLS-sertifikater for å aktivere HTTPS.

Aktiver Nginx Reverse Proxy for Rocket.Chat

10. Installer først NGINX-pakken hvis den ikke er installert på systemet ditt ennå.

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

11. Når pakkeinstallasjonen er fullført, start Nginx-tjenesten, for nå, aktiver den til å starte automatisk ved systemoppstart og sjekk statusen for å sikre at den kjører.

sudo systemctl enable --now nginx
sudo systemctl status nginx

12. Deretter oppretter du en virtuell serverblokkfil for Rocket.Chat-applikasjonen under /etc/nginx/conf.d/-katalogen, for eksempel.

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

Deretter kopierer og limer du inn følgende konfigurasjon i filen (erstatt chat.linux-console.net med ditt gyldige underdomene eller domene).

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;
    }
}

Lagre filen og lukk den.

13. Sjekk deretter NGINX-konfigurasjonen for eventuelle syntaksproblemer. Hvis det er OK, start Nginx-tjenesten på nytt for å bruke de siste endringene.

sudo nginx -t
sudo systemctl restart nginx

Aktiver Apache Reverse Proxy for Rocket.Chat

14. Start med å installere Apache2-pakken hvis den ikke er installert ennå, på systemet ditt.

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

15. Deretter starter og aktiverer du apache-tjenesten og kontrollerer om den er oppe og kjører som følger.

----- 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. Deretter oppretter du en virtuell vertsfil for Rocket.Chat-applikasjonen under /etc/apache2/sites-available/ eller >/etc/httpd/conf.d/-katalogen, for eksempel.

----- 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. Kopier og lim inn følgende konfigurasjon i den, erstatt chat.linux-console.net med ditt gyldige domene.

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

Lagre filen og lukk den.

18. Aktiver de nødvendige apache2-modulene på Ubuntu og Debian og start tjenesten på nytt for å bruke de siste endringene.

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

På CentOS/RHEL og Fedora starter du ganske enkelt apache-tjenesten på nytt.

systemctl restart httpd

19. Nå er alt konfigurert riktig, åpne nettleseren og skriv inn følgende adresse. Rocket.Chat-applikasjonen skal være tilgjengelig ved å bruke domenet ditt som er konfigurert i proxy-serveren.

http://chat.linux-console.net

20. Det neste avgjørende trinnet er å legge til sikkerhets- og personvernfordelene til et HTTPS-sertifikat til chattjenesten din. For et produksjonsmiljø anbefaler vi å bruke La oss kryptere som er gratis og klarert av de fleste moderne nettlesere.

Merk at Let's Encrypt er automatisert: du kan bruke certbot, et gratis åpen kildekodeverktøy for å automatisk hente og installere eller ganske enkelt hente og manuelt installere Let's Encrypt-sertifikater i vanlige Linux-distribusjoner og webservere.

Trinn 4: Installere Rocket.Chat-klienter på skrivebordet

21. Sist, men ikke minst, kan du laste ned og installere en Rocket.Chat skrivebordsapp for Linux, Mac eller Windows fra Rocket.Chat > prosjektets nettside. Den tilbyr også mobilapper for Android og iOS.

For å installere skrivebordsapplikasjonen på Linux, laster du enten ned en deb (x64) eller rpm(x64)-pakke avhengig av Linux-distribusjonen din.

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. Installer deretter pakken ved å bruke dpkg- eller rpm-pakkebehandlingen som vist.

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

23. Når pakkeinstallasjonen er fullført, søk etter rocket.chat i Systemmenyen og start den. Etter at den er lastet inn, skriv inn serverens URL for å koble til den som vist i følgende skjermbilde.