Rocket.Chat – Free, Open Source, Enterprise Team Chat maka Linux


Rocket.Chat bụ ikpo okwu efu, mepere emepe, nke nwere ike ịhazi ya nke ukwuu, yana nchekwa nke na-enye gị ohere ịkparịta ụka na imekọ ihe na ndị otu gị, kesaa faịlụ na ịkparịta ụka ozugbo. Ọ bụ cross-platform na ọ na-agba ọsọ na Linux, Windows, MacOS, Android, na iOS mobile sistem.

Ọ dị ka Slack ma nwee nkata ndụ, mkparịta ụka ọdịyo na vidiyo efu, ọwa, ohere ndị ọbịa, ikesa ihuenyo, na nkesa faịlụ. Iji hụ na nzikọrịta ozi echekwara, ọ na-akwado mmekọrịta otu LDAP, nyocha ihe abụọ (2FA), nzuzo ngwụcha ngwụcha, otu nbanye, yana ọtụtụ ndị na-eweta Oauth.

Nke kachasị mkpa, ịbụ ebe mepere emepe nke ọma, ị nwere ike ịnweta koodu isi mmalite ya iji hazie nke ọma, gbasaa, ma ọ bụ tinye ọrụ ọhụrụ iji mezuo ihe ndị otu gị ma ọ bụ azụmaahịa gị chọrọ.

N'ime edemede a, ị ga-amụta ka esi etinye na hazie ihe nkesa Rocket.Chat na onye ahịa na sistemụ Linux.

Kwụpụ 1: Wụnye Snaps na Linux

1. Ụzọ kachasị mfe iji wụnye Rocket.Chat bụ site na iji Snaps - ọtụtụ na-akwado ma ọ bụrụ na ọ bụghị ihe niile nkesa Linux nke oge a na ha nwere nchebe n'ihi na ha na-agba ọsọ n'okpuru mkpuchi nchekwa nchekwa. Na mgbakwunye, site na iji snaps, ị nwekwara ike imelite onwe ya mgbe ụdị ngwungwu ọhụrụ dị.

Nke mbụ, hụ na ị nwere ngwungwu snapd arụnyere na sistemụ gị, ma ọ bụghị ya, wụnye ya site na iji njikwa ngwugwu ndabere gị dịka egosiri.

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

2. Mgbe echichi zuru ezu, ịkwesịrị ime ka sistemu sistemu nke na-ahụ maka oghere nkwukọrịta snap isi dị ka ndị a. Rịba ama na iwu a ga-amalite oghere ma mee ka ọ malite na boot boot. Na Ubuntu, ekwesịrị ime nke a na-akpaghị aka ka emechara nrụnye ngwugwu.

$ sudo systemctl enable --now snapd.socket

Na mgbakwunye, ị nwere ike ịme nkwado snap kpochapụwo site na ịmepụta njikọ atụ n'etiti /var/lib/snapd/snap na/snap.

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

Kwụpụ 2: Ịwụnye Rocket.Chat na Linux

3. Ugbu a ị tinyela Snapd, mee iwu a ka ịwụnye ihe nkesa rocketchat.
$sudo snap tinye ihe nkesa rocketchat

4. Mgbe nrụnye snap zuru ezu, ihe nkesa rocket.chat gị ga-amalite na-agba ọsọ ma na-ege ntị na ọdụ ụgbọ mmiri 3000 na ndabara. Mepee ihe nchọgharị weebụ wee tinye adreesị a ka ịtọlite rocket.chat na sistemụ.

http://SERVER_IP:3000

5. Mgbe ọkachamara ntọlite na-ebu ibu, nye aha onye ọrụ nchịkwa, aha njirimara, email nhazi, na paswọọdụ.

6. Ọzọ, nye ozi nhazi (ụdị nhazi, aha, ụlọ ọrụ, nha, obodo, na weebụsaịtị), wee pịa Gaa n'ihu.

7. Ọzọ, nye ozi nkesa (aha saịtị, ndabara, ụdị ihe nkesa, ma mee ka 2FA ma ọ bụ ghara). Wee pịa Gaa n'ihu.

8. Na ibe na-esote, debanye aha ihe nkesa. Enwere nhọrọ abụọ ebe a, ndabara bụ iji ụzọ ụzọ ahazi na proxies nke Rocket.Chat nyere (nke a bụ nhọrọ akwadoro).

N'aka nke ọzọ, ị nwere ike họrọ ịnọrọ naanị gị wee mepụta akaụntụ n'aka ndị na-eweta ọrụ, melite ntọala ahaziri ahazi, ma jiri asambodo onwe gị megharịa ngwa mkpanaaka. Wee pịa Gaa n'ihu.

Nhazi ahụ ezuola ma ebe ọrụ gị adịla njikere. Pịa Gaa na ebe ọrụ gị.

Kwụpụ 3: Na-ahazi Reverse Proxy maka Rocket.Chat

9. Onye nnọchi anya azụ dị ka NGINX ma ọ bụ Apache na-enye gị ohere ịhazi ngwa Rocket.Chat ka enwere ike nweta ya site na ngalaba ma ọ bụ subdomain (dịka http://chat.linux-console.net) kama ịpị adreesị nke ihe nkesa na ọdụ ụgbọ mmiri (dịka ọmụmaatụ. http://10.42.0.247:3000).

Na mgbakwunye, Rocket.Chat bụ ihe nkesa ngwa etiti na-anaghị ejikwa SSL/TLS. Onye nnọchi anya azụ na-enyekwa gị ohere ịhazi asambodo SSL/TLS iji mee ka HTTPS nwee ike.

10. Nke mbụ, wụnye ngwugwu NGINX ma ọ bụrụ na etinyebeghị ya na sistemụ gị.

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

11. Ozugbo nrụnye ngwugwu zuru ezu, malite ọrụ Nginx, maka ugbu a, mee ka ọ malite na-akpaghị aka na boot system ma lelee ọnọdụ ya iji hụ na ọ na-agba ọsọ.

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

12. Ọzọ, mepụta mebere faịlụ ngọngọ nkesa maka ngwa Rocket.Chat n'okpuru /etc/nginx/conf.d/ directory, ọmụmaatụ.

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

Detuo na mado nhazi ndị a na faịlụ ahụ (dochie chat.linux-console.net na ngalaba subdomain ma ọ bụ ngalaba gị dị irè).

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

Chekwaa faịlụ ma mechie ya.

13. Mgbe ahụ lelee nhazi NGINX maka okwu syntax ọ bụla. Ọ bụrụ na ọ dị mma, malitegharịa ọrụ Nginx ka itinye mgbanwe ndị na-adịbeghị anya.

$ sudo nginx -t
$ sudo systemctl restart nginx

14. Malite site na ịwụnye ngwugwu Apache2 ma ọ bụrụ na etinyebeghị ya, na sistemụ gị.

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

15. Ọzọ, malite ma mee ka ọrụ apache wee lelee ma ọ dị elu ma na-agba ọsọ dị ka ndị a.

----- 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. Ọzọ, mepụta mebere faịlụ nnabata maka ngwa Rocket.Chat n'okpuru /etc/apache2/sites-available/ ma ọ bụ /etc/httpd/conf.d/ directory, ọmụmaatụ.

----- 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. Detuo na mado nhazi ndị a na ya, dochie chat.linux-console.net na ngalaba gị dị irè.

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

Chekwaa faịlụ ma mechie ya.

18. Na Ubuntu na Debian mee ka modul apache2 achọrọ ma malitegharịa ọrụ ahụ iji tinye mgbanwe ndị na-adịbeghị anya.

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

Na CentOS/RHEL na Fedora, malitegharịa ọrụ apache.

# systemctl restart httpd

19. Ugbu a ihe niile na-ahazi nke ọma, mepee broswer gị ma pịnye adreesị folloiwng. Ngwa Rocket.Chat kwesịrị ịnweta site na iji ngalaba ahaziri na sava proxy.

http://chat.linux-console.net

20. Nzọụkwụ ọzọ dị mkpa bụ ịgbakwunye nchekwa na uru nzuzo nke akwụkwọ HTTPS na ọrụ nkata gị. Maka gburugburu ebe nrụpụta, anyị na-akwado iji Let's Encrypt nke bụ n'efu na ntụkwasị obi site na ọtụtụ ihe nchọgharị weebụ ọgbara ọhụrụ.

Rịba ama na Ka anyị Encrypt bụ akpaaka: ị nwere ike iji certbot, ngwá ọrụ mepere emepe n'efu iji nweta na wụnye ngwa ngwa ma ọ bụ nweta ma jiri aka tinye akwụkwọ ikike ka anyị Encrypt na nkesa Linux na sava weebụ.

Nzọụkwụ 4: Ịwụnye Rocket.Chat Clients na Desktọpụ

21. N'ikpeazụ ma ọ dịghị ihe ọzọ, ị nwere ike ibudata na wụnye a Rocket.Chat desktọọpụ ngwa maka Linux, Mac, ma ọ bụ Windows si Rocket.Chat oru ngo website. Ọ na-enyekwa ngwa mkpanaaka maka gam akporo na iOS.

Iji wụnye ngwa desktọpụ na Linux, ị ga-ebudata ngwugwu deb (x64) ma ọ bụ rpm (x64) dabere na nkesa Linux gị.

$ 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. Wee tinye ngwugwu ahụ site na iji njikwa ngwugwu rpm dị ka egosiri.

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

23. Ozugbo nrụnye ngwugwu zuru ezu, chọọ rocket.chat na Menu System wee malite ya. Mgbe o kwusịrị, tinye URL nke ihe nkesa gị iji jikọọ na ya dị ka egosiri na nseta ihuenyo na-esonụ.