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.
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.
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.
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.
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 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)
Đó là cách nó trông như thế nào.
Bước 3: Cài đặt proxy ngược cho Rocket.ChatMá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.ChatCà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.
Bước 4: Lắp đặt khách hàng Rocket.ChatCá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ớiBâ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.