Когда ты управляешь VPS, особенно если на нём крутится что-то важное — сайт, база данных, почтовик или VPN, — безопасность всегда где-то на заднем плане пульсирует тревожной строкой: “А вдруг что-то пошло не так?”. Я, честно говоря, не люблю сюрпризы в логах. Поэтому в какой-то момент села и настроила себе Logwatch — и с тех пор хоть чуть-чуть, но сплю спокойнее.
Что такое Logwatch и зачем он нужен
Если ты ещё не знакома с этим инструментом, то в двух словах: Logwatch — это утилита для мониторинга логов на Linux-сервере. Она берёт все важные системные сообщения за период (по умолчанию — сутки), анализирует их и формирует сводку на почту. Причём не просто голый дамп, а читаемый отчёт с разбивкой по категориям: SSH, sudo, PAM, cron, firewall и прочее.
Короче, Logwatch — это как дневник безопасности твоего сервера. Только он сам пишет и сам отправляет.
Установка Logwatch на Linux VPS
Я ставила на Ubuntu 22.04, но это работает и на Debian, и на CentOS. Установка элементарная:
sudo apt update sudo apt install logwatch -y
Если у тебя CentOS:
yum install logwatch -y
После этого можно запускать отчёт вручную:
sudo logwatch --detail High --mailto you@example.com --service All --range today
Но лучше настроить автоматическую отправку по cron.
Настройка ежедневных отчётов
Чтобы Logwatch не пылился, я прописала его в cron. Он и так цепляется за
/etc/cron.daily/00logwatch
sudo nano /etc/cron.daily/00logwatch
И заменила строку примерно так:
/usr/sbin/logwatch --output mail --mailto your@email.com --detail medium
Можно указать
high
Что показывает Logwatch
Вот только часть того, что приходит ко мне каждый день:
- Попытки входа по SSH (включая неудачные);
- Успешные sudo-команды и кто их запускал;
- Статистика по fail2ban (если он есть);
- Логи cron-заданий;
- Сетевые события (через iptables, ufw, firewalld);
- Проблемы с PAM, логины root’ом, попытки эскалации прав.
Это не SIEM и не аналитика уровня Splunk, но для личного VPS или сервера на клиента — с головой.
Примеры из жизни (и логи, которые спасли)
Однажды в 2 часа ночи Logwatch прислал отчёт, в котором было 47 неудачных попыток SSH-входа из Вьетнама. Я тогда только открыл порт после переноса сервиса — и сразу получил напоминание, почему fail2ban должен быть включён. Без Logwatch, возможно, я бы узнала об этом от клиента — когда у него бы что-то отвалилось.
В другой раз Logwatch показал, что мой скрипт резервного копирования в cron не отработал — ошибка доступа к папке. Я бы не заметила это недели две, пока бы не потребовался бэкап.
Советы из практики
- Почтовик на сервере должен работать. Logwatch шлёт письма через или
sendmail
. Без рабочего MTA — тишина.postfix
- Указывай только нужные сервисы. Зачем тебе , если ты его не используешь? Упрощает отчёт.
rsync
- Настрой fail2ban и auditd. Тогда Logwatch даст тебе ещё больше полезной информации.
- Не ленись читать отчёты. Они реально помогают поймать баг или взлом до того, как станет больно.
Logwatch — это маленький, но очень полезный инструмент для linux log monitoring. Он не перегружает, не требует отдельного сервиса или агентской магии. Просто работает.
Если у тебя есть VPS, и ты хоть немного переживаешь за его безопасность — поставь Logwatch. Потратишь 10 минут, а сэкономишь — и нервы, и ночи без сна.