Как настроить Rsyslog в Ubuntu 20.04 LTS

Как настроить Rsyslog в Ubuntu 20.04 LTS

 

В этом руководстве мы покажем вам, как настроить Rsyslog в Ubuntu 20.04 LTS. Для тех из вас, кто не знал, Rsyslog — это программный инструмент с открытым исходным кодом для операционных систем на базе Unix, используемый для сбора сообщений журнала с нескольких сетевых устройств. Это помогает системным администраторам следить за всеми серверами из центральной точки. Rsyslog работает по модели клиент / сервер, он получает журналы от удаленного клиента через порт 514 по протоколу TCP / UDP.

В этой статье предполагается, что у вас есть хотя бы базовые знания Linux, вы знаете, как использовать оболочку, и, что наиболее важно, вы размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить ‘ sudo‘ к командам для получения привилегий root. Я покажу вам пошаговую установку Rsyslog на Ubuntu 20.04 (Focal Fossa). Вы можете следовать тем же инструкциям для Ubuntu 18.04, 16.04 и любого другого дистрибутива на основе Debian, например Linux Mint.

Настройка Rsyslog в Ubuntu 20.04 LTS Focal Fossa

Шаг 1. Во-первых, убедитесь, что все ваши системные пакеты обновлены, выполнив следующие aptкоманды в терминале.

sudo apt update
sudo apt upgrade

Шаг 2. Установка Rsyslog в Ubuntu 20.04.

По умолчанию Rsyslog теперь доступен в базовом репозитории Ubuntu. Теперь мы запускаем следующую команду, чтобы установить пакет сервера Rsyslog в вашей системе:

sudo apt install rsyslog

После завершения установки запустите и включите службу Rsyslog:

sudo systemctl start rsyslog
sudo systemctl enable rsyslog
sudo systemctl status rsyslog

Шаг 3. Настройте Rsyslog.

Теперь пора перейти к файлу, раскомментировать и изменить некоторые строки для запуска службы Rsyslog в режиме сервера:rsyslog.conf

nano /etc/rsyslog.conf

Раскомментируйте следующие строки:

# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")

# provides TCP syslog reception
module(load="imtcp")
input(type="imtcp" port="514")

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

$template remote-incoming-logs,"/var/log/%HOSTNAME%/%PROGRAMNAME%.log"
*.* ?remote-incoming-logs

Сохраните и закройте, а затем перезапустите службу Rsyslog, чтобы изменения вступили в силу:

sudo systemctl restart rsyslog

Шаг 4. Настройте брандмауэр.

Если брандмауэр запущен, откройте через него Rsyslog:

ufw allow 514/tcp
ufw allow 514/udp
ufw reload

Шаг 5. Настройте Rsyslog в качестве клиента.

Теперь вам нужно настроить клиент Rsyslog для отправки сообщений Syslog на удаленный сервер Rsyslog:

nano /etc/rsyslog.conf

Добавьте следующую строку:

#Enable sending system logs over UDP to rsyslog server
*.* @rsyslog-server-ip:514

#Enable sending system logs over TCP to rsyslog server
*.* @@rsyslog-server-ip:514
##Set disk queue when rsyslog server will be down:

$ActionQueueFileName queue
$ActionQueueMaxDiskSpace 1g
$ActionQueueSaveOnShutdown on
$ActionQueueType LinkedList
$ActionResumeRetryCount -1

Сохраните и закройте файл, затем перезапустите службу Rsyslog, чтобы изменения вступили в силу:

sudo systemctl restart rsyslog

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

ls -l /var/log/

Поздравляю! Вы успешно установили Rsyslog. Благодарим за использование этого руководства для установки Rsyslog в системе Ubuntu 20.04 LTS Focal Fossa. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт Rsyslog .