Обмен технологиями

[Эксплуатация и обслуживание безопасности Linux] rsyslog

2024-07-08

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

rsyslog

1. Что такое rsyslog

rsyslog — это высокопроизводительныйобработчик журнала , способный получать, обрабатывать и пересылать сообщения журнала. Он широко используется в системах UNIX и Linux для ведения журнала и управления системой.

2. Основные функции rsyslog

  1. высокая производительность: Способен обрабатывать большое количество сообщений журнала, подходит для крупномасштабных задач управления журналами.
  2. Модульная архитектура: поддерживает различные модули ввода и вывода и может гибко расширять функции.
  3. Фильтрация и перезапись журналов: поддерживает сложную фильтрацию журналов и правила перезаписи для обеспечения точного контроля потока журналов.
  4. Поддержка нескольких протоколов: Возможность обработки нескольких протоколов передачи журналов, таких как TCP, UDP, TLS и т. д.
  5. безопасность: поддерживает зашифрованную передачу и аутентификацию для обеспечения безопасности сообщений журнала.

3. Базовая настройка rsyslog

Файл конфигурации rsyslog обычно находится в папке /etc/rsyslog.conf или/etc/rsyslog.d/ Под содержанием. Его файл конфигурации имеет структуру «правила-действия».

Заказ:

systemctl status rsyslog.service

Пример конфигурации

# 基本格式
# :规则:动作

# 接收本地日志并写入文件
*.* /var/log/all.log

# 接收远程日志(UDP)并写入文件
$ModLoad imudp
$UDPServerRun 514
*.* /var/log/remote.log

# 接收远程日志(TCP)并写入文件
$ModLoad imtcp
$InputTCPServerRun 514
*.* /var/log/remote_tcp.log

# 基于消息优先级的日志过滤
authpriv.* /var/log/secure.log

# 基于消息内容的日志过滤
:msg, contains, "error" /var/log/error.log

4. Приоритет журнала и возможности

rsyslog использует возможности и приоритеты для классификации и обработки сообщений журнала.

средство

Общие удобства включают в себя:

  • auth, authpriv: сообщения, связанные с аутентификацией и безопасностью.
  • cron: сообщения, связанные с запланированными задачами
  • демон: сообщения, связанные с фоновым процессом системы
  • kern: сообщения, связанные с ядром.
  • почта: сообщения, связанные с почтовой системой.
  • syslog: сообщения, связанные с обработкой внутреннего журнала.

приоритет

Приоритет от высокого к низкому включает в себя:

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

5. Общие команды

  • Запустить rsyslogsudo systemctl start rsyslog
  • Остановить rsyslogsudo systemctl stop rsyslog
  • Перезапустить rsyslogsudo systemctl restart rsyslog
  • Проверьте статус rsyslogsudo systemctl status rsyslog
  • Перезагрузить конфигурациюsudo systemctl reload rsyslog

6. Расширенные функции

  • Пересылка журналов: Переслать сообщения журнала на удаленный сервер.
  • Перезапись журнала: Изменить содержимое сообщения журнала в соответствии с правилами.
  • Архив журналов: Архивировать сообщения журнала для экономии места.
  • Анализ журналов: Интеграция сторонних инструментов для анализа и визуализации журналов.

Пример конфигурации

  1. Конфигурация клиента
    На клиентском сервере настройте rsyslog для пересылки сообщений журнала на централизованный сервер журналов:

    # 配置远程日志传输(UDP)
    *.* @logs.example.com:514
    
    # 配置远程日志传输(TCP)
    *.* @@logs.example.com:514
    
  2. конфигурация сервера
    На централизованном сервере журналов настройте rsyslog для получения сообщений журнала от клиентов:

    # 加载输入模块
    $ModLoad imudp
    $UDPServerRun 514
    
    $ModLoad imtcp
    $InputTCPServerRun 514
    
    # 将接收到的日志写入文件
    *.* /var/log/centralized.log