Pag-install ng isang corporate chat rocket.chat sa Linux.

Anonim

Rocket.Chat ay isang libreng scalable open source corporate chat na dinisenyo na may meteor. Ang Rocket.Chat ay maaaring isaalang-alang na isang analogue ng malubay, na maaaring i-deploy sa server nito, at kumonekta dito mula sa mga kliyente sa Linux, Windows, MacOS, Android at iOS.

Pag-install ng isang corporate chat rocket.chat sa Linux. 18002_1

Rocket.chat functions.

  • Real-time na chat
  • Audio conferencing.
  • Video conferencing.
  • Mga Channel.
  • Guest Inner.
  • Screen ng broadcast
  • Paglipat ng file
  • Full-featured API.

Upang matiyak ang paggamit ng seguridad:

  • LDAP Group Synchronization.
  • 2FA dalawang-factor na pagpapatotoo.
  • Sa pamamagitan ng pag-encrypt
  • Single input SSO.
  • Maramihang Mga Supplier ng Outh Authentication.

Sinasabi namin kung paano i-install at i-configure ang server at client rocket.chat sa Linux.

Hakbang 1. Pag-install ng snap sa Linux.

Para sa pagiging simple, gagamitin namin ang Snaps Package Management System. Una sa lahat, kailangan mong i-install ang Snapd Package gamit ang manager ng package.

$ sudo apt install snapd #ubuntu at debian $ sudo dnf install snapd #fedora 22 + / centos / rhel 8 $ sudo yum install snapd # centos / rhel 7

Susunod, dapat mong paganahin ang module ng SystemD na kumokontrol sa pangunahing instantal na socket ng komunikasyon. Ang utos na ito ay magsisimula sa socket at pahihintulutan itong magsimula kapag na-load ang system.

$ Sudo systemctl enable --now snapd.socket

Hakbang 2: Pag-install ng rocket.chat sa Linux

Upang i-install ang rocketchat-server, tumakbo:

$ sudo snap install rocketchatchat-server

Kapag ang pag-install sa pamamagitan ng snap ay nakumpleto, ang rocket.chat server ay magsisimulang magtrabaho at pakikinig sa port 3000. Susunod, buksan ang web browser at ipasok ang sumusunod na address upang i-configure ang rocket.chat sa pamamagitan ng GUI.

http: // server_ip: 3000.

Pagkatapos i-download ang Setup Wizard, tukuyin ang mga sumusunod na parameter: ang buong pangalan ng administrator, username, e-mail address ng samahan at password.

Pag-install ng isang corporate chat rocket.chat sa Linux. 18002_2

Susunod, kailangan mong tukuyin ang impormasyon tungkol sa samahan: uri ng organisasyon, pangalan, industriya, laki, bansa at site.

Pag-install ng isang corporate chat rocket.chat sa Linux. 18002_3

Pagkatapos ay kailangan mong tukuyin ang impormasyon ng server - ang pangalan ng site, wika, uri ng server, at paglipat o hindi pagpapagana ng 2FA dalawang-factor na pagpapatunay.

Pag-install ng isang corporate chat rocket.chat sa Linux. 18002_4

Sa susunod na pahina kailangan mong irehistro ang server. Mayroong dalawang mga pagpipilian dito. Ang una ay ang paggamit ng mga preset na gateway at proxy na ibinigay ng rocket.chat pangalawang - i-save ang awtonomya at lumikha ng mga account mula sa mga service provider, i-update ang mga preset na parameter, at mag-recompile ng mga mobile na application sa iyong mga pribadong sertipiko.

Pag-install ng isang corporate chat rocket.chat sa Linux. 18002_5

Nakumpleto ang pag-setup, at ang iyong workspace ay handa na, ngayon kailangan mong i-click ang pumunta sa iyong workspace (pumunta sa puwang ng trabaho)

Pag-install ng isang corporate chat rocket.chat sa Linux. 18002_6

Ganiyan ang hitsura nito.

Pag-install ng isang corporate chat rocket.chat sa Linux. 18002_7
Hakbang 3: Baliktarin ang proxy setup para sa rocket.chat.

Baligtarin ang proxy server, tulad ng nginx o apache, ay nagbibigay-daan sa iyo upang i-configure ang rocket.chat application upang ma-access sa pamamagitan ng isang domain o subdomain. Rocket.Chat ay isang mid-level application server na hindi sumusuporta sa SSL / TLS. Ang reverse proxy ay magbibigay-daan sa iyo upang i-customize ang mga sertipiko ng SSL / TLS upang i-on ang HTTPS.

Baligtarin ang proxy nginx para sa rocket.chat.

Unang i-install angng.

$ sudo apt apt install nginx # ubuntu / debian $ sudo dnf install nginx #fedora 22 + / centos / rhel 8 $ sudo yum install nginx # centos / rhel 7

Susunod, patakbuhin ang serbisyo ng Nginx, i-on ang awtomatikong pagsisimula nito kapag naglo-load ng system at suriin ang katayuan nito

$ sudo systemctl enable - Novow nginx $ sudo systemctl status nginx

Pagkatapos ay lumikha ng isang block virtual server file para sa rocket.chat application, halimbawa, sa /etc/nginx/conf.d/ direktoryo.

$ sudo vim /etc/nginx/conf.d/chat.merionet.com.conf.

Susunod, ipasok ang configuration sa file na ito sa pamamagitan ng pagpapalit ng domain sa iyong at i-save.

Upstream backend {server 127.0.0.1:3000; } Server {makinig 80; Server_name chat.merionet.com; # Maaari mong dagdagan ang limitasyon kung kailangan mo. client_max_body_size 200m; Error_log /var/log/nginx/chat.merionet.com.log; Lokasyon / {proxy_pass http: // backend /; proxy_http_version 1.1; Mag-upgrade ang proxy_set_header $ http_upgrade; Proxy_set_header koneksyon "upgrade"; proxy_set_header host $ http_host; proxy_set_header x-real-ip $ remote_addr; proxy_set_header x-forward-for $ proxy_add_x_forwarded_for; proxy_set_header x-forward-proto http; Proxy_set_header x-nginx-proxy totoo; proxy_redirect off; }}

Sa wakas, suriin ang syntax at i-restart ang serbisyo ng nginx.

$ sudo nginx -t $ sudo systemctl restart nginx.

Reverse proxy Apache para sa rocket.chat.

I-install ang Apache2 Package.

$ sudo apt install apache2 # uBuntu / debian $ sudo dnf I-install ang httpd #fedora 22 + / centos / rhel 8 $ sudo yum i-install ang httpd # centos / rhel 7

Susunod, patakbuhin at paganahin ang serbisyo ng Apache at suriin kung ito ay tumatakbo at tumatakbo.

----- sa Ubuntu / Debian ----- $ sudo systemctl enable --now apache2 $ sudo systemctl status apache2 ----- sa centos / rhel 7/8 ----- $ sudo systemctl enable - ngayon httpd $ sudo systemctl status httpd.

Pagkatapos ay lumikha ng isang virtual host file para sa rocket.chat application, halimbawa, sa / etc / apache2 / site na direktoryo / o /etc/httpd/conf.d/.

----- sa Ubuntu / Debian ----- $ sudo vim /etc/apache2/sites-available/chat.merionet.com.conf ----- sa centos / rhel 7/8 ----- $ sudo vim /etc/httpd/conf.d/chot.merionet.com.conf.

Susunod, ipasok ang configuration sa file na ito sa pamamagitan ng pagpapalit ng domain sa iyong at i-save.

Serveradmin [email protected] servername chat.merionet.com Loglevel info errorlog /var/log/chat.merionet.com_error.log transferlog /var/log/chat.merionet.com_access.log Kinakailangan ang lahat ng ipinagkaloob na rewriteengine sa 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 /

Sa Ubuntu at Debian, paganahin ang kinakailangang mga module ng Apache2 at i-restart ang serbisyo.

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

Sa CentOS / RHEL at FEDORA I-restart ang Apache Service.

# Systemctl restart httpd.

Ngayon buksan ang browser at ipasok ang iyong naka-configure na address at rocket.chat application ay magagamit sa pamamagitan ng iyong domain na naka-configure sa proxy server.

http://chat.merionet.com.

Pag-install ng isang corporate chat rocket.chat sa Linux. 18002_8
Hakbang 4: Pag-install ng mga kliyente rocket.chat.

Maaaring ma-download ang mga application ng kliyente mula sa opisyal na rocket ng website. Upang mag-install ng isang desktop application sa Linux, i-download mo ang DEB packet (x64) o RPM (x64) depende sa iyong pamamahagi ng Linux.

$ wget -c https://github.com/rocketchat/rocket.chat.electron/releases/download/2.17.7/rocketchat_2.17.7_amd64.deb.

O.

$ wget -c https://github.com/rocketch/rocket.chat.electron/releases/download/2.17.7/rocketchat-2.17.7.x86_64.rpm.

Susunod na pakete gamit ang DPKG o RPM packet manager

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

Manu-manong pag-install rocket.chat.

Kung hindi mo nais na i-install ang rocket.chat sa pamamagitan ng snaps, maaari mo itong gawin nang manu-mano.

Pag-install node.js.

Una, i-update ang listahan ng mga packet ng system:

Sudo apt update.

Itakda ang node.js, NPM at lahat ng iba pang mga dependences na kinakailangan upang bumuo ng mga pakete ng NPM mula sa source code:

Sudo apt install nodejs npm build-essential curl software-properties-common graphicsMagick

Gagamitin namin ang N, NPM package, na nagbibigay-daan sa iyo upang interactively pamahalaan ang mga bersyon ng node.js.J. Command sa ibaba upang i-install n at node.js:

Sudo npm install -g inherits n sudo n 8.11.3.

Pag-install ng Mongodb.

Ang MongoDB ay isang database ng dokumento na nakatuon sa NOSQL, na ginagamit ng rocket.chat upang mag-imbak ng data.

I-import ang pampublikong key ng Mongodb at i-on ang opisyal na repository ng Mongodb:

Sudo apt-key adv --keyserver hkp: //keyserver.ubuntu.com: 80 --Recv 9da31620334bd75d9dcb49f368818c72e52529d4 sudo add-apt-repository 'deb [arch = amd64] https://repo.mongodb.org/apt/ubuntu bionic /mongodb-org/4.0 multiverse '

Pagkatapos i-on ang apt repository, i-update ang listahan ng packet at i-install ang Mongodb sa pamamagitan ng pag-type:

Sudo apt update sudo apt install Mongodb-org.

Pagkatapos ay i-on at simulan ang serbisyo ng MongoDB:

Sudo systemctl start mongd sudo systemctl enable mongod.

Paglikha ng Bagong User ng System

Ngayon kailangan mong lumikha ng isang bagong user at grupo na may pangalang Rocket, na tatakbo rocket.chat pagkakataon.

Sudo useradd -m -u -r -d / opt / rocket rocket

Magdagdag ng isang gumagamit ng www-data sa isang bagong grupo ng mga gumagamit at baguhin ang mga karapatan sa pag-access sa direktoryo ng / opt / rocket upang ma-access ng Nginx ang rocket.chat na pag-install:

Sudo usermod -a -g rocket www-data sudo chmod 750 / opt / rocket

Install rocket.chat.

Lumipat sa rocket user

Sudo su - rocket.

I-load ang pinakabagong matatag na bersyon ng rocket.chat gamit ang kulot:

curl -l https://releases.rocket.chat/lateest/download -o rocket.chat.tgz.

Matapos makumpleto ang pag-download, alisin ang archive at palitan ang pangalan ng direktoryo sa rocket.chat:

tar zxf rocket.chat.tgz mv bundle rocket.chat.

Pumunta sa rocket.chat/programs/server direktoryo at i-install ang lahat ng kinakailangang mga pakete ng NPM:

Cd rocket.chat/programs/server NPM install.

Upang subukan ang aming pag-install bago lumikha ng module ng systemd at i-configure ang reverse proxy na may nginx o apache, i-install namin ang mga kinakailangang variable ng kapaligiran at simulan ang rocket.chat server

I-export ang port = 3000 export root_url = http: //0.0.0.0: 3000 / export mongo_url = mongodb: // localhost: 27017 / rocketchat

Bumalik sa direktoryo ng rocket.chat at patakbuhin ang rocket.chat server sa pamamagitan ng pagpasok ng mga sumusunod na command:

Cd ../../ node main.js.

Kung walang mga error, dapat mong makita ang sumusunod na konklusyon:

? + --------------------------------------------- +? | Server na tumatakbo | ? + --------------------------------------------- +? | | ? | Rocket.chat Bersyon: 0.71.1 | ? | Nodejs Bersyon: 8.11.3 - x64 | ? | Platform: Linux | ? | Proseso ng Port: 3000 | ? | URL ng site: http: //0.0.0: 3000 / | ? | Replicaset OPLOG: Hindi pinagana | ? | Gumawa ng hash: e73dc78ffd | ? | Gumawa ng sangay: ulo | ? | | ? + --------------------------------------------- +.

Itigil ang rocket.chat server gamit ang Ctrl + C at bumalik sa iyong sudo user sa pamamagitan ng pag-type ng exit.

Paglikha ng isang module ng systemd.

Upang magpatakbo ng rocket.chat bilang isang serbisyo, kailangan mong lumikha ng isang file ng module ng rocketchat.service sa / etc / systemd / system / system.

sudo nano /etc/rsystemd/system/rocketch.service.

Ipasok ang sumusunod na code:

[Unit] paglalarawan = rocket.chat server pagkatapos = network.target nss-lookup.target mongod.target [serbisyo] standardoutput = syslog StandardError = syslog syslogidentifier = rocketchat user = rocket kapaligiran = mongo_url = MongoDB: // localhost: 27017 / rocketchat Root_url = https: //chat.merionet.com port = 3000 execstart = / usr / local / bin / node /Opt/rocket/rocket.chat/main.js [i-install] wanteby = multi-user.target

Sabihin sa Systemd na lumikha kami ng isang bagong file ng module, at patakbuhin ang rocket.chat service sa pamamagitan ng pagsasagawa:

Sudo systemctl daemon-reload sudo systemctl start rocketchat.

Suriin ang katayuan ng serbisyo:

Sudo systemctl status rocketchat.

Ang konklusyon ay dapat na tulad nito:

* Rocketchat.service - rocket.chat server load: load (/etc/systemd/system/rocketch.service; hindi pinagana; vendor preset: pinagana) aktibo: aktibo (tumatakbo) Dahil sa wed 2018-11-07 14:36:24 pst ; 5s ang nakalipas Main PID: 12693 (node) Mga Gawain: 10 (limitasyon: 2319) CGROUP: / System.Slice / rocketchat.service` -12693 / usr / local / bin / node / noopt/rocket/rocket.chat/main.js

Sa wakas, i-on ang awtomatikong pagsisimula ng rocket.chat serbisyo sa panahon ng pag-download:

Sudo systemctl enable rocketchat.

Tapos na, na-install namin ang rocket.chat nang manu-mano, maaari mo na ngayong pumunta sa pag-configure ng reverse proxy at initialization ng system na inilarawan mula sa Hakbang 3.

Resulta

Sa manwal na ito, natutunan mo kung paano i-install ang rocket.chat sa Linux at kung paano i-configure angginx at Apache bilang isang reverse proxy.

Upang matuto nang higit pa tungkol sa rocket.chat bisitahin ang pahina ng dokumentasyon.

Magbasa pa