Гид по технологиям

Интеграция rsyslog с Loggly по TLS: пошаговая настройка

• 7 min read • Логирование • Обновлено 15 Nov 2025
rsyslog → Loggly по TLS: полная настройка
rsyslog → Loggly по TLS: полная настройка

Схема интеграции rsyslog и Loggly для безопасной отправки логов

Быстрые ссылки

  • Установка rsyslog
  • Добавление TLS сертификатов Loggly
  • Проверка прав рабочего каталога
  • Настройка параметров Loggly в rsyslog
  • Конфигурация rsyslog для отправки в Loggly
  • Решение проблем
  • Резюме и контрольные проверки

Зачем отправлять логи в Loggly

В Linux многие приложения отправляют логи в системный демонт syslog. В практиках безопасности рекомендуется дублировать и централизовать логи в отдельной системе — например, в Loggly (SaaS) — для резервного копирования, контроля целостности и удобной аналитики.

Основные преимущества:

  • Резервное копирование критичных логов
  • Возможность проверить целостность и обнаружить изменения
  • Консолидация логов с нескольких хостов для централизованного поиска и оповещений

Функции Loggly, релевантные для этой интеграции:

  • Мониторинг облачных и локальных систем, логов приложений
  • Интеграция с внешними сервисами (Slack, GitHub, PagerDuty)
  • Анализ и визуализация данных (графики, KPI)
  • Деплой без агента — rsyslog отправляет логи напрямую

Понятные термины

  • TLS: протокол шифрования каналов связи (обеспечивает защищённую передачу логов).
  • Customer token: уникальный токен, присваиваемый источнику логов в Loggly для идентификации клиента.

1. Установка rsyslog

Во многих дистрибутивах rsyslog уже установлен. В примерах ниже — Ubuntu (в руководстве использована версия, актуальная для Ubuntu 18.04). Если в репозиториях не последняя версия, добавим PPA от Adiscon.

Важно: инструкция показывает установку из PPA для актуальной ветки rsyslog.

Добавление репозитория rsyslog (Adiscon PPA)

apt-get update && apt-get install -y software-properties-common
add-apt-repository -y ppa:adiscon/v8-stable

Установка rsyslog и поддержки GnuTLS

Установим основной пакет и модуль для TLS (rsyslog-gnutls).

apt-get update
apt-get install rsyslog
apt-get install rsyslog-gnutls

2. Добавление TLS сертификатов Loggly

Перед настройкой TLS нужно скачать сертификат центра сертификации Loggly и поместить его в доступный каталог.

sudo mkdir /etc/rsyslog.d/keys/ca.d
wget -O /etc/rsyslog.d/keys/ca.d/logs-01.loggly.com_sha12.crt 

Важно: путь к сертификату понадобится в конфигурации rsyslog (см. ниже).

3. Проверка прав рабочего каталога rsyslog

Иногда права в /var/spool/rsyslog настроены неверно. Убедитесь, что каталог принадлежит пользователю syslog и имеет корректные права.

sudo chown -R syslog:adm /var/spool/rsyslog
sudo chmod -R 644 /var/spool/rsyslog

Примечание: для директорий обычно требуется режим 0755; выше команда устанавливает 644 рекурсивно — при необходимости скорректируйте для подкаталогов (dirCreateMode и fileCreateMode в конфигурации). Если вы хотите явно задать права директорий и файлов отдельно, выполните дополнительную команду для директорий.

4. Настройка глобальных параметров rsyslog для Loggly

Ниже приведён пример конфигурации в новом синтаксисе rsyslog. Ключевым моментом являются параметры defaultNetstreamDriverCAFile и defaultNetstreamDriver — они указывают на использование GnuTLS и на файл CA.

#################
#### MODULES ####
#################

module( load="imuxsock" )
module( load="imklog" )
module( load="builtin:omfile"
        fileOwner="syslog"
        fileGroup="adm"
        fileCreateMode="0644"
        dirOwner="syslog"
        dirGroup="adm"
        dirCreateMode="0755"
)
module( load="impstats"
        interval="600"
        severity="7"
        log.syslog="off"
        log.file="/var/log/rsyslog_stats.log"
)

###########################
#### GLOBAL DIRECTIVES ####
###########################

global (
    maxMessageSize="64k"
    defaultNetstreamDriverCAFile="/etc/rsyslog.d/keys/ca.d/logs-01.loggly.com_sha12.crt"
    defaultNetstreamDriver="gtls"
    workDirectory="/var/spool/rsyslog"
)

#
# Include all config files in /etc/rsyslog.d/
#
include(file="/etc/rsyslog.d/*.conf")

Важно: если вы управляете хостами с разными дистрибутивами, проверьте совместимость модулей и путей перед развёртыванием.

5. Получение customer token в Loggly

После входа в Loggly создайте customer token: Source Setup → Customer Tokens. Интерфейс может отличаться в зависимости от версии Loggly; ниже — скриншоты старого и нового интерфейсов.

Скриншот: Source Setup > Customer Tokens в старом интерфейсе Loggly

Скриншот: Добавление описания к customer token в интерфейсе Loggly

Скопируйте сгенерированный токен — он понадобится в шаблоне отправки (см. далее). Рекомендуется дать токену описательное имя.

6. Конфигурация rsyslog для отправки в Loggly

Создайте файл конфигурации, например /etc/rsyslog.d/22-remote.conf. Номер 22 служит только для порядка загрузки файла; выбирайте свой порядок в соответствии с существующими файлами.

template(
    name="LogglyFormat"
    type="string"
    string="<%pri%>%protocol-version% %timestamp:::date-rfc3339% %HOSTNAME% %app-name% %procid% %msgid% [ca35d899-0232-4888-a8d5-118fbf5caf8d tag=\"RsyslogTLS\"] %msg%\n"
)

# Send all Syslog Messages to Remote
action(
    type="omfwd"
    protocol="tcp"
    target="logs-01.loggly.com"
    port="6514"
    template="LogglyFormat"
    StreamDriver="gtls"
    StreamDriverMode="1"
    StreamDriverAuthMode="x509/name"
    StreamDriverPermittedPeers="*.loggly.com"
    ResendLastMSGOnReconnect="on"
    queue.spoolDirectory="/var/spool/rsyslog"
    queue.filename="queue_sendToLoggly"
    queue.size="5000"
    queue.dequeuebatchsize="300"
    queue.highwatermark="4500"
    queue.lowwatermark="3500"
    queue.maxdiskspace="1g"
    queue.saveonshutdown="on"
    queue.type="LinkedList"
)

Пояснения:

  • target и port: адрес и порт сервиса Loggly для TLS (logs-01.loggly.com:6514).
  • StreamDriverAuthMode и StreamDriverPermittedPeers: проверка имени сертификата сервера.
  • Параметры очереди защищают от потери логов при временных проблемах с сетью.
  • Шаблон template задаёт формат передачи; убедитесь, что в нём присутствует информация для корректной категоризации в Loggly.

После сохранения перезапустите службу:

sudo service rsyslog restart

7. Решение проблем и отладка

Если появляются проблемы — чаще всего они связаны с правами, сертификатами или параметрами очереди.

  • Логи rsyslog: /var/log/rsyslog.log (проверьте ошибки при старте и TLS handshakes).
  • Включите детальную отладку, добавив в rsyslog.conf:
$DebugFile /var/log/rsyslog_debug.log
$DebugLevel 2
  • Проверьте, что файл CA доступен и корректен: cat /etc/rsyslog.d/keys/ca.d/logs-01.loggly.com_sha12.crt
  • Убедитесь, что время на хосте синхронизировано (NTP) — расхождение времени может приводить к проблемам с валидацией сертификатов и корректностью меток времени в логах.
  • Проверьте очередь rsyslog (size, maxdiskspace). Если очередь растёт — проверьте сетевое соединение до logs-01.loggly.com:6514 и задержки отправки.

Важно: если вы используете брандмауэр, откройте исходящий TCP порт 6514.

8. Критерии приёмки

Перед переводом в продакшен проверьте следующие пункты:

  • Логи с тестового хоста видны в интерфейсе Loggly и соответствуют ожидаемым меткам.
  • TLS-соединение установлено (в логах rsyslog нет ошибок TLS/handshake).
  • Очередь rsyslog не растёт и не достигает highwatermark.
  • В копии сообщения присутствует customer token или иная метка, необходимая для источников в Loggly (если вы помещаете токен в поле сообщения).
  • Временные метки корректны и синхронизированы с NTP.

9. Контрольные списки для ролей

Системный администратор:

  • Установить пакеты rsyslog и rsyslog-gnutls.
  • Скачать сертификат CA и поместить в /etc/rsyslog.d/keys/ca.d.
  • Проверить права на /var/spool/rsyslog.
  • Перезапустить rsyslog, проверить статус.

DevOps/Инженер по доставке логов:

  • Настроить шаблон отправки и убедиться в наличии токена в структуре сообщения.
  • Провести тесты с разными уровнями логов (info, error, warning).
  • Наблюдать метрики очереди и задержки доставки.

Специалист по безопасности:

  • Проверить, что в логах не передаётся личная или конфиденциальная информация без фильтрации.
  • Настроить удержание и ротацию логов согласно политике (retention).
  • Проверить шифрование канала и валидацию сертификата сервера.

10. Альтернативные подходы и когда это не подходит

Альтернативы для централизованной отправки логов:

  • syslog-ng: альтернатива rsyslog с похожими возможностями TLS и форматов.
  • Filebeat → Logstash → Loggly/Elasticsearch: более гибкий pipeline с фильтрацией и трансформацией.
  • Агентные решения (например, официальный агент Loggly, если доступен): дают дополнительные возможности и упрощённую настройку.

Когда интеграция rsyslog → Loggly может быть не лучшим выбором:

  • Нужна сложная трансформация/маркировка сообщений — лучше Logstash.
  • Требуются локальные фильтры PII до отправки — возможна предварительная обработка агентом.
  • Ограничения корпоративной политики безопасности запрещают внешние SaaS-сервисы.

11. Рекомендации по безопасности и соответствию (GDPR и др.)

  • Минимизируйте отправку PII: фильтруйте или маскируйте данные на источнике перед отправкой.
  • Шифруйте транспорт (TLS) — это мы обеспечиваем с помощью rsyslog-gnutls.
  • Ограничьте доступ к токенам Loggly, храните их как секреты и при возможности внедрите ротацию токенов.
  • Проверьте сроки хранения логов в Loggly и настройте политику retention в соответствии с требованиями соответствия.

12. Минимальная методология развёртывания (пошаговая)

  1. Настройте и протестируйте на стенде: установите rsyslog, скачайте сертификат, настройте конфигурацию.
  2. Проверка TLS: убедитесь, что handshake проходит и сертификат валиден.
  3. Отправьте тестовые сообщения и проверьте их появление в Loggly.
  4. Нагрузочное тестирование: проверьте поведение очереди при пиковых нагрузках.
  5. Перевод в продакшен постепенно: включайте хосты по группам.
  6. Наблюдение в первые 24–72 часа: контролируйте метрики очередей и задержки доставки.

13. Краткое руководство по откату

Если после развёртывания появились ошибки или потеря логов:

  • Верните предыдущую конфигурацию в /etc/rsyslog.d/, затем перезапустите rsyslog.
  • Если очередь растёт — временно отключите отправку (комментирование action) и записывайте логи локально до устранения проблемы.
  • Удалите или смените проблемный сертификат и проверьте цепочку доверия.

14. Глоссарий (в одну строку)

  • rsyslog: мощный syslog-демон для Linux с поддержкой модулей и TLS.
  • Loggly: облачный сервис для сбора, анализа и визуализации логов.
  • CA: центр сертификации, выпускающий корневые сертификаты.
  • Customer token: уникальный идентификатор источника логов в Loggly.

Ресурсы и ссылки

  • Путь к сертификату и конфигурации: /etc/rsyslog.d/keys/ca.d и /etc/rsyslog.d/*.conf
  • Порт Loggly для TLS: 6514

Итог

Интеграция rsyslog с Loggly по TLS даёт надёжную, агент‑свободную передачу логов. Ключевые шаги: установка rsyslog-gnutls, загрузка CA-сертификата Loggly, корректная конфигурация шаблона и action, проверка очереди и перезапуск службы. Следуйте чек-листам, выполняйте постепенное развёртывание и соблюдайте требования безопасности при работе с PII.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро