Rocket.Chat - ilmainen, avoin lähdekoodi, Enterprise Team Chat for Linux


Rocket.Chat on ilmainen, avoimen lähdekoodin, skaalautuva, erittäin muokattavissa oleva ja turvallinen foorumi, jonka avulla voit kommunikoida ja tehdä yhteistyötä tiimisi kanssa, jakaa tiedostoja ja keskustella reaaliajassa. Se on alustojen välinen ja toimii Linux-, Windows-, macOS-, Android- ja iOS-mobiilikäyttöjärjestelmissä.

Se on samanlainen kuin Slack ja sisältää live-chatin, ilmaiset ääni- ja videoneuvottelut, kanavat, vierailijoiden pääsyn, näytön ja tiedostojen jakamisen. Turvallisen tiedonsiirron varmistamiseksi se tukee LDAP-ryhmäsynkronointia, kaksivaiheista todennusta (2FA), päästä päähän -salausta, kertakirjautumista ja useita Oauth-palveluntarjoajia.

Tärkeää on, että koska olet täysin avoimen lähdekoodin, voit käyttää sen lähdekoodia mukauttamaan, laajentamaan tai lisäämään uusia toimintoja tiimin tai liiketoiminnan vaatimusten mukaisesti.

Tässä artikkelissa opit kuinka Rocket.Chat-palvelin ja asiakas asennetaan ja määritetään Linux-järjestelmään.

Vaihe 1: Napsautusten asentaminen Linuxiin

1. Helpoin tapa asentaa Rocket.Chat on käyttää Snapsia - useimmat ellei kaikki modernit Linux-jakelut tukevat niitä ja ovat turvallisia, koska ne toimivat rajoitetun tietoturvahiekkalaatikon alla. Lisäksi napsautuksilla voit myös päivittää automaattisesti, kun paketin uusi versio on saatavilla.

Varmista ensin, että snapd-paketti on asennettu järjestelmään, muuten asenna se käyttämällä oletuspakettien hallintaa kuvan osoittamalla tavalla.

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

2. Kun asennus on valmis, sinun on otettava käyttöön pääkäyttäjän tiedonsiirtoliitäntää hallinnoiva systemd-yksikkö seuraavasti. Huomaa, että tämä komento käynnistää liitännän ja sallii sen käynnistymisen järjestelmän käynnistyksen yhteydessä. Ubuntussa tämä tulisi tehdä automaattisesti, kun paketin asennus on valmis.

$ sudo systemctl enable --now snapd.socket

Lisäksi voit ottaa käyttöön klassisen napsautustuen luomalla symbolisen linkin/var/lib/snapd/snap ja/snap välille.

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

Vaihe 2: Rocket.Chatin asentaminen Linuxiin

3. Asenna Snapd nyt suorittamalla seuraava komento asentaaksesi rocketchat-palvelimen.
$sudo snap install rocketchat-server

4. Kun pikakäynnistys on valmis, Rocket.chat-palvelimesi alkaa oletuksena käyttää ja kuunnella portissa 3000. Avaa verkkoselain ja kirjoita seuraava osoite asettaaksesi rocket.chat järjestelmään.

http://SERVER_IP:3000

5. Kun ohjattu asennustoiminto on ladattu, anna järjestelmänvalvojan käyttäjän koko nimi, käyttäjänimi, organisaation sähköpostiosoite ja salasana.

6. Anna seuraavaksi organisaatiotiedot (organisaation tyyppi, nimi, toimiala, koko, maa ja verkkosivusto) ja napsauta sitten Jatka.

7. Anna seuraavaksi palvelintiedot (sivuston nimi, oletus, palvelintyyppi ja ota 2FA käyttöön tai ei). Napsauta sitten Jatka.

8. Rekisteröi palvelin seuraavalla sivulla. Tässä on kaksi vaihtoehtoa, oletuksena on käyttää Rocket.Chatin tarjoamia valmiiksi määritettyjä yhdyskäytäviä ja välityspalvelimia (tämä on suositeltava vaihtoehto).

Vaihtoehtoisesti voit halutessasi pitää itsenäisen ja luoda tilejä palveluntarjoajien kanssa, päivittää ennalta määritetyt asetukset ja myös kääntää mobiilisovellukset uudelleen yksityisillä varmenteillasi. Napsauta Jatka.

Asennus on valmis ja työtila on valmis. Napsauta Siirry työtilaan.

Vaihe 3: Käänteisen välityspalvelimen määrittäminen Rocket.Chatille

9. Käänteisen välityspalvelimen, kuten NGINX tai Apache, avulla voit määrittää Rocket.Chat-sovelluksen olevan käytettävissä toimialueella tai aliverkkotunnuksessa (esim. Http://chat.linux-console.net) sen sijaan, että kirjoitat palvelimen osoitteen ja sovellusportin (esim. http://10.42.0.247:3000).

Lisäksi Rocket.Chat on keskitason sovelluspalvelin, joka ei käsittele SSL/TLS: ää. Käänteisen välityspalvelimen avulla voit myös määrittää SSL/TLS-varmenteet ottamaan HTTPS käyttöön.

10. Asenna ensin NGINX-paketti, jos sitä ei ole vielä asennettu järjestelmään.

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

11. Kun paketin asennus on valmis, käynnistä Nginx-palvelu toistaiseksi, anna sen aloittaa automaattisesti järjestelmän käynnistyksen yhteydessä ja tarkista sen tila varmistaaksesi, että se on käynnissä.

$ sudo systemctl enable --now nginx
$ sudo systemctl status nginx

12. Luo seuraavaksi virtuaalipalvelimen estotiedosto Rocket.Chat-sovellukselle esimerkiksi hakemistoon /etc/nginx/conf.d/.

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

Kopioi ja liitä sitten seuraava kokoonpano tiedostoon (korvaa chat.linux-console.net kelvollisella aliverkkotunnuksella tai verkkotunnuksella).

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

Tallenna tiedosto ja sulje se.

13. Tarkista sitten NGINX-kokoonpanossa mahdolliset syntaksiongelmat. Jos se on OK, käynnistä Nginx-palvelu uudelleen, jotta viimeisimmät muutokset otetaan käyttöön.

$ sudo nginx -t
$ sudo systemctl restart nginx

14. Aloita asentamalla Apache2-paketti järjestelmään, jos sitä ei ole vielä asennettu.

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

15. Käynnistä seuraavaksi apache-palvelu ja ota se käyttöön ja tarkista se seuraavasti.

----- 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. Luo seuraavaksi virtuaalinen isäntätiedosto Rocket.Chat-sovellukselle esimerkiksi hakemistoon/etc/apache2/sites-available/tai /etc/httpd/conf.d/.

----- 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. Kopioi ja liitä seuraava kokoonpano siihen, korvaa chat.linux-console.net kelvollisella toimialueellasi.

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

Tallenna tiedosto ja sulje se.

18. Ota Ubuntussa ja Debianissa käyttöön tarvittavat apache2-moduulit ja käynnistä palvelu uudelleen viimeisimpien muutosten toteuttamiseksi.

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

Käynnistä apache-palvelu vain CentOS/RHEL: ssä ja Fedorassa.

# systemctl restart httpd

19. Nyt kaikki on määritetty oikein, avaa broswer ja kirjoita folloiwng-osoite. Rocket.Chat-sovelluksen tulisi olla käytettävissä välityspalvelimessa määritetyn toimialueesi avulla.

http://chat.linux-console.net

20. Seuraava tärkeä vaihe on lisätä HTTPS-varmenteen turvallisuus- ja tietosuojaedut chat-palveluun. Tuotantoympäristössä suosittelemme Let’s Encrypt -toimintoa, joka on ilmainen ja useimpien nykyaikaisten selainten luotettavia.

Huomaa, että Let’s Encrypt on automatisoitu: voit käyttää certbotia, ilmaista avoimen lähdekoodin työkalua, jonka avulla saat ja asennamme Let’s Encrypt -sertifikaatit automaattisesti Linux-jakeluihin ja verkkopalvelimiin.

Vaihe 4: Rocket.Chat-asiakkaiden asentaminen työpöydälle

21. Viimeisenä mutta ei vähäisimpänä, voit ladata ja asentaa Rocket.Chat-työpöytäsovelluksen Linuxille, Macille tai Windowsille Rocket.Chat-projektin verkkosivustolta. Se tarjoaa myös mobiilisovelluksia Androidille ja iOS: lle.

Jos haluat asentaa työpöytäsovelluksen Linuxiin, lataat joko paketin deb (x64) tai rpm (x64) Linux-jakelustasi riippuen.

$ 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. Asenna sitten paketti rpm-paketinhallinnalla kuvan osoittamalla tavalla.

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

23. Kun paketin asennus on valmis, etsi järjestelmävalikosta tiedosto rocket.chat ja käynnistä se. Kun se on latautunut, kirjoita palvelimesi URL-osoite yhteyden muodostamiseksi seuraavan kuvakaappauksen mukaisesti.