Просмотр истории входа в linux. кто и когда входил в систему

What’s Syslog?

Syslog is a standard for creating and transmitting logs. The word “syslog” can refer to any of the following.

  1. The syslog service, which receives and processes syslog messages. It listens for events by creating a socket located at , which applications can write to. It can write messages to a local file or forward messages to a remote server. There are different syslog implementations including rsyslogd and syslog-ng.
  2. The syslog protocol (RFC 5424), which is a transport protocol that specifies how to transmit logs over a network. It is also a data format defining how messages are structured. By default, it uses port 514 for plaintext messages and port 6514 for encrypted messages.
  3. A syslog message, which is any log formatted in the . A syslog message consists of a standardized header and message containing the log’s contents.

Since syslog can forward messages to remote servers, it’s often used to forward system logs to log management solutions such as SolarWinds Loggly and SolarWinds Papertrail.

A note about systemd journal on modern Linux distros

systemd-journald is a system service on modern Linux distro that comes with systemd. It collects and stores logging data. In addition, it creates and maintains structured, indexed journals based on logging information received from various sources such as Linux Kernel log messages via kmsg. Therefore, we need to use the journalctl command to query the contents of the systemd-journald.

journalctl command examples

Without any arguments, all collected logs are shown unfiltered as follows:
View all boot messages:
Want to see kernel logs from previous boot? Try:

See log by systemd unit or sevice

Display a live log display from a system service apache.service or nginx.service:
The -u switch can be used multiple time to save typing at the CLI. For example:
We can follow log in real time. Like tail -f /var/log/nginx/foo.log:
Only display last 10 log entries:

Filter log files (grep like syntax)

We can filter output to entries where the MESSAGE= field matches the specified regular expression. PERL-compatible regular expressions are used. For instance:

Click to enlarge

--case-sensitive

Ротация логов Linux

Запись логов происходит непрерывно и размер файлов постоянно растет. Механизм ротации обеспечивает автоматическое архивирование старых журналов и создание новых. В зависимости от правил, обработка журналов может выполняться ежедневно, еженедельно, ежемесячно или при достижении файлом определенного размера. По мере создания новых архивов, старые могут быть просто удалены или предварительно отправлены по электронной почте. Ротация выполняется утилитой logrotate. Основная конфигурация находится в файле “/etc/logrotate.conf”, также обрабатывается содержимое файлов в директории “/etc/logrotate.d/”

Новые правила можно записывать в основной файл конфигурации, но более правильным будет создание отдельного файла в директории “/etc/logrotate.d/” По умолчанию в директории уже содержится несколько файлов.

Рассмотрим файл “/etc/logrotate.d/rsyslog”, который содержит правила ротации для журналов службы rsyslog.

В начале правила указывается путь к файлу журнала, затем в фигурных скобках перечисляются директивы.

  • rotate 7 — необходимо постоянно хранить 7 файлов
  • daily — ежедневно будет создаваться новый файл
  • compress — старые файлы необходимо архивировать.

На скриншоте видно, что в каталоге “/var/log/” находится основной журнал “syslog” и семь архивов, что соответствует правилам ротации.

Более подробное описание по настройке утилиты logrotate можно найти в мануале, выполнив команду “man logrotate”

6 LOGalyze

LOGalyze был коммерческим продуктом, который недавно стал инструментом с открытым исходным кодом.

Хотя я не смог реализовать проект на GitHub, они сделали установщик Windows и весь исходный код загружаемым.

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

LOGalyze – это относительно гибкое и мощное предложение, которое отлично подойдет для развертываний в одной системе, которые стремятся объединить ведение журналов из известных источников, таких как Postfix, Apache и т. д. и выводить их в форматах CSV, PDF, HTML или аналогичных.

Да, он не делает все, но поскольку это был коммерческий продукт в свое время, он делает это довольно хорошо.

8 Logwatch

Я уверен, что среди нас есть те, кто не хочет, чтобы вся церемония была связана с «единой», «централизованной» системой ведения журналов.

Их бизнес базируется на отдельных серверах, и они ищут что-то быстрое и эффективное для просмотра своих файлов журналов.

Ну тогда, скажи привет Logwatch.

После установки LogWatch может сканировать системные журналы и создавать отчеты нужного вам типа.

Это несколько устаревшее программное обеспечение (читай «надежное»), хотя оно было написано на Perl.

Итак, вам понадобится Perl 5.6+ на вашем сервере для его запуска.

У меня нет скриншотов, которыми можно поделиться, потому что это чисто командная строка, демонизированный процесс.

Если вы наркоман CLI и любите стиль старой школы, вам понравится Logwatch!

Step 4 — Viewing Rotating Log Files

The size of log files must be controlled because it keeps growing over time. Each system has limited resources, and too large logs lead to performance and memory problems. Linux solves this problem with a concept called rotating logs. Rotation continuously repeats the following actions:

  1. Instead of deleting the log file, Linux changes the file name to a name with a version suffix and creates a new one. The log file has multiple old back-ups. Optionally, these backups are compressed.
  2. When the count of backup files reaches a specified number, the system deletes the oldest.

Let’s view an example of Linux rotating files. Execute command with following options:

The option formats the output in a long listing including various metadata. The option prints file in a human-readable form, and the option sorts the output listing by modification time (newest first). The parameter specifies to view all files at directory that starts with prefix .

You’ll see the program’s output appear on the screen:

The output shows all version of . Typically, it is the biggest log file because as explained earlier, this log stores basically every event of the system. The older versions are labelled with version suffix (e.g. is the oldest syslog backup).

You can see that the backups are compressed (the suffix means that the file is compressed by the standard GNU zip compression algorithm). As you can observe, these files grow to the size of gigabytes (in our example the biggest is 3.5 GB large). At last, you can view that these files cover only a time interval of six days.

Настройка

Для приложение, ротация логов настраивается в отдельных файлах, расположенных по пути /etc/logrotate.d/ (во FreeBSD — /usr/local/etc/logrotate.d/).

К примеру, нам необходимо настроить ротацию лога для logstash-forwarder. Создаем файл со следующим содержимым:

vi /etc/logrotate.d/logstash

/var/log/logstash-forwarder/* {
    rotate 30
    size=10M
    missingok
    notifempty
    daily
    compress
    delaycompress
    maxage 30
    create 0644 root root
    postrotate
        /usr/bin/systemctl restart logstash-forwarder
    endscript
}

* где:

  • rotate 30 — хранить последние 30 ротированных файлов. Остальные удалять.
  • size=10M — пока размер лог-файла не превысит 10 мегабайт, он не будет ротироваться.
  • missingok — если файла не существует, не выкидывать ошибку.
  • notifempty — если файл пустой, не выполнять никаких действий.
  • daily — делать ротацию каждый день.
  • compress — сжимать ротированные файлы.
  • delaycompress — сжимать только предыдущий журнал. Позволяет избежать ошибок, связанных с отсутствием доступа к используемому файлу.
  • maxage 30 — хранить ротированные файлы за последние 30 дней. Остальные удалять.
  • create 0644 root root — создать новый лог-файл после ротирования.
  • postrotate … endscript — скрипт, который необходимо выполнить после чистки лога.

* /var/log/logstash-forwarder/* — путь к файлу, который нужно ротировать. * указывает, что нужно чистить все файлы, которые расположены в каталоге /var/log/logstash-forwarder.
* напомню, что во FreeBSD, путь будет /usr/local/etc/logrotate.d/logstash.

При настройке необходимо проверять работу сервиса после ротации лога. Некоторые службы могут перестать работать без лог-файла. В данном случае, необходимо создавать новый (create). Также, в некоторых случаях, сервис необходимо перезапускать, так как при создании нового файла меняется его дескриптор.

Шпаргалка по journalctl

Вывод journalctl представляет из себя цельный список всех сохраненных сообщений. Если вы запустите команду journalctl без параметров, то получите самые первые сообщения, которые были сохранены. В моем случае это данные за 13 января:

Чтобы найти именно то, что вам нужно, необходимо научится перемещаться по этому списку. Формат вывода лога довольно простой:

янв 13 20:55:55 sergiy-pc kernel: Linux version 4.15.0-43-generic

  • янв 13 20:55:55 — дата и время события;
  • sergiy-pc — хост, на котором произошло событие;
  • kernel — источник события, обычно это программа или сервис. В данном случае ядро;
  • Linux version 4.15.0-43-generic — само сообщение.

Давайте перейдем к примерам фильтрации и перемещения.

1. Просмотр логов сервисов

Самый частый случай использования journalctl — это когда вы пытаетесь запустить какой-либо сервис с помощью systemd, он не запускается и systemd выдает вам такое сообщение подобного содержания: Failed to start service use journalctl -xe for details. Система сама предлагает вам какую команду надо выполнить:

Как вы помните из опций, эта команда отображает последние сообщения в журнале и добавляет к ним дополнительную информацию, если она есть. Учитывая, что последнее, что мы делали — был наш сервис, то здесь будут сообщения от него и вы быстро сможете понять почему он не запускается.

Чтобы отфильтровать сообщения только от определенного сервиса можно использовать опцию -u. Например:

2. Просмотр логов в режиме tail

С помощью опции -f можно указать утилите, что необходимо выводить новые сообщения в реальном времени:

В этом режиме less не поддерживается, поэтому для выхода нажмите сочетание клавиш Ctrl+C.

3. Просмотр логов загрузки

В логе journalctl содержатся все логи, в том числе и логи загрузки. Для того чтобы открыть лог последней загрузки используйте опцию -b:

Посмотреть список всех сохраненных загрузок можно командой:

Теперь, чтобы посмотреть сообщения для нужной загрузки используйте её идентификатор:

4. Фильтрация по дате

С помощью опции —since вы можете указать дату и время, начиная с которой нужно отображать логи:

Опция —until помогает указать по какую дату вы хотите получить информацию:

Или сразу скомбинируем две эти опции чтобы получить логи за нужный период:

Кроме даты в формате YYYY-MM-DD в этих опциях можно использовать такие слова, как yesterday, today, и tomorrow. Также допустимы конструкции 1 day ago (один день назад) или 3 hours ago (три часа назад). Ещё можно использовать знаки + и -. Например -1h30min будет означать полтора часа назад.

Если вы хотите посмотреть только сообщения ядра используйте опцию -k:

6. Настройка формата вывода

По умолчанию journalctl выводит информацию с помощью утилиты less, в которой вы можете её удобно листать и просматривать. Но формат вывода можно изменить:

  • short — используется по умолчанию;
  • verbose — также, как и short, только выводится намного больше информации;
  • json — вывод в формате json, одна строка лога в одной строке вывода;
  • json-pretty — форматированный вывод json для более удобного восприятия;
  • cat — отображать только сообщения, без метаданных.

Чтобы указать нужный формат используйте опцию -o. Например:

Или:

7. Очистка логов

Сначала нужно посмотреть сколько ваши логи занимают на диске. Для этого используйте такую команду:

Чтобы уменьшить размер лога можно использовать опцию —vacuum-size. Например, если вы хотите, чтобы ваши файлы журналов занимали на диске не более 2 Гб, выполните команду:

Теперь старые логи будут удалены, пока общий объем хранилища не будет составлять 2 гигабайта. Также можно удалять логи по времени. Для этого используется опция —vacuum-time. Например, оставим только логи за последний год:

Понимание ролей rsyslogd и journald

journalctlrsyslogd добавляет к нему некоторые сервисы. В частности, он заботится о записи данных журнала в определенные файлы (которые будут постоянными между перезагрузками) и позволяет настраивать удаленные журналы и серверы журналов.

  • Файлы в /var/log, которые пишутся rsyslogd, должны контролироваться.
  • Команда journalctl может использоваться для получения более подробной информации из журнала.
  • Для краткого обзора последних значимых событий, которые были зарегистрированы модулями systemd через journald, администраторы могут использовать команду systemctl status <unit>. Эта команда показывает состояние сервисов, а также последние пару строк, которые были логированы. В листинге 1 показан пример, в котором эта команда четко указывает, что пошло не так при запуске сервиса.

Чтение лог-файлов

journalctlless

log-файл

Объяснение

 /var/log/messages

Наиболее часто используемый файл журнала, это общий файл журнала, в который записывается большинство сообщений.

 /var/log/dmesg

Содержит сообщения журнала ядра.

 /var/log/secure

Содержит сообщения, связанные с аутентификацией.

 /var/log/boot.log

Сообщения, связанные с запуском системы.

 /var/log/audit/audit.log

Содержит сообщения аудита. SELinux пишет в этот файл.

 /var/log/maillog

Сообщения, связанные с почтой.

 /var/log/samba

Предоставляет файлы журналов для сервиса Samba

Обратите внимание, что по умолчанию Samba не управляется через rsyslog, а записывается непосредственно в каталог /var/log.

 /var/log/sssd

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

 /var/log/cups

Содержит сообщения, сгенерированные службой печати CUPS.

 /var/log/httpd/

Каталог, содержащий лог-файлы, которые записываются веб-сервером Apache. Обратите внимание, что Apache пишет сообщения в эти файлы напрямую, а не через rsyslog.

Понимание содержимого лог-файла

Дата и время: каждое сообщение начинается с отметки времени. В целях фильтрации метка времени записывается как военное время.

Хост: хост, с которого отправлено сообщение

Это важно, потому что rsyslogd также может быть настроен для обработки удаленных логов.

Имя службы или процесса: имя сервиса или процесса, сгенерировавшего сообщение.

Содержимое сообщения: содержимое сообщения, которое содержит точное сообщение, которое было зарегистрировано.

lesstail -ftail -f /var/log/messages

Step 1 — Finding Linux System Logs

The Ubuntu system stores all system logs into directory . Let’s look at the most essential log files, their meaning, and what they store:

  • stores all records about any global activity in the system. Basically, every event that happens goes into this log.
  • stores all security-related actions. Those include login, logout, and root user activity.
  • stores events of the kernel like info, warning, and errors. Those logs are especially useful for custom kernels.
  • stores system startup info.

The directory also contains various application logs. For example, if your distribution contains Apache or MySQL then their logs are also stored there.

You can view content of this directory with the following command:

The utility list contents of the directory into your terminal:

The output shows that there is a lot of various log files with several different suffixes. We will examine their meaning later in the tutorial. For now you should recognize files , , and because we already know them. These system logs that are on every Ubuntu distribution.

Since the command was executed on Ubuntu with installed Apache application, you can see that there is also a directory called which holds log files for this application.

Основные логи

В основных логах, необходимых для работы Linux, содержится наиболее значительный объем информации о текущем состоянии системы. Их можно условно разделить на четыре категории:

   системные лог-файлы;

   лог-файлы событий;

   лог-файлы служб;

   лог-файлы приложений.

Многие из этих лог-файлов располагаются в каталоге var/log. Наиболее распространенными логами являются:

   /var/log/boot.log — журнал загрузки системы (в нем хранится вся информация, связанная с этапами загрузки ОС);

   /var/log/kern.log — журнал ядра (в нем хранятся сообщения и предупреждения, поступающие непосредственно из );

   /var/log/syslog или /var/log/messages — журналы, в которых хранится информация об общей активности в системе (включая сообщения этапа загрузки);

   /var/log/auth.log или /var/log/secure — журналы аутентификации и безопасности (в них хранятся записи обо всех попытках входа в систему, включая как успешные, так и неудачные);

   /var/log/debug — журнал отладки (в нем хранится подробная отладочная информация системы и приложений);

   /var/log/daemon.log — журнал демонов (содержит информацию о событиях, связанных с различными запущенными в системе демонами/службами);

   /var/log/maillog или /var/log/mail.log — журналы почтовых серверов (в них хранится информация, относящаяся к почтовым серверам и архивированию электронных писем);

   /var/log/cron — журнал, в котором хранится информация о запланированных задачах (заданиях cron);

   /var/log/faillog — информация о неудачных входах в систему. Журнал полезен для изучения потенциальных нарушений безопасности, таких как: взломы учетных записей, попытки перебора паролей и пр.;

   /var/log/dmesg — журнал сообщений драйверов устройств. Просмотреть содержимое данного журнала можно с помощью команды . Стоит заметить, что при достижении своего предела, старые сообщения перезаписываются более новыми.

   /var/log/Xorg.x.log — журнал сообщений X-сервера.

В зависимости от выбранного дистрибутива, вы можете встретить следующие лог-файлы менеджеров пакетов:

   /var/log/dpkg.log — журнал пакетов, установленных через утилиту dpkg в системах на основе .

   /var/log/yum.log — журнал пакетов, установленных через утилиту yum в системах на основе .

   /var/log/emerge.log — журнал пакетов (ebuild), установленных через утилиту emerge в Gentoo Linux.

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

   /var/log/utmp и /var/log/utmp — журналы учета входов пользователей в систему. Для просмотра сообщений применяется команда , например:

   /var/log/lastlog — журнал с информацией о последних входах пользователей. Для просмотра сообщений применяется команда :

2: Установка Certbot и регистрация сертификатов

Let’s Encrypt – это центр сертификации, который выдает бесплатные сертификаты TLS. Эти сертификаты позволяют компьютерам шифровать данные, которые они передают между собой, а также проверять подлинность друг друга. Эти сертификаты позволяют защитить ваши данные в Интернете с помощью HTTPS. Такие сертификаты могут использоваться любым другим приложением, которому нужен такой же уровень безопасности. Процесс регистрации сертификатов одинаков, независимо от того, для чего вы их используете.

Сейчас мы установим служебную программу certbot и используем ее для регистрации сертификатов. Также эта утилита автоматически обновит сертификаты по истечении срока их действия. В нашем случае процесс регистрации сертификатов на клиенте и сервере одинаков. Вам нужно только изменить имя хоста, чтобы оно соответствовало хосту, на котором вы запускаете команду регистрации.

Сначала включите репозиторий universe, поскольку утилита certbot находится в этом репозитории Ubuntu.

Примечание: Если даже у вас уже включен universe, выполнение этих команд не повлияет на вашу систему, их можно спокойно запускать.

Установите certbot на оба хоста:

Теперь, когда вы установили certbot, выполните следующую команду, чтобы зарегистрировать сертификаты на клиенте и сервере:

В этой команде мы использовали следующие параметры:

certonly: зарегистрирует сертификат, не внося никаких других изменений в систему.
–standalone: ​​использует встроенный веб-сервер certbot для проверки запроса сертификата.
–agree-tos: автоматически принимает условия использования Let’s Encrypt.
–email your_email: это адрес электронной почты, который Let’s Encrypt будет использовать для отправки уведомлений об истечении срока действия сертификата и другой важной информации.
-d your_domain: имя хоста, для которого предназначен сертификат. Это значение должно соответствовать системе, в которой вы его запускаете.. Когда вы запустите эту команду, она спросит, хотите ли вы поделиться адресом электронной почты с Let’s Encrypt, чтобы ЦС мог отправлять вам новости и другую информацию о своей работе

Это необязательно. Если вы решите не делиться своим адресом, регистрация сертификата все равно пройдет в обычном режиме

Когда вы запустите эту команду, она спросит, хотите ли вы поделиться адресом электронной почты с Let’s Encrypt, чтобы ЦС мог отправлять вам новости и другую информацию о своей работе. Это необязательно. Если вы решите не делиться своим адресом, регистрация сертификата все равно пройдет в обычном режиме.

Когда процесс регистрации сертификата завершится, файлы сертификата и ключей будут помещены в /etc/letsencrypt/live/your_domain/ (где your_domain – это имя хоста, для которого вы зарегистрировали сертификат).

После этого нужно загрузить копию сертификата ЦС Let’s Encrypt и промежуточных сертификатов и поместить их в один файл. journald будет использовать этот файл для проверки подлинности сертификатов на клиенте и сервере при их взаимодействии.

Следующая команда загрузит два сертификата с веб-сайта Let’s Encrypt и поместит их в один файл под названием letsencrypt-comdated-certs.pem в домашнем каталоге вашего пользователя.

Выполните эту команду на клиенте и сервере, чтобы загрузить сертификаты и создать объединенный файл:

Затем переместите этот файл в каталог Let’s Encrypt, содержащий сертификаты и ключи:

Мы зарегистрировали все необходимые сертификаты и ключи. На следующем этапе мы настроим сервер для централизации логов, чтобы он мог прослушивать и сохранять данные логов клиента.

4: Настройка клиента

Примечание: Все команды данного раздела следует выполнить только на клиенте.

Сейчас мы настроим компонент, который будет передавать сообщения логов с клиента на сервер. Этот компонент называется systemd-journal-upload.

Согласно стандартной конфигурации, systemd-journal-upload использует временного пользователя, который существует только во время выполнения процесса. Это усложняет чтение сертификатов и ключей TLS для systemd-journal-upload. Чтобы решить эту проблему, давайте создадим постоянного системного пользователя с тем же именем, что и у временного пользователя.

Сначала создайте нового пользователя systemd-journal-upload с помощью команды adduser:

Давайте рассмотрим параметры команды:

  • –system: создает нового системного пользователя. Она присваивает пользователю UID (идентификатор пользователя) ниже 1000. UID выше 1000 обычно присваивается учетным записям пользователей, которые человек будет использовать для входа в систему.
  • –home /run/systemd: установит /run/systemd в качестве домашнего каталога для этого пользователя.
  • –no-create-home: отключает создание набора домашних каталогов, поскольку он уже существует.
  • –disabled-login: отключает вход в систему для этого пользователя (например, через SSH).
  • –group: создает одноименную группу для этого пользователя.

Затем установите привилегии и права собственности на сертификаты Let’s Encrypt:

Теперь отредактируйте конфигурацию для systemd-journal-upload, которая находится в /etc/systemd/journal-upload.conf. Откройте этот файл в текстовом редакторе:

Отредактируйте этот файл так, чтобы он выглядел следующим образом:

Перезапустите сервис systemd-journal-upload, чтобы он использовал новую конфигурацию:

Теперь ваш клиент может отправлять сообщения логов на централизованный сервер. На следующем этапе мы проверим, работает ли наша настройка.

Расположение логов в Linux

Все основные логи Linux находятся в папке /var/log/ вы можете список файлов логов для вашей системы с помощью команды ls:

Дальше рассмотрим 20 различных файлов логов Linux, размещенных в каталоге /var/log/. Некоторых из этих логов встречаются только в определенных дистрибутивах, например, dpkg.logвстречается только в системах, основанных на Debian:

  • /var/log/dmesg — содержит сообщения, полученные от ядра. Регистрирует много сообщений еще на этапе загрузки, в них отображается информация об аппаратных устройствах, которые инициализируются в процессе загрузки. Можно сказать это еще один лог системы Linux. Количество сообщений в логе ограничено, и когда файл будет переполнен, с каждым новым сообщением старые будут перезаписаны. Вы также можете посмотреть сообщения из этого лога с помощью команды dmseg;
  • /var/log/auth.log — содержит информацию об авторизации пользователей в системе, включая пользовательские логины и механизмы аутентификации, которые были использованы;
  • /var/log/messages — содержит глобальные системные логи Linux, включая те, которые регистрируются при запуске системы. В этот лог записываются несколько типов сообщений — почта, cron, различные сервисы, ядро, аутентификация;
  • /var/log/boot.log — содержит информацию, которая регистрируется при загрузке системы;
  • /var/log/daemon.log — влючает сообщения от различных фоновых демонов;
  • /var/log/kern.log —  содержит сообщения от ядра, полезны при устранении ошибок пользовательских модулей, встроенных в ядро;
  • /var/log/lastlog — отображает информацию о последней сессии всех пользователей. Это нетекстовый файл, для его просмотра необходимо использовать команду lastlog;
  • /var/log/maillog /var/log/mail.log — журналы сервера электронной почты, запущенного в системе;
  • /var/log/user.log — информация из всех журналов на уровне пользователей;
  • /var/log/Xorg.x.log — лог сообщений Х сервера;
  • /var/log/alternatives.log — Информация о работе программы update-alternatives. Это символические ссылки на команды или библиотеки по умолчанию;
  • var/log/mysqld.log — файлы логов Linux от сервера баз данных MySQL;
  • /var/log/httpd/ или /var/log/apache2 — лог файлы linux11 веб-сервера Apache. Логи доступа находятся в файле access_log, а ошибок в error_log;
  • /var/log/lighttpd/ — логи linux веб-сервера lighttpd;
  • /var/log/conman/ — файлы логов клиента ConMan;
  • /var/log/mail/ — в этом каталоге содержатся дополнительные логи почтового сервера;
  • /var/log/prelink/ — программа Prelink связывает библиотеки и исполняемые файлы, чтобы ускорить процесс их загрузки. /var/log/prelink/prelink.log содержит информацию о .so файлах, которые были изменены программой;
  • /var/log/audit/- содержит информацию, созданную демоном аудита auditd;
  • /var/log/setroubleshoot/ — SE Linux использует демон setroubleshootd (SE Trouble Shoot Daemon) для уведомления о проблемах с безопасностью. В этом журнале находятся сообщения этой программы;
  • /var/log/samba/ — содержит информацию и журналы файлового сервера Samba, который используется для подключения к общим папкам Windows;
  • /var/log/sa/ — содержит .cap файлы, собранные пакетом Syssta;
  • /var/log/sssd/ — используется системным демоном безопасности, который управляет удаленным доступом к каталогам и механизмами аутентификации;
  • /var/log/btmp — лог файл Linux содержит информацию о неудачных попытках входа. Для просмотра файла удобно использовать команду last -f /var/log/btmp;
  • /var/log/cups — сообщения, связанные с печатью и принтерами;
  • /var/log/anaconda.log — все сообщения, зарегистрированные при установке сохраняются в этом файле;
  • /var/log/yum.log — регистрирует всю информацию об установке пакетов с помощью Yum;
  • /var/log/cron — всякий раз когда демон Cron запускает выполнения программы, он записывает отчет и сообщения самой программы в этом файле;
  • /var/log/secure — содержит информацию, относящуюся к аутентификации и авторизации. Например, SSHd регистрирует здесь все, в том числе неудачные попытки входа в систему;
  • /var/log/wtmp или /var/log/utmp — системные логи Linux, содержат журнал входов пользователей в систему. С помощью команды wtmp вы можете узнать кто и когда вошел в систему;
  • /var/log/faillog — лог системы linux, содержит неудачные попытки входа в систему. Используйте команду faillog, чтобы отобразить содержимое этого файла.

Дальше рассмотрим, как просмотреть эти логи в операционной системе.

Configure Rsyslog.conf

The main rsyslog configuration file is located at . You can store additional configuration files in the /etc/rsyslog.d/ directory. For example, on Ubuntu, this directory contains , which instructs rsyslog to write the system logs to file. You can read more about the configuration files in the rsyslog documentation.

Configuring rsyslog involves setting up input sources (where rsyslog receives logs), as well as destination rules for where and how logs are written. Rsyslog already provides defaults for receiving syslog events, so you normally just need to add your centralization server as an output. Rsyslog uses RainerScript for its configuration syntax. In this example, we are forwarding our logs to the server at over TCP port 514.

action(type="omfwd" protocol="tcp" target="central.example.com" port="514")

Alternatively, we could send our logs to a log management solution. Cloud-based log management providers like SolarWinds Loggly will provide you with a hostname and port that you can send your logs to simply by changing the and fields. Check with your provider’s documentation when configuring rsyslog..

direct