Cài đặt một tên lửa trò chuyện của công ty.Chat trên Linux

Anonim

Rocket.Chat là một cuộc trò chuyện của công ty mở nguồn mở miễn phí được thiết kế với Meteor. Rocket.Chat có thể được coi là một sự tương tự của sự chậm chạp, có thể được triển khai trên máy chủ của nó và kết nối với nó từ các máy khách trên Linux, Windows, MacOS, Android và iOS.

Cài đặt một tên lửa trò chuyện của công ty.Chat trên Linux 18002_1

Chức năng Rocket.Chat.

  • Trò chuyện thời gian thực
  • Hội nghị âm thanh
  • Hội nghị truyền hình
  • Kênh truyền hình
  • Khách bên trong
  • Màn hình phát sóng
  • Chuyển tập tin
  • API đầy đủ tính năng

Để đảm bảo an ninh được sử dụng:

  • Đồng bộ hóa nhóm LDAP
  • Xác thực hai yếu tố 2FA
  • Thông qua mã hóa
  • SSO đầu vào đơn.
  • Nhiều nhà cung cấp xác thực outh

Chúng tôi nói cách cài đặt và định cấu hình máy chủ và tên lửa Rocket.Chat trong Linux.

Bước 1. Cài đặt Snap trong Linux

Để đơn giản, chúng tôi sẽ sử dụng hệ thống quản lý gói Snaps. Trước hết, bạn cần cài đặt gói Snapd bằng Trình quản lý gói.

$ sudo apt cài đặt snapd #ubfox và debian $ sudo dnf cài đặt snapd #fedora 22 + / centos / rhel 8 $ sudo yum cài đặt snapd # centos / rhel 7

Tiếp theo, bạn phải kích hoạt mô-đun SystemD kiểm soát ổ cắm giao tiếp tức thời chính. Lệnh này sẽ khởi động ổ cắm và sẽ cho phép nó bắt đầu khi hệ thống được tải.

$ Sudo systemctl all --now snapd.socket

Bước 2: Cài đặt Rocket.Chat trong Linux

Để cài đặt Rocketchat-Server, hãy chạy:

$ sudo snap cài đặt rocketchatchat-server

Khi cài đặt qua Snap đã hoàn tất, Rocket.Chat Server sẽ bắt đầu hoạt động và nghe cổng 3000. Tiếp theo, hãy mở trình duyệt web và nhập địa chỉ sau để định cấu hình Rocket.Chat qua GUI.

http: // server_ip: 3000

Sau khi tải xuống trình hướng dẫn cài đặt, chỉ định các tham số sau: tên quản trị viên đầy đủ, tên người dùng, địa chỉ e-mail của tổ chức và mật khẩu.

Cài đặt một tên lửa trò chuyện của công ty.Chat trên Linux 18002_2

Tiếp theo, bạn cần chỉ định thông tin về tổ chức: Loại hình tổ chức, tên, công nghiệp, quy mô, quốc gia và trang web.

Cài đặt một tên lửa trò chuyện của công ty.Chat trên Linux 18002_3

Sau đó, bạn cần chỉ định thông tin máy chủ - tên trang web, ngôn ngữ, loại máy chủ và bật hoặc vô hiệu hóa xác thực hai yếu tố 2FA.

Cài đặt một tên lửa trò chuyện của công ty.Chat trên Linux 18002_4

Trên trang tiếp theo bạn cần đăng ký máy chủ. Có hai lựa chọn ở đây. Đầu tiên là sử dụng các cổng và proxy đặt trước được cung cấp bởi Rocket.Chat thứ hai - Lưu quyền tự động và tạo tài khoản từ các nhà cung cấp dịch vụ, cập nhật các tham số đặt trước và biên dịch lại các ứng dụng di động với chứng chỉ riêng của bạn.

Cài đặt một tên lửa trò chuyện của công ty.Chat trên Linux 18002_5

Cài đặt hoàn tất và không gian làm việc của bạn đã sẵn sàng, bây giờ bạn cần nhấp vào Đi đến không gian làm việc của bạn (đi đến không gian làm việc)

Cài đặt một tên lửa trò chuyện của công ty.Chat trên Linux 18002_6

Đó là cách nó trông như thế nào.

Cài đặt một tên lửa trò chuyện của công ty.Chat trên Linux 18002_7
Bước 3: Cài đặt proxy ngược cho Rocket.Chat

Máy chủ proxy ngược, chẳng hạn như nginx hoặc apache, cho phép bạn định cấu hình ứng dụng Rocket.Chat để truy cập thông qua tên miền hoặc tên miền phụ. Rocket.Chat là một máy chủ ứng dụng cấp trung cấp không hỗ trợ SSL / TLS. Proxy ngược sẽ cho phép bạn tùy chỉnh các chứng chỉ SSL / TLS để bật HTTPS.

Proxy leglx ngược cho tên lửa.chat

Đầu tiên cài đặt Nginx.

$ sudo apt apt cài đặt nginx # ubfox / debian $ sudo dnf cài đặt nginx #fedora 22 + / centos / rhel 8 $ sudo yum cài đặt nginx # centos / rhel 7

Tiếp theo, chạy dịch vụ nginx, bật khởi động tự động khi tải hệ thống và kiểm tra trạng thái của nó

$ sudo systemctl ally - novow nginx $ sudo systemctl trạng thái nginx

Sau đó tạo tệp máy chủ ảo chặn cho ứng dụng Rocket.Chat, ví dụ, trong thư mục /etc/nginx/conf.d/.

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

Tiếp theo, chèn cấu hình vào tệp này bằng cách thay thế tên miền vào bạn và lưu.

Phụ trợ ngược dòng {máy chủ 127.0.0.1:3000; } Máy chủ {nghe 80; Server_name chat.merionet.com; # Bạn có thể tăng giới hạn nếu bạn cần. client_max_body_size 200m; error_log /var/log/nginx/chat.merionet.com.log; Vị trí / {proxy_pass http: // Backend /; Proxy_http_version 1.1; Proxy_set_header nâng cấp $ http_upgrade; Proxy_set_header kết nối "Nâng cấp"; Proxy_set_header Máy chủ $ http_host; Proxy_set_header X-Real-ip $ Remote_addr; Proxy_set_header X-Forwarded-cho $ proxy_add_x_forwarded_for; proxy_set_header x-forward-proto http; Proxy_set_header x-nginx-proxy TRUE; proxy_redirect tắt; }}

Cuối cùng, hãy kiểm tra cú pháp và khởi động lại dịch vụ Nginx.

$ sudo nginx -t $ sudo systemctl restart nginx

Proxy đảo ngược Apache cho Rocket.Chat

Cài đặt gói Apache2

$ sudo apt cài đặt apache2 # ubfox / debian $ sudo dnf cài đặt httpd #fedora 22 + / centos / rhel 8 $ sudo yum cài đặt httpd # centos / rhel 7

Tiếp theo, chạy và kích hoạt dịch vụ Apache và kiểm tra xem nó đang chạy và chạy.

----- Trong Ubuntu / Debian ----- $ Sudo Systemctl Bật - Hiện báo Apache2 $ Sudo Systemctl Trạng thái Apache2 ----- trong Centsos / RHEL 7/8 ----- $ sudo systemctl Kích hoạt - ngay bây giờ httpd $ sudo systemctl status httpd

Sau đó tạo một tệp máy chủ ảo cho ứng dụng Rocket.Chat, ví dụ: trong thư mục / etc / apache2 / trang web / hoặc /etc/httpd/conf.d/.

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

Tiếp theo, chèn cấu hình vào tệp này bằng cách thay thế tên miền vào bạn và lưu.

Serveradmin [email protected] servername chat.merionet.com loglevel thông tin errorlog /var/log/chat.merionet.com_error.log chuyển khoản /var/log/chat.merionet.com_access.log yêu cầu tất cả các yêu cầu reowriteecond trên rewritecond% {http: Nâng cấp} = WebSocket [NC] rewriteRule /(.*) WS: // localhost: 3000 / $ 1 [p, l] rewritecond% {http: nâng cấp}! = NC] rewriteRule /(.*) http: / / Localhost: 3000 / $ 1 [p, l] proxySreverse / http: // localhost: 3000 /

Trong Ubuntu và Debian, cho phép các mô-đun Apache2 cần thiết và khởi động lại dịch vụ.

$ sudo a2enmod proxy_http $ sudo a2enmod proxy_wstunnel $ sudo a2enmod viết lại $ sudo systemctl restart apache2

Trong CentOS / RHEL và Fedora khởi động lại dịch vụ Apache.

# Systemctl restart httpd

Bây giờ hãy mở trình duyệt và nhập địa chỉ được cấu hình và ứng dụng Rocket.Chat của bạn sẽ có sẵn thông qua miền của bạn được cấu hình trên máy chủ proxy.

http://chat.merionet.com.

Cài đặt một tên lửa trò chuyện của công ty.Chat trên Linux 18002_8
Bước 4: Lắp đặt khách hàng Rocket.Chat

Các ứng dụng khách có thể được tải xuống từ trang web chính thức Rocket.Chat. Để cài đặt ứng dụng máy tính để bàn trong Linux, bạn tải xuống gói Deb (x64) hoặc RPM (x64) tùy thuộc vào bản phân phối Linux của bạn.

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

Hoặc là

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

Gói tiếp theo bằng Trình quản lý gói DPKG hoặc RPM

$ sudo dpkg -i rocketchat_2.17.7_amd64.deb # ubfox / debian $ sudo rpm -i roverchat-2.17.7.x86_64.rpm # centos / redhat

Hướng dẫn cài đặt Rocket.Chat.

Nếu bạn không muốn cài đặt Rocket.Chat thông qua Snaps, bạn có thể thực hiện theo cách thủ công.

Cài đặt Node.js.

Đầu tiên, cập nhật danh sách các gói hệ thống:

Sudo apt update.

Đặt Node.js, NPM và tất cả các phụ thuộc khác cần thiết để xây dựng các gói NPM từ mã nguồn:

Sudo apt cài đặt nodejs npm build-thiết yếu phần mềm Curl-Properties-Common GraphicsMagick

Chúng tôi sẽ sử dụng gói N, NPM, cho phép bạn tích hợp quản lý các phiên bản Node.js. Lệnh dưới đây để cài đặt n và node.js:

Sudo npm install -g kế thừa n sudo n 8.11.3

Cài đặt MongoDB.

MongoDB là cơ sở dữ liệu NoQuery định hướng tài liệu, được sử dụng bởi Rocket.Chat để lưu trữ dữ liệu.

Nhập khóa công khai MongoDB và bật Kho lưu trữ MongoDB chính thức:

Sudo apt-key adv --keyserver hkp: //keyserver.ubfox.com: 80 --recv 9da31620334BD75D9DCB49F368818C72E52529D4 sudo add-apt-repository 'deb [arch64] https://repo.mongodb.org/apt/ubuntu bionic /mongodb-org/4.0 Đa nhiều '

Sau khi bật kho lưu trữ apt, hãy cập nhật danh sách gói và cài đặt MongoDB bằng cách gõ:

Sudo apt update sudo apt cài đặt mongodb-org

Sau đó bật và khởi động dịch vụ MongoDB:

Sudo Systemctl Bắt đầu Mongod Sudo Systemctl Kích hoạt MongoD

Tạo một người dùng hệ thống mới

Bây giờ bạn cần tạo một người dùng và nhóm mới tên lửa, sẽ chạy các trường hợp Rocket.Chat.

Sudo useradd -m -u -r -d / opt / tên lửa tên lửa

Thêm một người dùng www-data vào một nhóm người dùng mới và thay đổi quyền truy cập vào thư mục / opt / tên lửa để nginx có thể truy cập rocket.chat cài đặt:

Sudo usermod -a -g tên lửa www-data sudo chmod 750 / opt / tên lửa

Cài đặt Rocket.Chat.

Chuyển sang người dùng tên lửa

Sudo su - tên lửa

Tải phiên bản ổn định mới nhất của Rocket.Chat bằng Curl:

curl -l https://relys.rocket.chat/lateest/doad -o rocket.chat.tgz

Sau khi tải xuống hoàn tất, hãy xóa kho lưu trữ và đổi tên thư mục trong Rocket.Chat:

tar zxf rocket.chat.tgz MV Bundle Rocket.Chat

Chuyển đến thư mục Rocket.Chat/programs/Server và cài đặt tất cả các gói NPM cần thiết:

Cd rocket.chat/programs/server npm cài đặt

Để kiểm tra cài đặt của chúng tôi trước khi tạo mô-đun SystemD và định cấu hình proxy ngược với nginx hoặc apache, chúng tôi sẽ cài đặt các biến môi trường cần thiết và khởi động máy chủ Rocket.Chat

Cổng xuất = 3000 Xuất root_url = http: //0..0.0: 3000 / Xuất Mongo_url = MongoDB: // localhost: 27017 / rocketchat

Quay trở lại thư mục Rocket.Chat và chạy máy chủ Rocket.Chat bằng cách nhập các lệnh sau:

Cd ../../ nút main.js

Nếu không có lỗi, bạn sẽ thấy kết luận sau:

? + --------------------------------------------- +? | Máy chủ đang chạy |. ? + --------------------------------------------- +? | | ? | Rocket.Chat Phiên bản: 0,71.1 | ? | Phiên bản NODEJS: 8.11.3 - x64 | ? | Nền tảng: Linux | ? | Cổng quy trình: 3000 | ? | URL trang web: http: ///0.0.0: 3000 / | ? | Bản sao Oplog: Vô hiệu hóa | ? | CAM KẾT HASH: E73DC78FFD | ? | Chi nhánh Cam kết: ĐẦU | ? | | ? + --------------------------------------------- +.

Dừng máy chủ Rocket.Chat bằng Ctrl + C và quay lại người dùng sudo của bạn bằng cách gõ Thoát.

Tạo một mô-đun hệ thống

Để chạy Rocket.Chat như một dịch vụ, bạn cần tạo một tệp mô-đun ROCKETCHAT.Service trong / etc / systemd / system / system.

sudo nano /etc/rsystemd/system/rocketchat. Dịch vụ.

Chèn đoạn mã sau:

[Đơn vị] Mô tả = Rocket.chat Server SAU = Network.target nss-lookup.target mongod.target [Service] StandardPution = syslog StandardError = syslog syslogidentifier = mông mông = mongo_url = mongo_url = // localhost: 27017 / rocketchat Root_url = https: //chat.merionet.com cổng = 3000 execstart = / usr / local / bin / node / opt/rocket/rocket.chat/main.js [install] wasterby = multi-user.target

Nói với Systemd rằng chúng tôi đã tạo một tệp mô-đun mới và chạy dịch vụ Rocket.Chat bằng cách thực hiện:

Sudo systemctl daemon-tải lại sudo systemctl bắt đầu rocketchat

Kiểm tra trạng thái của dịch vụ:

Sudo Systemctl Trạng thái Rocketchat

Kết luận nên như thế này:

* ROCKETCHAT.Service - Rocket.Chat Server đã tải: Đã tải (/etc/systemd/system/rocketchat. Dịch vụ; bị vô hiệu hóa; Nhà cung cấp đặt trước: Đã bật) Hoạt động: Hoạt động (chạy) kể từ Wed 2018-11-07 14:36:24 PST Được; 5s trước Main PID: 12693 (nút) Nhiệm vụ: 10 (Giới hạn: 2319) Cgroup: / system.setchat.serchat.service` -12693 / usr / local / bin / node / opt/rocket / orocket / aphat.js

Cuối cùng, bật khởi động tự động của dịch vụ Rocket.Chat trong khi tải xuống:

Sudo systemctl cho phép rocketchat

Kết thúc, chúng tôi đã cài đặt Rocket.Chat bằng tay, giờ đây bạn có thể đi để định cấu hình proxy ngược và khởi tạo hệ thống được mô tả từ bước 3.

CÁC KẾT QUẢ

Trong hướng dẫn này, bạn đã học cách cài đặt Rocket.Chat trong Linux và cách định cấu hình Nginx và Apache dưới dạng proxy ngược.

Để tìm hiểu thêm về Rocket.Chat truy cập trang tài liệu.

Đọc thêm