Vyhledávání na webu

Rocket.Chat - otevřený zdrojový týmový komunikační nástroj pro Linux


Rocket.Chat je bezplatná, open source, škálovatelná, vysoce přizpůsobitelná a bezpečná platforma, která vám umožňuje komunikovat a spolupracovat s vaším týmem, sdílet soubory a chatovat v reálném čase. Je multiplatformní a běží na mobilních operačních systémech Linux, Windows, macOS, Android a iOS.

Podobá se Slacku a nabízí živý chat, bezplatné audio a video konference, kanály, přístup pro hosty, sdílení obrazovky a sdílení souborů. Pro zajištění bezpečné komunikace podporuje skupinovou synchronizaci LDAP, dvoufaktorové ověřování (2FA), end-to-End šifrování, jednotné přihlášení a několik poskytovatelů Oauth.

Důležité je, že je plně open source, můžete přistupovat k jeho zdrojovému kódu a plně přizpůsobit, rozšířit nebo přidat nové funkce, aby vyhovovaly požadavkům vašeho týmu nebo firmy.

V tomto článku se dozvíte, jak nainstalovat a nakonfigurovat server a klienta Rocket.Chat v systému Linux.

Krok 1: Instalace Snaps v Linuxu

1. Nejjednodušší způsob instalace Rocket.Chat je pomocí Snaps – jsou podporovány většinou, ne-li všemi moderními distribucemi Linuxu a jsou bezpečné protože běží omezeně pod omezujícím bezpečnostním karanténem. Pomocí snapů se navíc můžete automaticky aktualizovat, když je k dispozici nová verze balíčku.

Nejprve se ujistěte, že máte v systému nainstalovaný balíček snapd, jinak jej nainstalujte pomocí výchozího správce balíčků, jak je znázorněno.

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

2. Po dokončení instalace je třeba povolit jednotku systemd, která spravuje hlavní komunikační zásuvku snap, následovně. Všimněte si, že tento příkaz spustí soket a umožní jeho spuštění při spouštění systému. Na Ubuntu by to mělo být provedeno automaticky po dokončení instalace balíčku.

sudo systemctl enable --now snapd.socket

Kromě toho můžete povolit podporu klasického uchopení vytvořením symbolického propojení mezi /var/lib/snapd/snap a /snap.

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

Krok 2: Instalace Rocket.Chat v Linuxu

3. Nyní, když máte nainstalovaný Snapd, spusťte následující příkaz k instalaci rocketchat-server.
$sudo snap nainstalovat rocketchat-server

4. Po dokončení instalace snap se váš server rocket.chat spustí a naslouchá na portu 3000 ve výchozím nastavení. Otevřete webový prohlížeč a zadejte následující adresu pro nastavení rocket.chat v systému.

http://SERVER_IP:3000

5. Po načtení průvodce nastavením zadejte celé jméno, uživatelské jméno, organizační e-mail a heslo administrátora.

6. Dále zadejte organizační informace (typ organizace, název, odvětví, velikost, země a webové stránky) a klikněte na Pokračovat.

7. Dále zadejte informace o serveru (název webu, výchozí nastavení, typ serveru a také povolte 2FA nebo ne). Poté klikněte na Pokračovat.

8. Na další stránce zaregistrujte server. Zde jsou dvě možnosti, výchozí je použití předkonfigurovaných bran a proxy, které poskytuje Rocket.Chat (toto je doporučená možnost).

Případně si můžete zvolit ponechání samostatného účtu a vytvořit si účty u poskytovatelů služeb, aktualizovat předkonfigurovaná nastavení a také znovu zkompilovat mobilní aplikace se svými soukromými certifikáty. A klikněte na Pokračovat.

Nastavení je dokončeno a váš pracovní prostor je připraven. Klikněte na Přejít do svého pracovního prostoru.

Krok 3: Konfigurace Reverse Proxy pro Rocket.Chat

9. Reverzní proxy, jako je NGINX nebo Apache, umožňuje nakonfigurovat aplikaci Rocket.Chat tak, aby byla přístupná prostřednictvím domény nebo subdomény (např. http://chat.linux-console.net) namísto zadávání adresy serveru a portu aplikace (např. http://10.42.0.247:3000 ).

Rocket.Chat je navíc aplikační server střední vrstvy, který nezpracovává SSL/TLS. Reverzní proxy také umožňuje konfigurovat certifikáty SSL/TLS pro povolení HTTPS.

Povolit Nginx Reverse Proxy pro Rocket.Chat

10. Nejprve nainstalujte balíček NGINX, pokud ještě není nainstalován ve vašem systému.

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

11. Po dokončení instalace balíčku spusťte službu Nginx, prozatím povolte její automatické spouštění při startu systému a zkontrolujte její stav, abyste se ujistili, že běží.

sudo systemctl enable --now nginx
sudo systemctl status nginx

12. Dále vytvořte soubor bloku virtuálního serveru pro aplikaci Rocket.Chat v adresáři /etc/nginx/conf.d/, například.

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

Poté do souboru zkopírujte a vložte následující konfiguraci (nahraďte chat.linux-console.net svou platnou subdoménou nebo doménou).

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

Uložte soubor a zavřete jej.

13. Poté zkontrolujte, zda v konfiguraci NGINX nejsou nějaké problémy se syntaxí. Pokud je to v pořádku, restartujte službu Nginx, abyste použili nedávné změny.

sudo nginx -t
sudo systemctl restart nginx

Povolit Apache Reverse Proxy pro Rocket.Chat

14. Začněte instalací balíčku Apache2, pokud ještě není nainstalován, do vašeho systému.

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

15. Dále spusťte a povolte službu apache a zkontrolujte, zda je v provozu následujícím způsobem.

----- 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. Dále vytvořte virtuální hostitelský soubor pro aplikaci Rocket.Chat pod /etc/apache2/sites-available/ nebo /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. Zkopírujte a vložte do něj následující konfiguraci, nahraďte chat.linux-console.net svou platnou doménou.

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

Uložte soubor a zavřete jej.

18. Na Ubuntu a Debianu povolte požadované moduly apache2 a restartujte službu, aby se uplatnily poslední změny.

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

Na CentOS/RHEL a Fedoře jednoduše restartujte službu apache.

systemctl restart httpd

19. Nyní je vše správně nakonfigurováno, otevřete prohlížeč a zadejte následující adresu. Aplikace Rocket.Chat by měla být přístupná pomocí vaší domény nakonfigurované na serveru proxy.

http://chat.linux-console.net

20. Dalším zásadním krokem je přidat do chatovací služby výhody zabezpečení a soukromí, které přináší certifikát HTTPS. Pro produkční prostředí doporučujeme použít Let’s Encrypt, který je zdarma a důvěryhodný pro většinu moderních webových prohlížečů.

Všimněte si, že Let’s Encrypt je automatizovaný: můžete použít certbot, bezplatný open-source nástroj k automatickému získání a instalaci nebo jednoduše získat a ručně nainstalovat certifikáty Let’s Encrypt v běžných linuxových distribucích a webových serverech.

Krok 4: Instalace klientů Rocket.Chat na plochu

21. V neposlední řadě si můžete stáhnout a nainstalovat desktopovou aplikaci Rocket.Chat pro Linux, Mac nebo Windows z Rocket.Chat webové stránky projektu. Poskytuje také mobilní aplikace pro Android a iOS.

Chcete-li nainstalovat desktopovou aplikaci v systému Linux, stáhněte si balíček deb (x64) nebo rpm (x64) v závislosti na vaší distribuci Linuxu.

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. Poté nainstalujte balíček pomocí správce balíčků dpkg nebo rpm, jak je znázorněno.

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

23. Po dokončení instalace balíčku vyhledejte rocket.chat v System Menu a spusťte jej. Po načtení zadejte adresu URL svého serveru, abyste se k němu připojili, jak je znázorněno na následujícím snímku obrazovky.