// Engineering Log

Защита Linux-сервера: Часть 4 — Аудит и hardening с Lynis

Опубликовано 22.09.2026

// Быстрый маршрут

Эта статья относится к теме Безопасность и защита.

Межсетевой экран, Fail2ban и CrowdSec отвечают на атаки, которые уже идут. Аудит решает другую задачу: заранее найти слабые места в настройке сервера — лишние службы, мягкие настройки SSH, неправильные права на файлы, отсутствие обновлений — и закрыть их до того, как ими воспользуются. Такую работу называют hardening, укреплением системы. Самый распространённый бесплатный инструмент для неё — Lynis.

Что такое Lynis

Lynis — сканер безопасности для Linux, macOS и BSD от компании CISOfy. Он распространяется под лицензией GPLv3, актуальная версия — 3.1.7 (25.06.2026). Lynis не нужно компилировать: это набор shell-скриптов, который запускается прямо из каталога или ставится пакетом.

Lynis ничего не меняет в системе. Он проверяет настройки ядра, загрузчика, SSH, пользователей и паролей, установленные пакеты и их обновления, права на файлы, журналирование, межсетевой экран, сетевые службы — и выдаёт отчёт с найденными проблемами и советами.

Коммерческая версия, Lynis Enterprise, добавляет веб-интерфейс, отчёты по нескольким серверам, планы исправлений и проверку на соответствие стандартам вроде PCI DSS и ISO 27001. Для одного или нескольких серверов достаточно бесплатной версии.

Установка и запуск

В репозиториях Debian и Ubuntu Lynis есть, но версия там часто отстаёт. Свежую версию можно поставить из репозитория CISOfy или просто скачать из GitHub:

bash
git clone https://github.com/CISOfy/lynis
cd lynis
sudo ./lynis audit system

Запускать лучше от root: без прав Lynis часть проверок пропустит и предупредит об этом. Проверка занимает минуту-две.

Как читать результат

В выводе и в отчёте есть три главные вещи.

Warnings (предупреждения) — проблемы, которые действительно требуют действия. Их обычно немного.

Suggestions (советы) — места, где настройку можно улучшить. Их всегда заметно больше, и далеко не все применимы к вашему серверу.

Hardening index — итоговый показатель защищённости. Сам по себе он мало что говорит, но удобен для сравнения: запустите аудит до и после изменений и посмотрите, как он менялся.

У каждой находки есть идентификатор, например SSH-7408. Подробности по нему:

bash
sudo lynis show details SSH-7408

Полный журнал проверки пишется в /var/log/lynis.log и перезаписывается при каждом запуске, машинно читаемый отчёт — в /var/log/lynis-report.dat.

Что исправлять в первую очередь

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

  1. Предупреждения. Всё, что отмечено как warning, разобрать сразу.
  2. Обновления. Пакеты с известными уязвимостями и отсутствие автоматических обновлений безопасности — самая частая реальная причина взломов.
  3. SSH. Вход только по ключам, запрет входа root по паролю, отключение неиспользуемых способов аутентификации.
  4. Лишние службы и порты. Всё, что слушает сеть и не нужно, — остановить и отключить. Это же проверяется межсетевым экраном.
  5. Пользователи и права. Учётные записи без пароля, лишние права sudo, файлы с правами на запись для всех.
  6. Журналирование. Журналы должны писаться и храниться достаточно долго, иначе после инцидента нечего будет разбирать.

Советы, которые к серверу неприменимы (например, отдельный раздел для /tmp на маленьком VPS), можно отключить в собственном профиле custom.prf, чтобы они не мешали видеть главное.

Автоматизация

Разовый аудит полезен, но настройки со временем «уплывают»: кто-то открыл порт для отладки, поставил пакет, поменял конфигурацию SSH. Поэтому аудит стоит запускать регулярно.

Для запуска по расписанию у Lynis есть ключ --cronjob: он отключает цвета и ожидание ввода.

bash
# /etc/cron.d/lynis — еженедельный аудит в понедельник в 5:00
0 5 * * 1 root /usr/sbin/lynis audit system --cronjob > /var/log/lynis-weekly.log 2>&1

Дальше отчёт можно отправлять по почте или собирать hardening index в мониторинг, чтобы видеть, если он резко упал.

Исправления удобнее вносить не руками на каждом сервере, а через систему управления конфигурацией. Для Ansible есть открытая коллекция devsec.hardening проекта DevSec: она применяет типовые настройки ОС и SSH. После её применения Lynis показывает, что ещё осталось.

Чем Lynis не является

  • Это не антивирус и не система обнаружения вторжений: он не ищет работающие атаки и вредоносный код.
  • Это не сканер уязвимостей приложений: ошибки в коде вашего сайта он не найдёт.
  • Высокий hardening index не означает, что сервер защищён: он показывает только то, насколько настройки соответствуют набору проверок Lynis.

Типичные ошибки

  • Запуск без root — часть проверок пропущена, отчёт выглядит лучше, чем есть.
  • Попытка исправить все советы подряд, включая неприменимые, — уходит время, а важное теряется.
  • Аудит один раз после установки и никогда больше.
  • Применение советов без проверки — например, ужесточение SSH без проверки входа из второй сессии заканчивается потерей доступа.
  • Версия из репозитория дистрибутива на год-два старше актуальной: новых проверок в ней нет.

Аудит — последний слой в этом цикле, и начинать его лучше с базовых шагов из чек-листа «Купил VPS — что дальше?» и статьи «Новый сервер — это не чистый лист».

// Похожая задача

Если у вас похожая ситуация

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

Тема статьи

Безопасность и защита

SSL, hardening, доступы, защита сервисов и безопасные конфигурации.

Часто с этим приходят

  • Настроить SSL, сертификаты и безопасные подключения
  • Ограничить доступы и закрыть лишние точки входа
  • Усилить конфигурацию сервера и сервисов

// Следующий шаг

Если вам нужна не только статья, а помощь по этой теме, удобнее сразу перейти в услугу. Главная и подборка материалов остаются рядом.

Открыть услуги

// Contact

Нужна помощь?

Свяжись со мной и я помогу решить проблему

Написать в Telegram

Отвечаю в течение рабочего дня (03:00–13:00 GMT)

Или оставьте заявку здесь:

Подтвердите, что вы не бот.

Написать и получить быстрый ответ