По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Rocket.Chat — это бесплатный масштабируемый open source корпоративный чат, разработанный с помощью Meteor. Rocket.Chat можно считать аналогом Slack, который можно развернуть на своем сервере, и подключаться к нему с клиентов на Linux, Windows, macOS, Android и iOS. Функции Rocket.Chat Чат в реальном времени Аудиоконференции Видеоконференции Каналы Гостевой вход Трансляция экрана Передача файлов Полнофункциональный API Для обеспечения безопасности используется: Групповая синхронизация LDAP Двухфакторная аутентификация 2FA Сквозное шифрование Единый вход SSO Несколько поставщиков Oauth аутентификации Рассказываем как установить и настроить сервер и клиент Rocket.Chat в Linux. Шаг 1. Установка Snap в Linux Для простоты мы будем использовать систему управления пакетами Snaps. Первым делом надо установить пакет snapd c помощью диспетчера пакетов. $ sudo apt install snapd #Ubuntu и Debian $ sudo dnf install snapd #Fedora 22+/CentOS/RHEL 8 $ sudo yum install snapd #CentOS/RHEL 7 Далее необходимо включить модуль systemd, который управляет основным сокетом мгновенной связи. Эта команда запустит сокет и позволит ему запускаться при загрузке системы. $ sudo systemctl enable --now snapd.socket Шаг 2: Установка Rocket.Chat в Linux Для установки rocketchat-server выполните: $ sudo snap install rocketchat-server Когда установка через snap будет завершена, rocket.chat сервер начнет работать и прослушивать порт 3000. Далее откройте веб-браузер и введите следующий адрес, чтобы настроить rocket.chat через GUI. http://SERVER_IP:3000 После загрузки мастера настройки укажите следующие параметры: полное имя администратора, имя пользователя, адрес электронной почты организации и пароль. Далее надо указать информацию об организации: тип организации, название, отрасль, размер, страна и сайт. Затем нужно указать информацию о сервере - имя сайта, язык, тип сервера, и включение или отключение двухфакторной аутентификации 2FA. На следующей странице нужно зарегистрировать сервер. Здесь есть две опции. Первая - использовать предварительно настроенные шлюзы и прокси, предоставленные Rocket.Chat Вторая - сохранить автономность и создать учетные записи у поставщиков услуг, обновить предварительно настроенные параметры, а также перекомпилировать мобильные приложения с вашими частными сертификатами. Настройка завершена, и ваше рабочее пространство готово, теперь надо нажать Go to your workspace (Перейти в рабочее пространство) Вот так оно выглядит. Шаг 3: Настройка обратного прокси для Rocket.Chat Обратный прокси-сервер, например nginx или Apache, позволяет настроить приложение Rocket.Chat для доступа через домен или поддомен. Rocket.Chat является сервером приложений среднего уровня, который не поддерживает SSL/TLS. Обратный прокси-сервер позволит настраивать сертификаты SSL/TLS для включения HTTPS. Обратный прокси Nginx для Rocket.Chat Сначала установите Nginx. $ sudo apt apt install nginx #Ubuntu/Debian $ sudo dnf install nginx #Fedora 22+/CentOS/RHEL 8 $ sudo yum install nginx #CentOS/RHEL 7 Далее запустите службу Nginx, включите ее автоматический запуск при загрузке системы и проверьте ее статус $ sudo systemctl enable --now nginx $ sudo systemctl status nginx Затем создайте block файл виртуального сервера для приложения Rocket.Chat, например, в каталоге /etc/nginx/conf.d/. $ sudo vim /etc/nginx/conf.d/chat.merionet.com.conf Далее вставьте конфигурацию в этот файл, заменив домен на свой и сохраните. upstream backend { server 127.0.0.1:3000; } server { listen 80; server_name chat.merionet.com; # You can increase the limit if you need to. client_max_body_size 200M; error_log /var/log/nginx/chat.merionet.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; } } Наконец проверьте синтаксис и перезапустите службу Nginx. $ sudo nginx -t $ sudo systemctl restart nginx Обратный прокси Apache для Rocket.Chat Установите пакет Apache2 $ sudo apt install apache2 #Ubuntu/Debian $ sudo dnf install httpd #Fedora 22+/CentOS/RHEL 8 $ sudo yum install httpd #CentOS/RHEL 7 Далее запустите и включите службу apache и проверьте, запущена ли она и работает. ----- В Ubuntu/Debian ----- $ sudo systemctl enable --now apache2 $ sudo systemctl status apache2 ----- В CentsOS/RHEL 7/8 ----- $ sudo systemctl enable --now httpd $ sudo systemctl status httpd Затем создайте файл виртуального хоста для приложения Rocket.Chat, например, в каталоге /etc/apache2/sites-available/ или /etc/httpd/conf.d/. ----- В Ubuntu/Debian ----- $ sudo vim /etc/apache2/sites-available/chat.merionet.com.conf ----- В CentsOS/RHEL 7/8 ----- $ sudo vim /etc/httpd/conf.d/chat.merionet.com.conf Далее вставьте конфигурацию в этот файл, заменив домен на свой и сохраните. <VirtualHost *:80> ServerAdmin admin@merionet.ru ServerName chat.merionet.com LogLevel info ErrorLog /var/log/chat.merionet.com_error.log TransferLog /var/log/chat.merionet.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> В 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 Теперь откройте браузер и введите ваш настроенный адрес и приложение Rocket.Chat станет доступно через ваш домен, настроенный на прокси-сервере. http://chat.merionet.com Шаг 4: Установка клиентов Rocket.Chat Клиентские приложения можно скачать с официального сайта Rocket.Chat. Чтобы установить десктопное приложение в 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 Или $ wget -c https://github.com/RocketChat/Rocket.Chat.Electron/releases/download/2.17.7/rocketchat-2.17.7.x86_64.rpm Затем установите пакет с помощью диспетчера пакетов 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 Ручная установка Rocket.Chat Если вы не хотите устанавливать Rocket.Chat через Snaps, вы можете сделать это вручную. Установка Node.js Сначала обновите список системных пакетов: sudo apt update Установите Node.js, npm и все другие зависимости, необходимые для сборки пакетов npm из исходного кода: sudo apt install nodejs npm build-essential curl software-properties-common graphicsmagick Мы будем использовать n, пакет npm, который позволяет интерактивно управлять версиями Node.js. Выполните команды ниже, чтобы установить n и Node.js: sudo npm install -g inherits 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.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse' После включения репозитория apt обновите список пакетов и установите MongoDB, набрав: sudo apt update sudo apt install mongodb-org Затем включите и запустите службу MongoDB: sudo systemctl start mongod sudo systemctl enable mongod Создание нового системного пользователя Теперь необходимо создать нового пользователя и группу с именем rocket, которые будут запускать инстанс Rocket.Chat. sudo useradd -m -U -r -d /opt/rocket rocket Добавьте пользователя www-data в новую группу пользователей и измените права доступа к каталогу /opt/rocket, чтобы Nginx мог получить доступ к установке Rocket.Chat: sudo usermod -a -G rocket www-data sudo chmod 750 /opt/rocket Установка Rocket.Chat Переключитесь на пользователя rocket sudo su - rocket Загрузите последнюю стабильную версию Rocket.Chat с помощью curl: curl -L https://releases.rocket.chat/latest/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 install Чтобы протестировать нашу установку перед созданием модуля systemd и настройкой обратного прокси с Nginx или Apache, мы установим необходимые переменные среды и запустим сервер Rocket.Chat export PORT=3000 export ROOT_URL=http://0.0.0.0:3000/ export MONGO_URL=mongodb://localhost:27017/rocketchat Вернитесь в каталог Rocket.Chat и запустите сервер Rocket.Chat, введя следующие команды: cd ../../ node main.js Если ошибок нет, вы должны увидеть следующий вывод: ? +---------------------------------------------+ ? | SERVER RUNNING | ? +---------------------------------------------+ ? | | ? | Rocket.Chat Version: 0.71.1 | ? | NodeJS Version: 8.11.3 - x64 | ? | Platform: linux | ? | Process Port: 3000 | ? | Site URL: http://0.0.0.0:3000/ | ? | ReplicaSet OpLog: Disabled | ? | Commit Hash: e73dc78ffd | ? | Commit Branch: HEAD | ? | | ? +---------------------------------------------+ Остановите сервер Rocket.Chat с помощью Ctrl+C и вернитесь к своему пользователю sudo, набрав exit. Создание модуль Systemd Чтобы запустить Rocket.Chat как службу, нужно создать файл модуля rocketchat.service в каталоге /etc/systemd/system/. sudo nano /etc/systemd/system/rocketchat.service Вставьте следующий код: [Unit] Description=Rocket.Chat server After=network.target nss-lookup.target mongod.target [Service] StandardOutput=syslog StandardError=syslog SyslogIdentifier=rocketchat User=rocket Environment=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 [Install] WantedBy=multi-user.target Сообщите systemd, что мы создали новый файл модуля, и запустите службу Rocket.Chat, выполнив: sudo systemctl daemon-reload sudo systemctl start rocketchat Проверьте статус сервиса: sudo systemctl status rocketchat Вывод должен быть таким: * rocketchat.service - Rocket.Chat server Loaded: loaded (/etc/systemd/system/rocketchat.service; disabled; vendor preset: enabled) Active: active (running) since Wed 2018-11-07 14:36:24 PST; 5s ago Main PID: 12693 (node) Tasks: 10 (limit: 2319) CGroup: /system.slice/rocketchat.service `-12693 /usr/local/bin/node /opt/rocket/Rocket.Chat/main.js Наконец, включите автоматический запуск службы Rocket.Chat во время загрузки: sudo systemctl enable rocketchat Готово, мы установили Rocket.Chat вручную, теперь можно переходить к настройке обратного прокси и инициализации системы, которые были описаны начиная с шага 3. Итоги В этом руководстве вы узнали, как установить Rocket.Chat в Linux и как настроить Nginx и Apache в качестве обратного прокси. Чтобы узнать больше о Rocket.Chat посетите страницу документации.
img
Предыдущая статья из цикла про протоколы TCP/IP 4 уровня: TCP и UDP тут. Вы должны хотя бы знать о некоторых приложениях, которые можно использовать для управления и контроля сети. Приложение World Wide Web (WWW) используется через веб-браузеры, обращаясь к содержимому, доступному на веб-серверах. Хотя его часто называют приложением для конечного пользователя, вы можете использовать WWW для управления маршрутизатором или коммутатором. Вы включаете функцию веб-сервера в маршрутизаторе или коммутаторе и используете браузер для доступа к маршрутизатору или коммутатору. Система доменных имен (DNS) позволяет пользователям использовать имена для обозначения компьютеров, при этом DNS используется для поиска соответствующих IP-адресов. DNS также использует модель клиент / сервер, при этом DNS-серверы контролируются сетевым персоналом, а клиентские функции DNS являются частью большинства устройств, использующих TCP / IP сегодня. Клиент просто просит DNS-сервер предоставить IP-адрес, соответствующий заданному имени. Простой протокол управления сетью (SNMP) - это протокол прикладного уровня, используемый специально для управления сетевыми устройствами. Например, Cisco поставляет широкий спектр продуктов для управления сетью, многие из которых входят в семейство программного обеспечения для управления сетью Cisco Prime. Их можно использовать для запроса, компиляции, хранения и отображения информации о работе сети. Для запроса сетевых устройств программное обеспечение Cisco Prime в основном использует протоколы SNMP. Традиционно для перемещения файлов на маршрутизатор или коммутатор и обратно Cisco использовала упрощенный протокол передачи файлов (TFTP). TFTP определяет протокол для базовой передачи файлов - отсюда и слово "тривиальный". В качестве альтернативы маршрутизаторы и коммутаторы могут использовать протокол передачи файлов (FTP), который является гораздо более функциональным протоколом для передачи файлов. Оба хорошо работают для перемещения файлов на устройства Cisco и из них. FTP предоставляет гораздо больше функций, что делает его хорошим выбором для конечных пользователей. Клиентские и серверные приложения TFTP очень просты, что делает их хорошими инструментами в качестве встроенных частей сетевых устройств. Некоторые из этих приложений используют TCP, а некоторые - UDP. Например, Simple Mail Transfer Protocol (SMTP) и Post Office Protocol version 3 (POP3), которые используются для передачи почты, требуют гарантированной доставки, поэтому они используют TCP. Независимо от того, какой протокол транспортного уровня используется, приложения используют хорошо известный номер порта, чтобы клиенты знали, к какому порту пытаться подключиться. В таблице 2 перечислены несколько популярных приложений и их известные номера портов. Таблица № 2 Популярные приложения и их известные номера портов Теперь почитайте о том, как происходит полный процесс установления и прекращения TCP соединения.
img
Сетевое оборудование вендора Mikrotik является весьма любопытным и привлекательным продуктом в сегменте SOHO (Small office/home office). Соотношение цены, качества, функционала и стабильности обеспечивает все большее распространение небольших белых коробочек в офисах небольших компаний. Но спустя какое-то время беззаботного пользования, пользователи начинают жаловаться. Администратор, открыв Winbox, переходит в раздел System → Resources и видит, что загрузка процессора 100%: Не стоит волноваться. У нас есть решение. Все настройки и «траблшутинг» будем осуществлять с помощью Winbox. Настройка Firewall в Mikrotik Первым делом давайте проверим службу, которая больше всего «отъедает» ресурсов процессор. Для этого, перейдем в раздел Tools → Profile: Как видно из скриншота, львиную долю ресурсов нашего процессора занимает служба DNS. Давайте посмотрим, что происходит на уровне обмена пакетами на основном интерфейс ether1. Для этого воспользуемся утилитой Tools → Torch: Мы видим большое количество пакетов с различных IP – адресов на 53 порт. Наш Mikrotik отвечает на каждый из таких запросов, тем самым, нерационально используя ресурсы процессора и повышая температуру. Эту проблему надо решать. Судя по снятому дампу, пакеты приходят с частотой 10-20 секунд с одного IP – адреса. Добавим в наш Firewall два правила: Все IP – адреса, пакеты с которых приходят на 53 порт нашего Микротика будут помещаться в специальный лист с названием dns spoofing на 1 час. Каждый IP – адрес, с которого будет поступать запрос на 53 порт будет проверяться на предмет нахождения в списке dns spoofing . Если он там есть, мы будем считать, что это DNS – спуфинг с частотой реже чем раз в час и будем дропать данный пакет. Переходим к настройке. В разделе IP → Firewall → Filter Rules создаем первое правило нажав на значок «+». Во кладке General указываем следующие параметры: Chain = input - обрабатываем приходящие пакеты Protocol = UDP - нас интересуют пакеты, у которых в качестве транспорта используется UDP Dst. Port = 53 - портом назначения должен быть 53 порт, то есть DNS служба In. Interface = ether1 - проверка подвергаются все пакеты, которые приходят на интерфейс ether1, который смотрит в публичную сеть. Переходим во вкладку Action: Action = add src to address list - в качестве действия, мы будем добавлять IP – адрес источника в специальный лист Address List = dns spoofing - указываем имя листа, в который добавляем IP Timeout = 01:00:00 - добавляем на 1 час Нажимаем Apply и OK. Настроим второе правило, так же нажав на «+»: Как видно, настройки во вкладке General в данной вкладке идентичны первому правилу. Нажимаем на вкладку Advanced: Src. Address List= dns spoofing - указываем Микротику, производить проверку приходящего пакета на предмет нахождения в указанном листе Переходим во вкладку Action: Action = drop - если IP – адрес пакета есть в указанном списке, то дропаем этот пакет. После того, как оба правила стали активны переходи во вкладку IP → Firewall → Address Lists: Как видно, адреса стали добавляться в список на 1 час. Теперь давайте проверим загрузку процессора: Теперь загрузка процессора в пределах нормы. Проблема решена.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59