Краткие рекомендации#
Приведенные рекомендации предназначены для специалистов по внедрению, администрированию и эксплуатации Astra Automation и описывают рекомендуемые практики по обеспечению повышения уровня защищённости платформы при установке, настройке и обслуживании. Рекомендации учитывают отраслевые стандарты безопасности.
Примечание
Для достижения максимального уровня защищённости необходимо учесть корпоративные политики и провести дополнительный анализ рисков.
Соблюдение приведенных рекомендаций позволяет минимизировать риски несанкционированного доступа, компрометации данных и нарушения целостности платформы Astra Automation. Представленные рекомендации охватывают следующие ключевые аспекты:
планирование развертывания:
сетевые ограничения;
аутентификацию и управление доступом;
запись в журналы и мониторинг;
настройку узлов;
безопасность соединений;
управление настройками системы;
обновление и резервное копирование.
Планирование развертывания#
Astra Automation является модульной системой с основными компонентами:
контроллер автоматизации (Automation Controller);
сеть автоматизации (Automation Mesh);
частное хранилище контента (Private Automation Hub);
контроллер автоматизации на основе событий (Event-Driven Controller);
встроенная СУБД PostgreSQL (по желанию возможна внешняя СУБД).
Необходимо устанавливать все компоненты для получения полной функциональности и обеспечения масштабируемости и надёжности.
При планировании развертывания платформы (day-0) учитывайте следующие рекомендации:
Для производственных систем используйте типовую топологию, протестированную разработчиками Astra Automation.
Все серверы Astra Automation должны иметь корректные DNS-записи (FQDN).
Для балансировки используйте отдельную запись DNS для балансировщика нагрузки.
Все узлы должны синхронизировать время через NTP/Chrony.
Настройка узлов, развертывание и обслуживание#
Следующие рекомендации помогут вам настроить узлы Astra Automation таким образом, чтобы минимизировать риски эксплуатации уязвимостей:
Следуйте рекомендациям по безопасности Astra Linux.
Отключайте все неиспользуемые сервисы.
Используйте только разрешённое ПО, применяйте контроль доступа и сегментируйте уровни привилегий.
Настройте узлы с помощью коллекции astra.hardening, как приведено в примерах.
Совершайте развертывание платформы с выделенного сервера, который имеет доступ ко всем узлам контролера и будет работать далее для обслуживания с помощью
aa-setup(обновление, резервное копирование). Доступ к этому узлу должен быть ограничен.При запуске
aa-setupиспользуйте аргумент--ask-vault-passдля защиты конфиденциальных данных.
Ограничения по периметру#
Для защиты платформы Astra Automation по периметру важно ограничить сетевой доступ, оставив доступными только необходимые сервисы. Следующие рекомендации помогут снизить риск несанкционированного доступа и потенциальных атак на уязвимые службы:
Оставьте открытыми для входящих подключений только необходимые порты TCP, как рекомендовано в типовых топологиях.
Ограничьте прямой доступ по SSH к узлам Astra Automation.
Разрешите доступ по HTTPS к компонентам системы только из доверенных сетей.
Аутентификация и управление доступом#
Чтобы минимизировать риски компрометации учетных данных и защитить критические компоненты платформы Astra Automation от несанкционированного доступа, воспользуйтесь следующими рекомендациями:
Используйте внешнюю аутентификацию (SSO/LDAPS) для всех учетных записей, включая сервисные. Рекомендуется оставить только одну локальную учетную запись администратора, например,
admin, на случай аварий и недоступности SSO.Минимизируйте круг лиц с правами администратора.
Разграничьте учетные данные для администраторов и автоматизации.
Внедрите разноуровневые ключи и доступы для выполнения наборов сценариев с разными привилегиями.
Управление учётными данными и секретами#
Платформа использует три класса секретных данных:
пароли локальных пользователей Astra Automation;
операционные секреты (пароли к БД, очередям сообщений и др.);
секреты, используемые в автоматизации (ключи SSH, облачные токены и др.).
Рекомендации:
Используйте внешние хранилища секретов для хранения чувствительных данных (например, HashiCorp Vault).
Для передачи секретов в задачах Ansible используйте опцию
no_log: trueдля предотвращения утечек в логах.Изолируйте права доступа к файлам секретов. Следите за изменениями и несанкционированным доступом.
Используйте уникальные ключи для различных сценариев автоматизации.
Запрещайте регистрацию в журналах конфиденциальных данных. Пример использования
no_logв playbook:name: Example sensitive task ansible.builtin.command: /usr/bin/do_sensitive_thing no_log: true
Аудит#
Следующие рекомендации помогают оперативно выявлять и предотвращать инциденты, угрожающие безопасности системы:
Используйте параметр
no_logв местах, где обрабатываются конфиденциальные данные.Настройте централизованный сбор журналов.
Используйте криптографически подписанные инструменты ведения журналов, чтобы защитить их от подмены и модификации.
Обеспечьте регистрацию всех пользовательских сессий.
Обновления и резервное копирование#
Следующие рекомендации позволят вам поддерживать актуальность программного обеспечения и минимизировать риски утраты данных в случае инцидентов или сбоев:
Переходите не более чем на две основные версии Astra Automation за раз, предварительно ознакомившись с особенностями такого перехода для конкретной версии.
Настройте регулярное резервное копирование.
Храните резервные копии в надежном месте.