Инструмент проверки безопасности PGDSAT
PGDSAT — это инструмент для оценки безопасности кластеров PostgreSQL. Он помогает автоматизировать проверки безопасности, выявлять уязвимости и генерировать отчеты с рекомендациями для их устранения. Этот инструмент идеально подходит для администраторов баз данных, которые хотят убедиться, что их PostgreSQL-кластеры соответствуют лучшим практикам безопасности.
Инструмент охватывает около 70–80 проверок, включая рекомендации CIS Benchmark.
Основные возможности
- Автоматическая проверка безопасности: анализ системных и конфигурационных данных PostgreSQL.
- Соответствие стандартам: проверка конфигурации базы данных в соответствии с CIS Benchmark для PostgreSQL.
- Генерация отчетов: подробные отчеты с результатами проверок, включая рекомендации по устранению выявленных проблем.
Установка
Зависимости
Перед установкой убедитесь, что на вашем сервере установлены необходимые инструменты:
Установка PGDSAT
- Загрузите последнюю версию инструмента с GitHub:BASH
- Распакуйте архив и установите:BASH
Проверка установки
После установки выполните команду:
Использование
Для генерации отчета выполните следующую команду от имени пользователя PostgreSQL:
Описание параметров:
-U
— имя пользователя.-h
— хост.-d
— база данных.-p
— порт.-D
— путь к каталогу данных $PGDATA.-f
— формат отчета (например,html
).-o
— имя выходного файла отчета.
Примеры проверок
PGDSAT проверяет различные аспекты безопасности PostgreSQL. Вот несколько примеров проверок и рекомендаций:
1. Конфигурация аутентификации
- Что проверяется: Используются ли безопасные методы аутентификации (
scram-sha-256
илиcert
). - Рекомендация: Заменить менее безопасные методы, такие как
md5
илиtrust
, на более современные.
Проблема:
Решение:
2. Открытые сетевые подключения
- Что проверяется: Значение параметра
listen_addresses
. - Рекомендация: Использовать конкретные IP-адреса вместо
*
для ограничения подключений.
3. Логирование запросов
- Что проверяется: Включено ли логирование SQL-запросов.
- Рекомендация: Установить
log_statement = 'all'
, чтобы отслеживать все запросы.
4. Контроль доступа
- Что проверяется: Используются ли широкие разрешения в
pg_hba.conf
. - Рекомендация: Ограничить доступ конкретными пользователями и базами данных.
Проблема:
Решение:
5. Шифрование данных в транзите
- Что проверяется: Включено ли шифрование соединений (
ssl = on
). - Рекомендация: Настроить SSL-сертификаты для защиты данных в транзите.
6. Мониторинг привилегий
- Что проверяется: Есть ли роли с чрезмерными привилегиями.
- Рекомендация: Пересмотреть роли и удалить ненужные привилегии.
Генерация отчета
После выполнения проверки PGDSAT создает отчет, например, в формате HTML. В отчете представлены следующие элементы:
- ✔ Успешные проверки.
- ✘ Неуспешные проверки.
- □ Проверки, требующие ручной проверки.
Пример отчета можно открыть в браузере для визуального анализа.
Заключение
PGDSAT — мощный инструмент для автоматизированной оценки безопасности СУБД. Он упрощает выполнение проверок, выявляет потенциальные уязвимости и предоставляет рекомендации для их устранения. С его помощью вы сможете убедиться, что ваш кластер соответствует лучшим практикам безопасности.
Дополнительная информация доступна в официальном репозитории: PGDSAT на GitHub.
Руководство по безопасности, разработанное Центром интернет-безопасности: CIS PostgreSQL Benchmark