Rocket.Chat — бесплатный корпоративный чат опенсорс для Linux

Rocket.Chat — бесплатный корпоративный чат с открытым исходным кодом для Linux

Linux

Rocket.Chat — это бесплатная, масштабируемая, гибко настраиваемая и безопасная платформа с открытым исходным кодом, которая позволяет вам общаться и сотрудничать с вашей командой, обмениваться файлами и общаться в режиме реального времени. Она является кроссплатформенной и работает в мобильных операционных системах Linux, Windows, macOS, Android и iOS.

Платформа похожа на Slack и включает в себя чат в реальном времени, бесплатные аудио- и видеоконференции, каналы, гостевой доступ, совместное использование экрана и общий доступ к файлам. Для обеспечения безопасной связи поддерживает:

  • групповую синхронизацию LDAP
  • двухфакторную аутентификацию (2FA)
  • сквозное шифрование
  • единый вход
  • несколько поставщиков Oauth аутентификации

 

Важно отметить, что вы можете получить доступ к исходному коду для полной настройки, расширения или добавления новых функций в соответствии с требованиями вашей команды или бизнеса.

В этой статье вы узнаете, как установить и настроить сервер и клиент Rocket.Chat в системе Linux.

 

Шаг 1. Установка Snaps в Linux

1. Самый простой способ установить Rocket.Chat — это использовать Snaps — они поддерживаются большинством, если не всеми современными дистрибутивами Linux, и они безопасны, поскольку работают в ограниченной изолированной программной среде безопасности. Кроме того, с помощью snaps вы также можете автоматически обновлять, когда доступна новая версия пакета.

Во-первых, убедитесь, что в вашей системе установлен пакет snapd, в противном случае установите его с помощью диспетчера пакетов по умолчанию, как показано ниже.

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

 

 

2. После завершения установки вам необходимо активировать службу. Обратите внимание, что эта команда запустит сокет и включит его при загрузке системы. В Ubuntu это произойдет автоматически после завершения установки пакета.

$ sudo systemctl enable --now snapd.socket

 

 

Кроме того, вы можете включить поддержку классической привязки, создав символическую ссылку между /var/lib/snapd/snap и /snap.

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

 

 

Шаг 2: Установка Rocket.Chat в Linux

3. Теперь, когда у вас установлен Snapd, выполните следующую команду, чтобы установить rocketchat-сервер.

$ sudo snap install rocketchat-server

 

 

4. По завершении установки ваш сервер rocket.chat начнет работать и прослушивать порт 3000 по умолчанию. Откройте веб-браузер и введите следующий адрес, чтобы настроить rocket.chat в системе.

http://SERVER_IP:3000

 

 

5. После загрузки мастера установки укажите полное имя администратора, имя пользователя, адрес электронной почты организации и пароль.

provide-rocket-chat-administrative-username

 

 

6. Затем укажите организационную информацию (тип организации, название, отрасль, размер, страна и веб-сайт), затем нажмите «Продолжить».

provide-organizational-information

 

 

7. Далее укажите информацию о сервере (имя сайта, по умолчанию, тип сервера, а также включите 2FA или нет). Затем нажмите Продолжить.

Rocket.Chat — бесплатный корпоративный чат опенсорс для Linux

 

 

8. На следующей странице зарегистрируйте сервер. Здесь есть два варианта, по умолчанию используется предварительно сконфигурированные шлюзы и прокси, предоставляемые Rocket.Chat (это рекомендуемый вариант).

Кроме того, вы можете выбрать автономность и создание учетных записей у поставщиков услуг, обновить предварительно настроенные параметры, а также перекомпилировать мобильные приложения с вашими личными сертификатами. Нажмите Продолжить.

register-rocket-chat-server

 

 

Настройка завершена, и ваше рабочее пространство готово. Нажмите Перейти в рабочее пространство.

Rocket.Chat — бесплатный корпоративный чат опенсорс для Linux

 

Далее

rocket-chat-home-workspace

 

 

Шаг 3: Настройка обратного прокси для Rocket.Chat

9. Обратный прокси-сервер, такой как NGINX или Apache, позволяет настроить приложение Rocket.Chat так, чтобы оно было доступно через домен или поддомен, вместо того, чтобы вводить адрес сервера и порт приложения. Кроме того, Rocket.Chat является сервером приложений среднего уровня, который не поддерживает SSL/TLS. Обратный прокси-сервер также позволяет настроить сертификаты SSL / TLS для включения HTTPS.

 

Включение обратного прокси-сервера Nginx для Rocket.Chat

10. Сначала установите пакет NGINX, если он еще не установлен в вашей системе.

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

 

 

11. После завершения установки пакета запустите службу Nginx, на данный момент включите его автоматический запуск при загрузке системы и проверьте его состояние, чтобы убедиться, что он работает.

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

 

 

12. Затем создайте файл виртуального сервера для приложения Rocket.Chat, например, в каталоге /etc/nginx/conf.d/.

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

 

 

Затем скопируйте и вставьте следующую конфигурацию в файл (замените chat.sedicomm.com на действительный поддомен или домен).

upstream backend {
server 127.0.0.1:3000;
}

server {
listen 80;
server_name <strong>chat.sedicomm.com</strong>;

# You can increase the limit if you need to.
client_max_body_size 200M;

error_log /var/log/nginx/chat.sedicomm.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;
}
}

 

 

Сохраните файл и закройте его.

13. Затем проверьте конфигурацию NGINX на предмет любых синтаксических проблем. Если все в порядке, перезапустите службу Nginx, чтобы применить последние изменения.

$ sudo nginx -t
$ sudo systemctl restart nginx

 

 

Включение обратного прокси-сервера Apache для Rocket.Chat

14. Начните с установки пакета Apache2, если он еще не установлен в вашей системе.

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

 

 

15. Затем запустите и включите службу apache и проверьте, работает ли она следующим образом.

----- 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. Затем создайте файл виртуального хоста для приложения Rocket.Chat, например, в каталоге /etc/apache2/sites-available/ или /etc/httpd/conf.d/.

----- On Ubuntu/Debian -----
$ sudo vim /etc/apache2/sites-available/chat.sedicomm.com.conf

----- On CentsOS/RHEL 7/8 -----
$ sudo vim /etc/httpd/conf.d/chat.sedicomm.com.conf

 

 

17. Скопируйте и вставьте в него следующую конфигурацию, замените chat.sedicomm.com действительным доменом.

<VirtualHost *:80>
ServerAdmin [email protected]
ServerName chat.sedicomm.com

LogLevel info
ErrorLog /var/log/chat.sedicomm.com_error.log
TransferLog /var/log/chat.sedicomm.com_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>

 

 

Сохраните файл и закройте его.

18. В Ubuntu и Debian включите необходимые модули apache2 и перезапустите службу, чтобы применить последние изменения.

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

 

 

В CentOS/RHEL и Fedora просто перезапустите службу apache.

# systemctl restart httpd

 

 

19. Теперь все настроено правильно, откройте ваш браузер и введите следующий адрес. Приложение Rocket.Chat должно быть доступно через ваш домен, настроенный на прокси-сервере.

http://chat.sedicomm.com 

 

 

20. Следующий важный шаг — добавить преимущества безопасности и конфиденциальности сертификата HTTPS в вашу службу чата. Для производственной среды мы рекомендуем использовать Let Encrypt, который является бесплатным и пользуется доверием большинства современных веб-браузеров. Обратите внимание, что Let’s Encrypt автоматизирован: вы можете использовать certbot, бесплатный инструмент с открытым исходным кодом для автоматического получения и установки, или просто получить и вручную установить сертификаты Let Encrypt в основных дистрибутивах Linux и веб-серверах.

 

Шаг 4: Установка клиентов Rocket.Chat на рабочий стол

21. И последнее, но не менее важное: вы можете загрузить и установить настольное приложение Rocket.Chat для Linux, Mac или Windows с веб-сайта проекта Rocket.Chat. Он также предоставляет мобильные приложения для Android и iOS.

Чтобы установить настольное приложение в Linux, вы можете загрузить пакет deb(x64) или rpm(x64) в зависимости от дистрибутива Linux.

$ 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. Затем установите пакет, используя менеджер пакетов dpkg или rpm, как показано на рисунке.

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

 

 

23. После завершения установки пакета найдите rocket.chat в системном меню и запустите его. После загрузки введите URL-адрес вашего сервера, чтобы подключиться к нему.

 

 

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасности,  полный курс по кибербезопасностикурсы DevNet (программируемые сети) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОМ.

 

Курсы Cisco и Linux с трудоустройством!

Спешите подать заявку! Осталось пару мест. Группы стартуют 22 июля, а следующая 19 августа, 23 сентября, 21 октября, 25 ноября, 16 декабря, 20 января, 24 февраля.
Что Вы получите?
  • Поможем стать экспертом в сетевом администрировании и получить международные сертификаты Cisco CCNA Routing & Switching или Linux LPI.
  • Предлагаем проверенную программу и учебник экспертов из Cisco Networking Academy и Linux Professional Institute, сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и сделать карьеру. 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проводим вечерние онлайн-лекции на нашей платформе или обучайтесь очно на базе Киевского офиса.
  • Спросим у вас об удобном времени для практик и подстроимся: понимаем, что времени учиться мало.
  • Если хотите индивидуальный график — обсудим и осуществим.
  • Выставим четкие дедлайны для самоорганизации. Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
А еще поможем Вам:
  • отредактировать резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроим на работу в Cisco по программе Cisco Incubator, New Graduate и Experienced. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco CCNA Routing & Switching и Linux LPI, подайте заявку или получите бесплатную консультацию.
Linux

Больше похожих постов

Лучшие-сетевые-команды-в-Linux

Лучшие сетевые команды в Linux

19
0
Linux используется на серверах в качестве операционной системы во многих сетях. Это самая важная и широко используемая операционная система в…
Продолжим наше объяснение типов файлов в Linux

Объяснение типов файлов в Linux

356
0
Объяснение типов файлов в Linux — просто и понятно, для новичка и специалиста. Если вы новичок в Linux или использовали…

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения

Самое читаемое
Меню