Как настроить собственный Syslog-сервер для 3CX
Введение
Опция Custom Syslog Server позволяет отправлять системные события и журналы аудита 3CX на любой стандартный сборщик syslog (такой как rsyslog, syslog-ng или Kiwi Syslog). Обычно это используется для серверов логирования, развернутых локально, или систем управления информационной безопасностью и событиями (SIEM) в локальной сети.
Шаг 1: Подготовка сервера Syslog
Перед настройкой 3CX убедитесь, что целевой сервер syslog готов к приему внешнего трафика.
- Определите IP/Hostname: запишите внутренний или внешний IP-адрес сервера логирования.
- Откройте порты на сетевом экране: убедитесь, что сетевой экран сервера разрешает входящий трафик от АТС на выбранном порту (обычно 514 для стандартного syslog).
- Включите удаленный прием: подтвердите, что служба syslog (например, rsyslog) настроена на "прослушивание" удаленных сообщений, поскольку многие из них по умолчанию принимают только локальные.
- Для начала ознакомьтесь с разделом “Установка Rsyslog на Debian” ниже.
Шаг 2: Настройка Remote Syslog в 3CX
- В консоли администратора 3CX перейдите в раздел “Admin” > “Integrations” > “Remote Syslog”.
- В выпадающем списке “Remote Logging Provider” выберите “Custom Syslog Server”.
- Syslog Server Address: введите IP-адрес или полное доменное имя (FQDN) вашего сервера.
- Port: введите номер порта, который прослушивает сервер (по умолчанию 514, но перепроверьте конфигурацию сервера).
- Transport Protocol: выберите протокол, требуемый сервером:
- UDP: наиболее распространенный для syslog; быстрый, но не гарантирует доставку.
- TCP: более надежный, так как подтверждает получение пакетов.
- TLS: шифрует журналы при передаче (требует действующего сертификата на принимающей стороне).
- mTLS: В случае выбора TLS, опционально загрузите требуемый клиентский сертификат и ключ, если сервер syslog настроен на дополнительную проверку АТС
- В разделе “Data to Export” выберите нужные журналы:
- System Alerts: критическое использование системных ресурсов и проблемы с работоспособностью (требует включения и настройки пороговых значений оповещений в Admin > System > Alerts).
- 3CX Alerts: специфичные для АТС события, такие как статус транка, остановленные службы или блокировка IP-адресов.
- Audit Logs: история изменений настроек, выполненных администраторами.
- Нажмите “Save” в верхней части страницы.
Шаг 3: Проверка подключения
- Нажмите кнопку Test в верхней части страницы Remote Syslog в 3CX. Система 3CX отправит стандартизированное тестовое сообщение на сервер.
- На сервере syslog проверьте файлы журналов (например, /var/log/syslog в Linux), чтобы подтвердить получение тестового сообщения. Обычно оно появляется с идентификатором 3CX Hello.
Например, если требуется отслеживать сообщения сервера syslog на предмет входящих сообщений от "mypbx.3cx-example.com":
root@mysyslog.3cx-example.com:~# tail -f /var/log/syslog | grep mypbx.3cx-example.com
2026-05-21T10:55:52+03:00 mypbx.3cx-example.com SyslogIntegrationTest 3CX says 'hello' to Custom
2026-05-21T11:05:47+03:00 mypbx.3cx-example.com EventLog {"id":257,"timestamp":"2026-05-21T08:05:47.0770000Z","message":"3CX Transcription Engine connection lost – transcription of voicemails and calls suspended","template":"3CX Transcription Engine connection lost – transcription of voicemails and calls suspended","params":[""],"source":"Web Manager","type":2,"event_id":50042,"group_name":"System wide"}
2026-05-21T11:16:50+03:00 mypbx.3cx-example.com SyslogIntegrationTest 3CX says 'hello' to Custom
Пользовательские параметры для расширенных развертываний
Для сред, где настройки по умолчанию не совсем подходят, в 3CX доступен параметр SYSLOG_MESSAGE_FORMAT.
Система 3CX поддерживает оба основных стандарта Syslog, и между ними можно переключаться. По умолчанию 3CX использует RFC5424 - современный, более структурированный формат, который предпочитает большинство актуальных SIEM-систем.
Если сборщик устарел или используется устаревший формат, установите параметр в RFC3164, и 3CX будет форматировать исходящие сообщения соответствующим образом. Для справки, вот как каждый формат выглядит на практике:
- RFC3164: <191>Dec 10 11:59:56 mypbx.3cx-example.com SyslogIntegrationTest: 3CX says 'hello' to SyslogServer
- RFC5424: <191>1 2026-01-15T14:06:50+02:00 mypbx.3cx-example.com SyslogIntegrationTest - - - 3CX says 'hello' to SyslogServer
В обоих случаях <191> — это приоритет сообщения, временная метка указана в формате UTC, mypbx.3cx-example.com — это FQDN АТС, а тег приложения указывает на источник события. Возможные теги приложения включают SyslogIntegrationTest, EventLog, AuditLog и Telemetry. Все, что следует далее, является полезной нагрузкой сообщения.
Установка Rsyslog на Debian
- Подключитесь по SSH к машине Debian и выполните следующие команды для установки и включения rsyslog
sudo apt update
sudo apt install rsyslog
sudo systemctl enable rsyslog
sudo systemctl start rsyslog
- Отредактируйте основной конфигурационный файл rsyslog
nano /etc/rsyslog.conf
- Добавьте или раскомментируйте следующие строки в зависимости от протокола, который требуется поддерживать, и сохраните файл (например, UDP/TCP)
# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")
# provides TCP syslog reception
module(load="imtcp")
input(type="imtcp" port="514")
- Перезапустите службу rsyslog, чтобы изменения вступили в силу:
sudo systemctl restart rsyslog
Версия документа
Последнее обновление документа 21 мая 2026
