Rocket.Chat - Bila Malipo, Chanzo Huria, Gumzo la Timu ya Biashara kwa Linux


Rocket.Chat ni jukwaa lisilolipishwa la chanzo huria, hatarishi, linaloweza kubinafsishwa sana na salama ambalo hukuruhusu kuwasiliana na kushirikiana na timu yako, kushiriki faili na kupiga gumzo katika wakati halisi. Ni jukwaa-msingi na inaendeshwa kwenye Linux, Windows, macOS, Android, na mifumo ya uendeshaji ya rununu ya iOS.

Ni sawa na Slack na huangazia gumzo la moja kwa moja, mikutano ya bure ya sauti na video, chaneli, ufikiaji wa wageni, kushiriki skrini, na kushiriki faili. Ili kuhakikisha mawasiliano salama, inatumia ulandanishi wa kikundi cha LDAP, uthibitishaji wa vipengele viwili (2FA), usimbaji wa Mwisho hadi Mwisho, Kuingia Mara Moja, na watoa huduma kadhaa wa Oauth.

Muhimu zaidi, kwa kuwa chanzo huria kabisa, unaweza kufikia msimbo wake wa chanzo ili kubinafsisha kikamilifu, kupanua, au kuongeza utendakazi mpya ili kukidhi mahitaji ya timu yako au biashara.

Katika makala hii, utajifunza jinsi ya kufunga na kusanidi seva ya Rocket.Chat na mteja kwenye mfumo wa Linux.

Hatua ya 1: Kusakinisha Snaps kwenye Linux

1. Njia rahisi zaidi ya kusakinisha Rocket.Chat ni kwa kutumia Snaps - zinaauniwa na wengi ikiwa si usambazaji wote wa kisasa wa Linux na ni salama kwa sababu zinaendeshwa chini ya kisanduku cha mchanga cha usalama chenye vikwazo. Zaidi ya hayo, kwa vifupisho, unaweza pia kusasisha kiotomatiki toleo jipya la kifurushi linapatikana.

Kwanza, hakikisha kuwa umesakinisha kifurushi cha snapd kwenye mfumo wako, vinginevyo kisakinishe kwa kutumia kidhibiti chaguo-msingi cha kifurushi kama inavyoonyeshwa.

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

2. Wakati usakinishaji umekamilika, unahitaji kuwezesha kitengo cha mfumo ambacho kinasimamia tundu kuu la mawasiliano ya snap kama ifuatavyo. Kumbuka kwamba amri hii itaanza tundu na kuiwezesha kuanza kwenye mfumo wa boot. Kwenye Ubuntu, hii inapaswa kufanywa kiatomati baada ya usakinishaji wa kifurushi kukamilika.

$ sudo systemctl enable --now snapd.socket

Kwa kuongeza, unaweza kuwezesha usaidizi wa snap wa kawaida kwa kuunda kiunga cha mfano kati ya /var/lib/snapd/snap na /snap.

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

Hatua ya 2: Kusakinisha Rocket.Chat katika Linux

3. Kwa kuwa sasa umesakinisha Snapd, endesha amri ifuatayo ili kusakinisha seva ya roketi.
$sudo snap install rocketchat-server

4. Wakati usakinishaji wa haraka ukamilika, seva yako ya rocket.chat itaanza kufanya kazi na kusikiliza kwenye port 3000 kwa chaguomsingi. Fungua kivinjari cha wavuti na uweke anwani ifuatayo ili kusanidi rocket.chat kwenye mfumo.

http://SERVER_IP:3000

5. Baada ya upakiaji wa mchawi wa usanidi, toa jina kamili la mtumiaji wa msimamizi, jina la mtumiaji, barua pepe ya shirika na nenosiri.

6. Kisha, toa maelezo ya shirika (aina ya shirika, jina, sekta, ukubwa, nchi, na tovuti), kisha ubofye Endelea.

7. Kisha, toa maelezo ya seva (jina la tovuti, chaguo-msingi, aina ya seva, na pia uwezesha 2FA au la). Kisha bofya Endelea.

8. Katika ukurasa unaofuata, sajili seva. Kuna chaguo mbili hapa, chaguo-msingi ni kutumia lango na proksi zilizosanidiwa zilizotolewa na Rocket.Chat (hili ndilo chaguo linalopendekezwa).

Vinginevyo, unaweza kuchagua kujiweka peke yako na kuunda akaunti na watoa huduma, kusasisha mipangilio iliyosanidiwa awali, na pia kukusanya tena programu za simu na vyeti vyako vya faragha. Na bofya Endelea.

Usanidi umekamilika na nafasi yako ya kazi iko tayari. Bofya Nenda kwenye nafasi yako ya kazi.

Hatua ya 3: Kusanidi Wakala wa Nyuma kwa Rocket.Chat

9. Seva mbadala ya nyuma kama vile NGINX au Apache inakuruhusu kusanidi programu ya Rocket.Chat kufikiwa kupitia kikoa au kikoa kidogo (k.m. http://chat.linux-console.net) badala ya kuandika anwani ya seva na mlango wa programu (k.m. http://10.42.0.247:3000).

Zaidi ya hayo, Rocket.Chat ni seva ya programu ya kiwango cha kati ambayo haishughulikii SSL/TLS. Seva mbadala pia hukuruhusu kusanidi vyeti vya SSL/TLS ili kuwezesha HTTPS.

10. Kwanza, sakinisha kifurushi cha NGINX ikiwa bado hakijasakinishwa kwenye mfumo wako.

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

11. Mara tu usakinishaji wa kifurushi ukamilika, anza huduma ya Nginx, kwa sasa, uwezesha kuanza kiatomati kwenye boot ya mfumo na uangalie hali yake ili kuhakikisha kuwa inaendesha.

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

12. Kisha, unda faili ya kuzuia seva ya mtandao kwa ajili ya programu ya Rocket.Chat chini ya saraka ya /etc/nginx/conf.d/, kwa mfano.

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

Kisha nakili na ubandike usanidi ufuatao kwenye faili (badilisha chat.linux-console.net na kikoa chako halali au kikoa).

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

Hifadhi faili na uifunge.

13. Kisha angalia usanidi wa NGINX kwa suala lolote la sintaksia. Ikiwa ni sawa, anzisha upya huduma ya Nginx ili kutumia mabadiliko ya hivi majuzi.

$ sudo nginx -t
$ sudo systemctl restart nginx

14. Anza kwa kusakinisha kifurushi cha Apache2 ikiwa bado hakijasakinishwa, kwenye mfumo wako.

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

15. Ifuatayo, anza na uwezesha huduma ya apache na uangalie ikiwa iko na inafanya kazi kama ifuatavyo.

----- 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. Ifuatayo, unda faili ya seva pangishi ya programu ya Rocket.Chat chini ya saraka ya /etc/apache2/sites-available/ au /etc/httpd/conf.d/, kwa mfano.

----- 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. Nakili na ubandike usanidi ufuatao ndani yake, badilisha chat.linux-console.net na kikoa chako halali.

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

Hifadhi faili na uifunge.

18. Kwenye Ubuntu na Debian wezesha moduli za apache2 zinazohitajika na uanze upya huduma ili kutumia mabadiliko ya hivi majuzi.

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

Kwenye CentOS/RHEL na Fedora, anzisha tena huduma ya apache.

# systemctl restart httpd

19. Sasa kila kitu kimeundwa kwa usahihi, fungua kivinjari chako na uandike anwani ifuatayo. Programu ya Rocket.Chat inapaswa kufikiwa kwa kutumia kikoa chako kilichosanidiwa katika seva mbadala.

http://chat.linux-console.net

20. Hatua inayofuata muhimu ni kuongeza manufaa ya usalama na faragha ya cheti cha HTTPS kwenye huduma yako ya gumzo. Kwa mazingira ya uzalishaji, tunapendekeza kutumia Let's Encrypt ambayo ni ya bila malipo na inayoaminika na vivinjari vingi vya kisasa vya wavuti.

Kumbuka kuwa Let's Encrypt ni otomatiki: unaweza kutumia certbot, zana huria huria kupata na kusakinisha kiotomatiki au kupata na kusakinisha wewe mwenyewe vyeti vya Let's Encrypt katika usambazaji wa Linux na seva za wavuti.

Hatua ya 4: Kusakinisha Wateja wa Rocket.Chat kwenye Eneo-kazi

21. Mwisho kabisa, unaweza kupakua na kusakinisha programu ya eneo-kazi ya Rocket.Chat ya Linux, Mac, au Windows kutoka kwa tovuti ya mradi wa Rocket.Chat. Pia hutoa programu za simu za Android na iOS.

Ili kusakinisha programu ya kompyuta ya mezani kwenye Linux, unaweza kupakua kifurushi cha deb (x64) au rpm(x64) kulingana na usambazaji wako wa 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. Kisha sakinisha kifurushi kwa kutumia kidhibiti cha kifurushi cha rpm kama inavyoonyeshwa.

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

23. Usakinishaji wa kifurushi ukishakamilika, tafuta rocket.chat kwenye Menyu ya Mfumo na uzindue. Baada ya kupakia, weka URL ya seva yako ili kuunganisha kwayo kama inavyoonyeshwa kwenye picha ya skrini ifuatayo.