# Усиление безопасности

> Применение правил усиления CIS Benchmark на Linux-серверах через SecureBaseline Cloud - автоматическое выполнение Ansible-плейбуков и откат изменений

Source: https://opennix.org/docs/haas/hardening/

## Обзор

Задания усиления применяют конфигурации эталонных тестов CIS к вашим серверам с использованием автоматизации Ansible. Этот процесс изменяет системные настройки для соответствия стандартам безопасности.

**Внимание**: Усиление изменяет конфигурации системы. Всегда тестируйте на непроизводственных серверах сначала.

## Профили усиления

| Профиль | Описание | Влияние |
|---------|----------|---------|
| CIS Level 1 - Server | Базовое усиление безопасности | Минимальное влияние на сервисы |
| CIS Level 2 - Server | Расширенное усиление безопасности | Может повлиять на некоторые сервисы |
| CIS Level 1 - Workstation | Базовая безопасность рабочей станции | Для десктопных систем |
| CIS Level 2 - Workstation | Расширенная безопасность рабочей станции | Для высокозащищенных десктопов |

## Запуск задания усиления

### Один хост

1. Перейдите на страницу **Хосты**
2. Найдите целевой хост
3. Нажмите кнопку **Усилить**
4. Выберите профиль усиления
5. Установите приоритет (1-10, более высокий выполняется первым)
6. Нажмите **Запустить усиление**

### Массовое усиление

1. Перейдите на страницу **Хосты**
2. Выберите несколько хостов с помощью чекбоксов
3. Нажмите **Массовое усиление**
4. Выберите профиль и приоритет
5. Нажмите **Запустить усиление для всех**

## Приоритет задания

Приоритет определяет порядок выполнения, когда несколько заданий в очереди:

| Приоритет | Описание |
|-----------|----------|
| 1-3 | Низкий приоритет, выполняется после заданий с более высоким приоритетом |
| 4-6 | Нормальный приоритет |
| 7-9 | Высокий приоритет, выполняется перед заданиями с более низким приоритетом |
| 10 | Критический, выполняется немедленно |

## Статус задания

| Статус | Описание |
|--------|----------|
| Pending | Задание в очереди |
| Queued | Задание ожидает worker |
| Running | Ansible playbook выполняется |
| Completed | Усиление успешно завершено |
| Failed | Усиление завершилось с ошибками |

## Просмотр заданий

### Страница Задания

Страница Задания отображает все задания усиления с:

- Имя хоста
- Используемый профиль
- Статус
- Длительность
- Время начала
- Время завершения

### Детали задания

Нажмите **Посмотреть вывод** для просмотра:

- ID задания
- Информация о хосте
- Профиль и приоритет
- Вывод Ansible (полный лог выполнения)
- Сообщения об ошибках (при неудаче)

## Понимание вывода Ansible

Вывод Ansible показывает:

1. **PLAY** - начало выполнения playbook
2. **TASK** - отдельное изменение конфигурации
3. **ok** - задача выполнена, изменения не требуются
4. **changed** - задача внесла изменение в конфигурацию
5. **failed** - задача завершилась с ошибкой
6. **PLAY RECAP** - сводка всех изменений

### Пример вывода

```
PLAY [Apply CIS hardening] ****************************************************

TASK [Ensure mounting of cramfs is disabled] **********************************
changed: [192.168.1.100]

TASK [Ensure mounting of freevxfs is disabled] ********************************
ok: [192.168.1.100]

PLAY RECAP ********************************************************************
192.168.1.100              : ok=95   changed=42   failed=0
```

## AI-диагностика ошибок

При неудаче задания используйте AI-диагностику:

1. Найдите проваленное задание
2. Нажмите кнопку **Диагностика**
3. Просмотрите AI-анализ:
   - Определение корневой причины
   - Рекомендуемые шаги исправления
   - Советы по предотвращению

### Просмотр истории диагностик

1. Раскройте строку задания
2. Просмотрите карточку AI-диагностики
3. Нажмите **Посмотреть полную диагностику** для деталей

## Действия после усиления

### Проверка сервисов

После усиления проверьте критические сервисы:

```bash
systemctl status sshd
systemctl status nginx
systemctl status your-application
```

### Запуск сканирования соответствия

1. Перейдите на страницу **Соответствие**
2. Запустите новое сканирование на усиленном хосте
3. Сравните баллы до и после

### Просмотр изменений

Проверьте вывод Ansible на:
- Измененные файлы конфигурации
- Перезапущенные сервисы
- Установленные/удаленные пакеты

## Откат

Платформа не предоставляет автоматический откат. Для отмены изменений:

1. Восстановите из резервной копии (если доступна)
2. Вручную отмените изменения конфигурации
3. Переразверните из системы управления конфигурацией

### Лучшая практика: Снимки

Перед усилением:
1. Создайте снимок ВМ
2. Запустите усиление
3. Проверьте работу приложения
4. При проблемах восстановите снимок

## Лучшие практики

### Тестируйте сначала

1. Клонируйте производственный сервер
2. Запустите усиление на клоне
3. Протестируйте все приложения
4. При успехе запустите на производственном сервере

### Планируйте на время обслуживания

- Выполняйте усиление во время окон обслуживания
- Подготовьте план отката
- Мониторьте сервисы после завершения

### Документируйте исключения

Некоторые правила могут конфликтовать с требованиями приложений:
- Документируйте причину пропуска правила
- Получите одобрение команды безопасности
- Отслеживайте в реестре исключений

### Постепенное усиление

1. Начните с Level 1
2. Проверьте работу всех сервисов
3. Запустите сканирование соответствия
4. Рассмотрите Level 2 при необходимости

## Устранение неполадок

### Задание зависло в Pending

1. Проверьте работу сервиса worker
2. Проверьте подключение к Redis
3. Проверьте логи worker

### Задание завершилось с ошибкой

1. Просмотрите вывод Ansible
2. Проверьте сообщения об ошибках
3. Используйте AI-диагностику
4. Распространенные причины:
   - Потеря SSH-подключения
   - Отказ sudo
   - Ошибка установки пакета
   - Диск заполнен

### Сервисы не запускаются после усиления

1. Проверьте логи systemd: `journalctl -u service-name`
2. Просмотрите изменения конфигурации
3. Проверьте, не заблокированы ли порты
4. Проверьте, не был ли сервис отключен усилением

### Потеря SSH-подключения после усиления

Если заблокированы:
1. Используйте консольный доступ (если доступен)
2. Загрузитесь в режиме восстановления
3. Восстановите конфигурацию SSH
4. Рассмотрите исключение правил SSH в следующий раз

## Дополнительные материалы

- [Ремедиация отдельных правил CIS](/docs/haas/remediation/) - точечное исправление несоответствий с процессом утверждения вместо применения полного профиля
- [Сканирование уязвимостей Linux-серверов](/docs/haas/vulnerabilities/) - обнаружение CVE в установленных пакетах после усиления конфигурации
- [Устранение неполадок заданий усиления](/docs/haas/troubleshooting/) - диагностика ошибок Ansible, проблем SSH и зависших заданий

