Необходимые сетевые доступы

Выберите инструмент для разработки с AI-агентом:

  • используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
  • используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации

Коробочный Битрикс24 развернут в сети компании, а приложение — на своем сервере, поэтому запросы между ними проходят через корпоративный фаервол. Если нужное направление закрыто, приложение не устанавливается, а события не доходят до обработчика.

Для облачного Битрикс24 настраивать доступы не нужно: облако доступно из интернета. Правила ниже применяйте, когда в закрытом периметре находится коробочный Битрикс24, сервер приложения или обе стороны сразу.

Настройка самого фаервола, NAT и прокси остается за администратором сети.

Как проходят запросы

Участник

Роль в обмене

Коробочный Битрикс24

Обращается к внешним сервисам Битрикс24, принимает вызовы методов REST от приложения и отправляет события на сервер авторизации

Сервер авторизации oauth.bitrix24.tech

Выдает и продлевает токены приложения, принимает события от коробочного Битрикс24 и передает их в очередь. Подробнее — в статье Полный протокол авторизации OAuth 2.0

Серверы очередей mp_actions-*

Отправляют на сервер приложения вызовы событий, роботов и действий бизнес-процессов

Сервер приложения

Размещает код приложения и обработчики, принимает вызовы от серверов очередей

Событие идет от коробочного Битрикс24 на сервер авторизации, затем сервер очередей отправляет POST-запрос обработчику. Поэтому на стороне коробочного Битрикс24 отдельный доступ к серверам очередей не нужен: достаточно исходящего доступа к серверу авторизации. На стороне приложения нужны входящие запросы от серверов очередей. Механизм описан в разделе События.

Обработчики исходящих вебхуков вызываются с тех же серверов очередей — отдельных направлений для них открывать не нужно.

Схема меняется, если в коробочном Битрикс24 подключен свой провайдер авторизации. Тогда сервер авторизации Битрикс24 из схемы исключается, а события уходят прямым POST-запросом с самого коробочного Битрикс24. В этом случае доступ к серверу авторизации и к серверам очередей не нужен, а на сервере приложения открывают входящие запросы от коробочного Битрикс24.

Направления в таблицах указаны с точки зрения настраиваемого сервера: исходящие — запросы, которые он отправляет сам, входящие — запросы, которые он принимает. В строках с исходящими запросами адрес — это назначение, в строках с входящими — источник. Протокол https использует порт 443, http — порт 80.

Доступ рабочих мест сотрудников к серверу приложения здесь не рассматривается — правила ниже описывают только обмен между серверами.

Доступы на стороне коробочного Битрикс24

Адрес

Направление

Зачем нужен

Если доступ закрыт

oauth.bitrix24.tech

Исходящие https

Механизм приложений: установка, выдача и продление токенов, отправка событий в очередь

Приложение не устанавливается, токены не выдаются и не продлеваются, события не уходят обработчикам

*.1c-bitrix.ru

Исходящие http и https

Раздел «Разработчики», в котором создают интеграции и вебхуки

Раздел «Разработчики» не работает, интеграцию или вебхук создать не получится

http://www.1c-bitrix.ru/buy_tmp/b24_app.php

Исходящие http

Работа витрины приложений — списка приложений Битрикс24 Маркетплейса в коробочном Битрикс24. Адрес входит в маску *.1c-bitrix.ru, поэтому при доступе по маске отдельная запись не нужна

Витрина приложений не работает

Региональный домен www.bitrix24.*

Исходящие https

Названия событий в интерфейсе создания исходящих вебхуков

В интерфейсе создания исходящего вебхука не отображаются названия событий

Серверы приложений

Входящие https

Вызовы методов REST от приложения

Приложение не может обращаться к методам REST

Адрес сервера зависит от конкретного приложения. Для своего приложения это адрес вашего сервера. Для чужого — адрес из описания в Битрикс24 Маркетплейсе; если его там нет, запросите адрес у разработчика.

Адрес для названий событий

Выберите домен по региону своего Битрикс24.

Регион

Адрес

RU

https://www.bitrix24.ru/util/

BY

https://www.bitrix24.by/util/

KZ

https://www.bitrix24.kz/util/

Доступы на стороне сервера приложения

Адрес

Направление

Зачем нужен

Если доступ закрыт

oauth.bitrix24.tech

Исходящие https

Обмен авторизационного кода на токены и продление токенов

Приложение не получит и не продлит токены

Адрес коробочного Битрикс24

Исходящие https

Вызовы методов REST

Приложение не может работать с данными Битрикс24

https://repos.1c-bitrix.ru/webhook/app.json

Исходящие https

Список IP-адресов серверов очередей для правил фаервола

Список адресов не обновится, часть вызовов перестанет проходить

Группа серверов mp_actions-*, список IP-адресов

Входящие https

События, роботы и действия бизнес-процессов

Обработчик не получает события, вызовы роботов и действий бизнес-процессов

Обработчик должен принимать входящие запросы с типом данных application/x-www-form-urlencoded — в этом формате приходят данные вызова. Проверьте, что фаервол или прокси не отбрасывает такие запросы.

Открытый входящий доступ не подтверждает, что запрос пришел от Битрикс24, поэтому проверяйте в обработчике параметр application_token. Принимайте вызовы по https: по http токен и данные события идут открытым текстом. Порядок проверки описан в статье Рекомендации по безопасности в приложениях на REST API.

Как получить список IP-адресов серверов очередей

Входящие запросы приходят от динамической группы серверов, ее также называют scale-based. Размер группы меняется под нагрузкой, поэтому набор IP-адресов непостоянный. mp_actions-* — это шаблон имени группы: конкретные адреса в нем не заданы, поэтому правила фаервола строят по списку IP-адресов.

Актуальный список возвращает запрос:

curl https://repos.1c-bitrix.ru/webhook/app.json

Ответ, количество адресов в нем меняется:

{
    "nodes": ["195.208.184.200", "89.208.230.2"]
}

Адреса из массива nodes используйте в правилах фаервола для входящих соединений в корпоративной сети или на коробочной виртуальной машине.

Новый сервер попадает в список nodes за 5-10 минут до того, как с него начнут приходить вызовы. Опрашивайте адрес раз в 5-10 минут. Отправлять запрос чаще одного раза в минуту нельзя. Обновление правил по списку nodes поставьте на расписание.

Ранее компания «1С-Битрикс» указывала конкретные IP-адреса, которые нужно было открывать для запросов. Сейчас фиксированный список IP-адресов используют только для серверов очередей и берут его из nodes. Правила для остальных направлений задают по доменным именам.

Как проверить доступ

Исходящий доступ проверьте с сервера, на котором настраивали правила. Запрос должен вернуть ответ сервера, а не ошибку соединения или таймаут.

curl -I https://oauth.bitrix24.tech/

Успешный ответ начинается со строки статуса:

HTTP/2 200

Сообщения Connection timed out и Connection refused означают, что доступ закрыт.

Входящий доступ к обработчику проверьте с внешнего хоста, который не входит в сеть компании. Параметр -d отправляет запрос с типом данных application/x-www-form-urlencoded — в таком же формате приходят вызовы от серверов очередей. Обработчик должен ответить, а не оборвать соединение.

curl -d "test=1" https://example.com/handler.php

Продолжите изучение