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.