การติดตั้ง Chatting Chattorate.Chat บน Linux

Anonim

Rocket.Chat เป็นแชท Corporate Open Source ที่ปรับขนาดได้ฟรีที่ออกแบบด้วย Meteor Rocket.Chat ถือเป็นอะนาล็อกของ Slack ซึ่งสามารถปรับใช้บนเซิร์ฟเวอร์ของมันและเชื่อมต่อกับลูกค้าบน Linux, Windows, MacOS, Android และ iOS

การติดตั้ง Chatting Chattorate.Chat บน Linux 18002_1

ฟังก์ชั่น Rocket.Chat

  • แชทแบบเรียลไทม์
  • การประชุมทางเสียง
  • การประชุมทางวิดีโอ
  • ช่องทาง
  • ผู้เข้าพักภายใน
  • หน้าจอออกอากาศ
  • การถ่ายโอนไฟล์
  • API เต็มรูปแบบ

เพื่อให้มั่นใจถึงความปลอดภัยที่ใช้:

  • การซิงโครไนซ์กลุ่ม LDAP
  • การตรวจสอบ 2FA สองปัจจัย
  • ผ่านการเข้ารหัส
  • อินพุตเดียว SSO
  • ซัพพลายเออร์การพิสูจน์ตัวตนหลายแห่ง

เราบอกวิธีติดตั้งและกำหนดค่าเซิร์ฟเวอร์และไคลเอนต์ Rocket.Chat ใน Linux

ขั้นตอนที่ 1. การติดตั้ง Snap in Linux

เพื่อความเรียบง่ายเราจะใช้ระบบการจัดการแพคเกจ Snaps ก่อนอื่นคุณต้องติดตั้งแพ็คเกจ SNAP โดยใช้ Manager Package

$ sudo apt ติดตั้ง snapd #ubuntu และ debian $ sudo dnf ติดตั้ง snapd #fedora 22 + / centos / rhel 8 $ sudo yum ติดตั้ง snapd # centos / rhel 7

ถัดไปคุณต้องเปิดใช้งานโมดูล SystemD ที่ควบคุมซ็อกเก็ตการสื่อสารอินสแตนซ์หลัก คำสั่งนี้จะเริ่มต้นซ็อกเก็ตและจะช่วยให้มันเริ่มต้นเมื่อโหลดระบบ

เปิดใช้งาน $ sudo systemctl --Now snapd.Socket

ขั้นตอนที่ 2: การติดตั้ง Rocket.Chat ใน Linux

ในการติดตั้ง Rocketchat-Server, RUN:

$ sudo snap ติดตั้ง rocketchatchat-server

เมื่อการติดตั้งผ่าน Snap เสร็จสมบูรณ์ Server Rocket.Chat จะเริ่มทำงานและฟังพอร์ต 3000 ถัดไปเปิดเว็บเบราว์เซอร์และป้อนที่อยู่ต่อไปนี้เพื่อกำหนดค่า Rocket.Chat ผ่าน GUI

http: // server_ip: 3000

หลังจากดาวน์โหลดตัวช่วยสร้างการตั้งค่าให้ระบุพารามิเตอร์ต่อไปนี้: ชื่อผู้ดูแลระบบเต็มชื่อผู้ใช้ที่อยู่อีเมลขององค์กรและรหัสผ่าน

การติดตั้ง Chatting Chattorate.Chat บน Linux 18002_2

ต่อไปคุณต้องระบุข้อมูลเกี่ยวกับองค์กร: ประเภทขององค์กรชื่ออุตสาหกรรมขนาดประเทศและเว็บไซต์

การติดตั้ง Chatting Chattorate.Chat บน Linux 18002_3

จากนั้นคุณต้องระบุข้อมูลเซิร์ฟเวอร์ - ชื่อไซต์ภาษาประเภทเซิร์ฟเวอร์และการสลับหรือปิดใช้งานการรับรองความถูกต้อง 2FA สองปัจจัย

การติดตั้ง Chatting Chattorate.Chat บน Linux 18002_4

ในหน้าถัดไปคุณต้องลงทะเบียนเซิร์ฟเวอร์ มีสองตัวเลือกที่นี่ ที่แรกคือการใช้เกตเวย์และพร็อกซีที่กำหนดไว้ล่วงหน้าโดย Rocket.Chat Second - บันทึกการปกครองตนเองและสร้างบัญชีจากผู้ให้บริการอัพเดตพารามิเตอร์ที่ตั้งไว้ล่วงหน้าและคอมไพล์แอปพลิเคชันมือถือพร้อมกับใบรับรองส่วนตัวของคุณ

การติดตั้ง Chatting Chattorate.Chat บน Linux 18002_5

การตั้งค่าเสร็จสมบูรณ์และพื้นที่ทำงานของคุณพร้อมแล้วตอนนี้คุณต้องคลิกไปที่เวิร์กสเปซของคุณ (ไปที่พื้นที่ทำงาน)

การติดตั้ง Chatting Chattorate.Chat บน Linux 18002_6

นั่นเป็นลักษณะที่ดูเหมือน

การติดตั้ง Chatting Chattorate.Chat บน Linux 18002_7
ขั้นตอนที่ 3: Reverse Proxy Setup สำหรับ Rocket.Chat

Reverse Proxy Server เช่น Nginx หรือ Apache ช่วยให้คุณสามารถกำหนดค่าแอปพลิเคชัน Rocket.Chat เพื่อเข้าถึงผ่านโดเมนหรือโดเมนย่อย Rocket.Chat เป็นเซิร์ฟเวอร์แอปพลิเคชันระดับกลางที่ไม่รองรับ SSL / TLS พร็อกซีย้อนกลับจะช่วยให้คุณปรับแต่งใบรับรอง SSL / TLS เพื่อเปิด HTTPS

Reverse Proxy Nginx สำหรับ Rocket.Chat

ติดตั้ง Nginx ครั้งแรก

$ sudo apt apt ติดตั้ง Nginx # Ubuntu / Debian $ sudo dnf ติดตั้ง nginx #fedora 22 + / centos / rhel 8 $ sudo yum ติดตั้ง nginx # centos / rhel 7

ถัดไปให้เรียกใช้บริการ Nginx เปิดอัตโนมัติเมื่อโหลดระบบและตรวจสอบสถานะ

$ sudo systemctl เปิดใช้งาน - Novow Nginx $ sisto systemctl สถานะ nginx

จากนั้นสร้างไฟล์เซิร์ฟเวอร์เซิร์ฟเวอร์เสมือนสำหรับแอปพลิเคชัน Rocket.Chat เช่นในไดเร็กทอรี /etc/nganx/conf.d/

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

ถัดไปแทรกการกำหนดค่าไปยังไฟล์นี้โดยแทนที่โดเมนเป็นของคุณและบันทึก

แบ็กเอนด์ต้นน้ำ {เซิร์ฟเวอร์ 127.0.0.1:3000; } เซิร์ฟเวอร์ {ฟัง 80; server_name chat.merionet.com; # คุณสามารถเพิ่มขีด จำกัด หากคุณต้องการ client_max_body_size 200m; error_log /var/log/nginx/chat.merionet.com.log; ตำแหน่ง / {proxy_pass http: // แบ็กเอนด์ /; Proxy_Http_Version 1.1; Proxy_set_Header อัพเกรด $ http_upgrade; การเชื่อมต่อ Proxy_set_header "อัปเกรด"; Proxy_set_Header โฮสต์ $ http_host; Proxy_set_header X-Real-IP $ REMOTEN_ADDR; Proxy_set_header X-Forwarded-For $ Proxy_add_x_forwarded_for; proxy_set_header x-fract-proto http; Proxy_set_header X-Nginx-Proxy True; proxy_redirect ปิด; }}

ในที่สุดให้ตรวจสอบไวยากรณ์และรีสตาร์ทบริการ Nginx

$ sudo nginx -t $ sudo systemctl restart nginx

Reverse Proxy Apache สำหรับ Rocket.Chat

ติดตั้งแพ็คเกจ Apache2

$ sudo apt ติดตั้ง apache2 # Ubuntu / Debian $ sudo dnf ติดตั้ง httpd #fedora 22 + / centos / rhel 8 $ sudo yum ติดตั้ง httpd # centos / rhel 7

ถัดไปเรียกใช้และเปิดใช้งานบริการ Apache และตรวจสอบว่ากำลังทำงานและทำงานอยู่หรือไม่

----- ใน Ubuntu / Debian ----- $ sudo systemctl เปิดใช้งาน --now apache2 $ sudo systemctl สถานะ apache2 ----- ใน centeros / rhel 7/8 ----- $ sudo systemctl เปิดใช้งาน - ตอนนี้ httpd $ sudo systemctl สถานะ httpd

จากนั้นสร้างไฟล์โฮสต์เสมือนสำหรับแอปพลิเคชัน Rocket.Chat เช่นในไดเรกทอรี / etc / apache2 / site / หรือ /etc/httpd/conf.d/

----- ใน Ubuntu / Debian ----- $ sudo vim /etc/apache2/sites-available/chat.merionet.com.centf ----- ใน centeros / rhel 7/8 ----- $ sudo vim /etc/httpd/conf.d/chot.merionet.com.conf

ถัดไปแทรกการกำหนดค่าไปยังไฟล์นี้โดยแทนที่โดเมนเป็นของคุณและบันทึก

ServerAdmin [email protected] servername chat.merionet.com ข้อมูล loglevel errorlog /var/log/chat.merionet.com_error.log transferlog /var/log/chat.merionet.com_access.log จำเป็นต้องได้รับการเขียนซ้ำทั้งหมดใน RewritEcond% {http: อัปเกรด} = WebSocket [NC] Rewriterule /(.*) WS: // localhost: 3000 / $ 1 [P, L] rewritecond% {http: อัพเกรด}! = WebSocket [nc] rewristerule /(.*) http: / / localhost: 3000 / $ 1 [p, l] proxypassreverse / http: // localhost: 3000 /

ใน Ubuntu และ Debian เปิดใช้งานโมดูล Apache2 ที่จำเป็นและรีสตาร์ทบริการ

$ sudo a2enmod proxy_http $ sudo a2enmod proxy_wstunnel $ sudo a2enmod rewrite $ sudo systemctl รีสตาร์ท apache2

ใน Centos / Rhel และ Fedora รีสตาร์ทบริการ Apache

# SystemCTL รีสตาร์ท httpd

ตอนนี้เปิดเบราว์เซอร์แล้วป้อนที่อยู่ที่กำหนดค่าและแอปพลิเคชัน Rocket.Chat ของคุณจะพร้อมใช้งานผ่านโดเมนของคุณที่กำหนดค่าบนพร็อกซีเซิร์ฟเวอร์

http://chat.merionet.com

การติดตั้ง Chatting Chattorate.Chat บน Linux 18002_8
ขั้นตอนที่ 4: การติดตั้งไคลเอนต์ Rocket.Chat

สามารถดาวน์โหลดแอปพลิเคชันไคลเอ็นต์จากเว็บไซต์อย่างเป็นทางการ Rocket.Chat ในการติดตั้งแอปพลิเคชันเดสก์ท็อปใน Linux คุณดาวน์โหลด Packet Deb (X64) หรือ RPM (x64) ขึ้นอยู่กับการกระจายลินุกซ์ของคุณ

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

หรือ

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

แพ็คเกจถัดไปโดยใช้ DPKG หรือ 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

ร็อคเก็ตการติดตั้งแบบแมนนวล

หากคุณไม่ต้องการติดตั้ง Rocket.Chat ผ่าน Snaps คุณสามารถทำได้ด้วยตนเอง

node.js การติดตั้ง

ขั้นแรกให้อัปเดตรายการแพ็กเก็ตของระบบ:

sudo apt update

ตั้งค่า node.js, npm และการพึ่งพาอื่น ๆ ทั้งหมดที่จำเป็นในการสร้างแพ็คเกจ NPM จากซอร์สโค้ด:

Sudo Apt ติดตั้ง Nodejs NPM Build-Essential Curl Software - Properties-Common GraphicsMagick

เราจะใช้แพ็คเกจ N, NPM ซึ่งช่วยให้คุณสามารถจัดการแบบโต้ตอบของ Node.js คำสั่งด้านล่างเพื่อติดตั้ง n และ node.js:

sudo npm ติดตั้ง -g สืบทอด n sudo n 8.11.3

การติดตั้ง MongoDB

MongoDB เป็นฐานข้อมูล NoSQL ที่เน้นเอกสารซึ่งใช้โดย Rocket.Chat เพื่อเก็บข้อมูล

นำเข้ากุญแจสาธารณะ MongoDB และเปิดพื้นที่เก็บข้อมูล MongoDB อย่างเป็นทางการ:

sudo apt-key adv - keyserver hkp: //keyserver.ubuntu.com: 80 --RECV 9DA31620334BD75D9DCB49F368818C72E52529D4 Sudo Add-apt-repository 'Deb [Arch = AMD64] https://repo.mondodb.org/apt/ubuntu ไบโอนิค /mongodb-org/4.0 Multiverse '

หลังจากเปิดใช้งานที่เก็บ APT ให้อัปเดตรายการแพ็คเก็ตและติดตั้ง MongoDB โดยพิมพ์:

sudo apt update sudo apt ติดตั้ง mongodb-org

จากนั้นเปิดและเริ่มบริการ MongoDB:

sudo systemctl เริ่ม mongod sudo systemctl เปิดใช้งาน Mongod

การสร้างผู้ใช้ระบบใหม่

ตอนนี้คุณต้องสร้างผู้ใช้และกลุ่มใหม่ชื่อจรวดซึ่งจะเรียกใช้อินสแตนซ์ของ Rocket.Chat

sudo useradd -m -u -r -d / opt / จรวดจรวด

เพิ่มผู้ใช้ www-data ไปยังกลุ่มผู้ใช้ใหม่และเปลี่ยนสิทธิ์การเข้าถึงเป็นไดเร็กทอรี / opt / rocket เพื่อให้ Nginx สามารถเข้าถึงการติดตั้ง Rocket.Chat:

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

การติดตั้ง Rocket.Chat

เปลี่ยนเป็นผู้ใช้จรวด

Sudo Su - จรวด

โหลด Rocket.Chat รุ่นที่เสถียรล่าสุดโดยใช้ Curl:

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

หลังจากการดาวน์โหลดเสร็จสิ้นให้ลบที่เก็บถาวรและเปลี่ยนชื่อไดเรกทอรีใน Rocket.Chat:

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

ไปที่ไดเรกทอรี Rocket.chat/programs/server และติดตั้งแพ็คเกจ NPM ที่จำเป็นทั้งหมด:

CD Rocket.Chat/Programs/Server NPM ติดตั้ง

ในการทดสอบการติดตั้งของเราก่อนที่จะสร้างโมดูล SystemD และกำหนดค่าพร็อกซีย้อนกลับด้วย Nginx หรือ Apache เราจะติดตั้งตัวแปรสภาพแวดล้อมที่จำเป็นและเริ่มต้นเซิร์ฟเวอร์ Rocket.Chat

ส่งออกพอร์ต = 3000 ส่งออก root_url = http: //0.0.0.0: 3000 / ส่งออก mongo_url = mongoDB: // localhost: 27017 / rocketchat

กลับไปที่ไดเรกทอรี Rocket.chat และรัน Server Rocket.Chat โดยป้อนคำสั่งต่อไปนี้:

ซีดี .. / ../ โหนด main.js

หากไม่มีข้อผิดพลาดคุณควรเห็นข้อสรุปต่อไปนี้:

? + --------------------------------------------- + | เซิร์ฟเวอร์ทำงาน ? + --------------------------------------------- + | | ? | Rocket.chat รุ่น: 0.71.1 | ? | รุ่น nodejs: 8.11.3 - x64 | ? | แพลตฟอร์ม: Linux | ? | พอร์ตกระบวนการ: 3000 | ? | URL ไซต์: http: //0.0.0: 3000 / | ? | Replicaset Oplog: ปิดการใช้งาน | ? | กระทำแฮช: E73DC78FFD | ? | มุ่งมั่นสาขา: หัวหน้า | ? | | ? + --------------------------------------------- +

หยุดเซิร์ฟเวอร์ Rocket.Chat โดยใช้ Ctrl + C และกลับไปที่ผู้ใช้ Sudo ของคุณโดยการพิมพ์ออก

การสร้างโมดูล SystemD

ในการเรียกใช้ Rocket.Chat เป็นบริการคุณต้องสร้างไฟล์ของโมดูล Rocketchat.Service ใน / etc / systemd / system / system

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

ใส่รหัสต่อไปนี้:

[หน่วย] คำอธิบาย = Rocket.Chat Server After = Network.target nss-lookup.target mongod.target [บริการ] StandardOutput = syslog standardError = syslog syslog syslog ผู้ใช้ = rocketchat user = rocketchat = mongo_url = mongodb: // localhost: 27017 / rocketchat root_url = https: //chat.merionet.com พอร์ต = 3000 execstart = / usr / local / bin / node / opt/rocket/rockets.chat/main.js [ติดตั้ง] wantedby = multi-user.target

บอก SystemD ว่าเราได้สร้างไฟล์โมดูลใหม่แล้วเรียกใช้บริการ Rocket.Chat โดยดำเนินการ:

sudo systemctl daemon- โหลด sudo systemctl เริ่ม rocketchat

ตรวจสอบสถานะของบริการ:

Sudo SystemCtl สถานะ rocketchat

บทสรุปควรเป็นเช่นนี้:

* โหลด Rocketchat.Service - Rocket.Chat Server โหลดแล้ว: โหลด (/etc/systemd/system/rocketchat.service; ปิดการใช้งาน; ผู้ขายที่ตั้งไว้ล่วงหน้า: เปิดใช้งาน) ที่ใช้งานอยู่: ใช้งานอยู่ (ทำงาน) ตั้งแต่พุธ 2018-11-07 14:36:24 PST ; 5 วินาทีที่ผ่านมา PID: 12693 (โหนด) งาน: 10 (จำกัด : 2319) cgroup: / system.slice / rocketchat.service` -12693 / usr / local / bin / node / opt/rocket/rockets.chat/main.js

ในที่สุดเปิดการเริ่มต้นอัตโนมัติของบริการ Rocket.Chat ในระหว่างการดาวน์โหลด:

Sudo SystemCtl เปิดใช้งาน Rocketchat

เสร็จสิ้นเราติดตั้ง Rocket.chat ด้วยตนเองตอนนี้คุณสามารถไปที่การกำหนดค่าพร็อกซีย้อนกลับและการเริ่มต้นของระบบที่อธิบายจากขั้นตอนที่ 3

ผล

ในคู่มือนี้คุณได้เรียนรู้วิธีการติดตั้ง Rocket.Chat ใน Linux และวิธีการกำหนดค่า Nginx และ Apache เป็นพร็อกซีย้อนกลับ

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ Rocket.chat ไปที่หน้าเอกสาร

อ่านเพิ่มเติม