Безопасность Linux-сервера: практический hardening и аудит в 2026 | AdminWiki
Timeweb Cloud — сервера, Kubernetes, S3, Terraform. Лучшие цены IaaS.
Попробовать

Безопасность Linux-сервера: практический hardening и аудит в 2026

30 апреля 2026 8 мин. чтения
Содержание статьи

Защита сервера начинается с системного подхода, а не с случайных команд. Это руководство предоставляет готовые, проверенные на практике решения для hardening Linux в 2026 году. Вы получите конкретные команды для настройки брандмауэра, управления доступом и отключения опасных служб. Инструкции по аудиту с Lynis и OpenSCAP помогут автоматизировать контроль, а чек-лист зафиксирует все ключевые шаги. Цель - снизить риски без сбоев в рабочей среде.

Подготовка и базовый принцип минимальных привилегий

Первое правило hardening - не сломать работающий сервер. Все изменения требуют подготовки и понимания фундаментального принципа минимальных привилегий. Он означает, что каждый пользователь, процесс или служба получает только те права, необходимые для выполнения своей функции. Это основа всех дальнейших действий.

Создание точки отката: резервное копирование конфигов и сессий

Сделайте резервные копии критических файлов перед любыми изменениями. Используйте команды для создания бэкапа конфигураций SSH, sudo и сетевых настроек.

# Копирование конфигураций SSH и sudo
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup
cp /etc/sudoers /etc/sudoers.backup

# Бэкап текущих правил брандмауэра (для nftables)
nft list ruleset > /etc/nftables.backup

# Скрипт для быстрого бэкапа ключевых директорий
mkdir -p /root/backup/hardening
cp -r /etc/ssh /etc/sudoers.d /etc/nftables.conf /root/backup/hardening/

Для длительных операций используйте screen или tmux. Это предотвратит разрыв сессии при потере соединения.

Принцип минимальных привилегий: почему это основа безопасности в 2026

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

Контроль доступа: пользователи, SSH и права sudo

Управление доступом - это контроль точек входа в систему. Настройка SSH и политик sudo напрямую влияет на вероятность несанкционированного доступа. Используйте готовые конфигурации, которые можно адаптировать для вашего сервера.

Жесткая настройка SSH-сервера (sshd_config)

Отредактируйте файл /etc/ssh/sshd_config. Применяйте изменения после тестирования подключения по SSH-ключу.

# /etc/ssh/sshd_config - основные параметры для 2026
Port 2222                    # Смена стандартного порта
PermitRootLogin no           # Запрет прямого доступа root
PasswordAuthentication no    # Отключение парольной аутентификации
PubkeyAuthentication yes     # Использование только ключей
AllowUsers admin deploy      # Ограничение пользователей
MaxAuthTries 3               # Лимит попыток аутентификации
ClientAliveInterval 300      # Таймаут неактивных сессий

После изменения конфига проверьте подключение по ключу, прежде чем закрывать текущую сессию. Команда для применения: systemctl restart sshd.

Грамотное управление привилегиями через sudo

Не редактируйте файл /etc/sudoers напрямую через visudo. Создавайте отдельные файлы в директории /etc/sudoers.d/. Это упрощает управление и снижает риск ошибок.

# Создание файла для пользователя deploy
echo "deploy ALL=(ALL) /usr/bin/systemctl restart nginx, /usr/bin/systemctl status nginx" > /etc/sudoers.d/deploy

# Пример опасного правила, которое нужно избегать
# "admin ALL=(ALL) ALL" дает полный root доступ

Для аудита текущих прав используйте команду sudo -l. Она покажет разрешенные команды для текущего пользователя.

Сетевая изоляция: настройка брандмауэра (firewalld и nftables)

Брандмауэр определяет, какой трафик может достичь сервера. В 2026 году firewalld остается стандартом для простоты, а nftables - для гибкости и будущего. Выберите инструмент, соответствующий вашим задачам.

Firewalld: быстрая и понятная базовая защита

Firewalld использует зоны и службы для упрощенного управления. Эта последовательность команд создает базовую политику "запретить всё, разрешить избранное".

# Установка и запуск (на системах с yum/dnf)
yum install firewalld
systemctl enable --now firewalld

# Создание строгой зоны и добавление служб
firewall-cmd --new-zone=secure --permanent
firewall-cmd --zone=secure --add-service=ssh --permanent
firewall-cmd --zone=secure --add-service=http --permanent
firewall-cmd --zone=secure --add-service=https --permanent

# Блокировка всего остального трафика
firewall-cmd --zone=secure --set-target=DROP --permanent

# Применение изменений и проверка
firewall-cmd --reload
firewall-cmd --zone=secure --list-all

Для добавления кастомного порта используйте команду firewall-cmd --zone=secure --add-port=8080/tcp --permanent.

Nftables: современная и мощная замена iptables (2026)

Nftables объединяет функциональность iptables, ip6tables, arptables и ebtables в один фреймворк. Он предлагает более чистый синтаксис и улучшенную производительность. Используйте этот конфиг для базовой защиты.

# /etc/nftables.conf - базовый набор правил
table inet filter {
    chain input {
        type filter hook input priority 0;
        # Разрешить установленные соединения и трафик с определенных интерфейсов
        ct state established,related accept
        iif "lo" accept

        # Разрешить SSH, HTTP, HTTPS
        tcp dport {2222, 80, 443} accept

        # Защита от сканирования портов - ограничение новых соединений
        tcp dport 2222 limit rate 5/minute accept

        # Все остальное - отклонить
        drop
    }
    chain forward {
        type filter hook forward priority 0;
        drop
    }
    chain output {
        type filter hook output priority 0;
        accept
    }
}

Загрузите правила командой nft -f /etc/nftables.conf. Для сохранения на постоянной основе добавьте эту команду в скрипт загрузки системы.

Уменьшение поверхности атаки: системные службы и обновления

Атака часто начинается с уязвимой или ненужной службы. Отключение неиспользуемых компонентов и автоматизация обновлений сокращают возможные векторы атак.

Аудит и безопасное отключение ненужных служб

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

# Просмотр всех активных служб
systemctl list-units --type=service --state=running

# Примеры служб, часто ненужных для веб-сервера
# rpcbind, telnet, bluetooth, cups

# Процесс отключения (сначала mask, затем stop)
systemctl mask rpcbind
systemctl stop rpcbind

# После каждого шага проверяйте работу основного сервиса (например, nginx)
systemctl status nginx

Отключайте только службы, которые точно не требуются для функционирования вашего сервера. Например, для веб-сервера без печати служба cups не нужна.

Автоматизация обновлений безопасности

Регулярные обновления закрывают известные уязвимости. Настройте автоматическое применение только security updates.

# Для Debian/Ubuntu: unattended-upgrades
apt install unattended-upgrades
# Настройка в /etc/apt/apt.conf.d/50unattended-upgrades
Unattended-Upgrade::Allowed-Origins {
    "${distro_id}:${distro_codename}-security";
};

# Для RHEL/CentOS/Fedora: dnf-automatic
dnf install dnf-automatic
# Настройка в /etc/dnf/automatic.conf
apply_updates = yes
upgrade_type = security

Убедитесь, что система отправляет отчеты об обновлениях. Это позволяет отслеживать изменения.

Автоматизированный аудит безопасности: Lynis и OpenSCAP

Ручные проверки трудоемки и могут пропустить детали. Lynis и OpenSCAP автоматизируют аудит, предоставляя структурированные отчеты и рекомендации. Это критично для систематического контроля, как описано в комплексном аудите IT-инфраструктуры.

Lynis: комплексная проверка системы на уязвимости

Lynis выполняет глубокий анализ системы, проверяя сотни параметров безопасности. Он дает оценку Hardening Index и список рекомендаций.

# Установка Lynis из репозитория (Debian/Ubuntu)
apt install lynis

# Первый быстрый запуск для оценки
lynis audit system --quick

# Анализ вывода
# - [WARNING] указывает на потенциальные проблемы
# - [SUGGESTION] предлагает улучшения

# Пример исправления типичной проблемы
# Lynis может предложить установить пакет needrestart для управления службами после обновления
apt install needrestart

Интегрируйте запуск Lynis в cron для регулярного аудита. Например, еженедельный запуск с отправкой отчетов на email.

OpenSCAP: проверка соответствия стандартам (CIS, STIG)

OpenSCAP использует формализованные профили безопасности, такие как CIS Benchmarks или STIG. Это важно для соответствия корпоративным требованиям.

# Установка scap-security-guide
apt install scap-security-guide  # Для Debian/Ubuntu
yum install scap-security-guide   # Для RHEL/CentOS

# Запуск оценки с профилем CIS для Debian 12
oscap xccdf eval --profile cis --results results.xml --report report.html /usr/share/scap-security-guide/ssg-debian12-ds.xml

# Анализ HTML-отчета
# Сосредоточьтесь на проверках с статусом "fail" и высоким уровнем severity (например, high)

Регулярные оценки OpenSCAP помогают отслеживать отклонения от стандартов безопасности.

Мониторинг и реакция: логи и подозрительная активность

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

Настройка auditd для отслеживания критичных событий

Auditd - мощный инструмент для детектирования изменений в системе. Он регистрирует доступ к файлам, выполнение команд и другие события.

# Установка и запуск службы
apt install auditd
systemctl enable --now auditd

# Пример правила для мониторинга доступа к /etc/shadow
auditctl -w /etc/shadow -p rwa -k shadow_access

# Мониторинг выполнения команд с su или sudo
auditctl -a always,exit -S execve -C uid!=euid -F key=privileged_exec

# Поиск событий в журналах audit
ausearch -k shadow_access --start today

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

Ежедневный обзор логов с помощью logwatch

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

# Установка logwatch
apt install logwatch

# Настройка детализации отчета и отправки на email
# Отредактируйте /usr/share/logwatch/default.conf/logwatch.conf
Output = mail
Format = html
MailTo = admin@yourdomain.com
Detail = High

# Анализ отчетов logwatch
# Обращайте внимание на разделы:
# - "Failed logins" (попытки неудачного входа)
# - "Cron jobs" (необычные задания cron)
# - "SSH" (подключения по SSH)

Регулярные отчеты logwatch позволяют быстро выявлять потенциальные проблемы, такие как массовые попытки подбора пароля.

Итоговый чек-лист и поддержание безопасности

Hardening - это циклический процесс, а не единичное действие. Используйте этот чек-лист для первоначальной проверки и регулярного аудита. Он систематизирует все ключевые шаги из руководства.

Чек-лист по безопасности Linux-сервера (2026)

  • Подготовка: Созданы резервные копии /etc/ssh/, /etc/sudoers, правил брандмауэра. Принцип минимальных привилегий понимается и применяется.
  • Контроль доступа: SSH настроен с запретом root login и парольной аутентификации, используется только порт с ключами. Политики sudo ограничены через файлы в /etc/sudoers.d/, проверены командой sudo -l.
  • Сетевая изоляция: Брандмауэр (firewalld или nftables) активен с политикой "deny all, allow specific". Правила разрешают только необходимые порты (например, 80, 443, custom SSH). Правила сохранены на постоянной основе.
  • Службы и обновления: Ненужные службы (например, rpcbind, telnet) отключены через systemctl mask и stop. Автоматические обновления безопасности настроены (unattended-upgrades или dnf-automatic).
  • Аудит: Lynis запущен, отчет изучен, рекомендации из секции SUGGESTION выполнены. OpenSCAP оценка выполнена с профилем CIS/STIG, отчет анализирован, failed checks с высоким severity исправлены.
  • Мониторинг: Auditd настроен с правилами для отслеживания доступа к /etc/shadow и выполнения привилегированных команд. Logwatch настроен и отправляет ежедневные отчеты на email администратора.

Проводите повторный аудит каждые три месяца. Используйте запуск Lynis и OpenSCAP по расписанию через cron. Отслеживайте актуальные уязвимости через официальные источники, такие как базы CVE.

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

Если вам требуется единый доступ к различным моделям искусственного интеллекта для автоматизации задач или анализа данных, рассмотрите использование агрегатора API, например, AiTunnel. Этот сервис предоставляет интерфейс для работы с более чем 200 моделями, включая GPT, Gemini и Claude, без необходимости использования VPN и с оплатой в рублях.

Поделиться:
Сохранить гайд? В закладки браузера