Привет, Хабр! Меня зовут Саша, я ведущий специалист технической поддержки по услугам информационной безопасности в Selectel. В последние годы многие начинают задумываться о повышении безопасности своих информационных ресурсов. И это неудивительно, ведь кибератаки и связанные с ними риски касаются как крупных компаний, так и небольших проектов, использующих в работе пару серверов.

Конечно, тяжело написать универсальный гайд, который полностью закроет все вопросы по ИБ для каждого случая. Все кейсы — разные и требуют отдельного рассмотрения и анализа, а также регулярного обновления средств защиты и мониторинга для поддержания системы в актуальном состоянии.

В этой статье я буду использовать стенд, на котором можно наглядно смоделировать типовые проблемы при проектировании безопасной системы. Мы ориентировались на базовые потребности, которые могут возникнуть, когда речь заходит об информационной системе для организации. И, надеюсь, наш небольшой разбор познакомит вас с базовыми принципами проектирования безопасной инфраструктуры, а также поможет разобраться в основных услугах. Подробности под катом!

Используйте навигацию, если не хотите читать статью полностью:

Несколько слов о Security by design

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

С большой вероятностью ваша работа будет проходить в онлайн-формате, поэтому ресурсы должны иметь стабильный и быстрый интернет. Подобный метод называется Security by design (SbD) и подразумевает не отдельную меру безопасности, а скорее подход к проектированию систем, в которых данные вашей организации будут под надежной защитой. Важно, что SbD может применяться как программистами при разработке приложений и сервисов, так и администраторами при развертывании больших систем. Да и в целом любыми специалистами, которые так или иначе взаимодействуют с чувствительными данными.

Если отойти от теории и рассмотреть наш стенд в ключе описанного ранее технического задания, большинство инфраструктурных вопросов было решено на стартовом этапе — при использовании ресурсов Selectel. В нашем случае это означает, что выделенный или облачный сервер будут размещены в дата-центре, а их физическую безопасность обеспечивают специалисты дата-центра.

Colocation

Выделенные серверы

Облачные серверы и облако на базе VMware

Managed Kubernetes, Container registry (CRaaS)

S3, облачные базы данных

Облачное хранилище

Панель управления

Безопасность данных и управление доступом

Клиент

Клиент

Клиент

Клиент

Клиент

Клиент

Клиент

Безопасность прикладного ПО

Клиент

Клиент

Клиент

Клиент

Selectel

Selectel

Selectel

Сетевая безопасность инфраструктуры клиента

Клиент

Клиент

Клиент

Клиент

Selectel

Selectel

Selectel

Безопасность операционной системы

Клиент

Клиент

Клиент

Selectel

Selectel

Selectel

Selectel

Безопасность платформы виртуализации и оркестрации

Клиент

Клиент

Selectel

Selectel

Selectel

Selectel

Selectel

Сетевая безопасность служебной инфраструктуры

Клиент

Selectel

Selectel

Selectel

Selectel

Selectel

Selectel

Безопасность аппаратных средств

Клиент

Selectel

Selectel

Selectel

Selectel

Selectel

Selectel

Физическая безопасность

Selectel

Selectel

Selectel

Selectel

Selectel

Selectel

Selectel

Инженеры Selectel контролируют работу систем электропитания, регулярно мониторят сеть, а также ответственны за доступ к размещенному оборудованию. И хоть такой подход и защищает от достаточно широкого спектра атак, на плечи клиента ложится администрирование сервера со стороны операционной системы и выше (ПО). А безопасность данных зачастую зависит от того, как и какие средства были  использованы.

Security Center

Рассказываем о лучших практиках и средствах ИБ, требованиях и изменениях в законодательстве.

Исследовать →

Общая схема: базовая инфраструктура

Перейдем от теории к практике. На схеме ниже — готовый стенд, особенности которого мы и будем разбирать в этой статье. 

При выборе элементов схемы руководствовались принципом «золотой середины»: хотелось показать как можно больше, но при этом выдержать баланс. Даже если в работе потребуется расширить предложенную схему, вы уже сможете подходить к этой задаче с пониманием принципов Security by design и использовать инструменты, описанные в этой статье.

Здесь мы видим полную картину, однако к составным частям данной схемы вернемся в последующих блоках, чтобы понимать, как именно был добавлен тот или иной блок.

Выделенные серверы

Технический сервер и веб-сервер

Первым шагом при проектировании станет подготовка выделенных серверов. А именно — веб-сервера и технического сервера, на котором мы сможем разместить служебные ресурсы вроде сервера авторизации, CRM или, например, баз данных, с которыми будем взаимодействовать на горячую.

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

После завершения установки ОС на заказанный сервер проведем базовую настройку. Установим NGINX на сервер, который будет обеспечивать работу сайта нашего выдуманного предприятия.

Настройка веб-сервера в соответствии с правилами ИБ — это достаточно обширная тема для отдельной статьи. Из базовых рекомендаций стоит явно выделить следующие моменты.

  • Со стороны операционной системы важно предусмотреть базовые средства обеспечения ИБ. Чтобы не ошибиться, лучше идти от меньшего к большему: от всего, что не потребуется в системе для работы наших сервисов, нужно избавиться. Порты приложений — назначить на нетиповые значения, а системные сервисы, которые не будут использоваться, — остановить и удалить из автозапуска. Подобное описание, конечно, немного утрировано, однако передает суть настроек, которые нужно применить в ОС. 

  • Сам веб-сервер nginx, как и любые другие процессы на сервере, должен запускаться с минимальными необходимыми привилегиями. Чем меньше прав было выделено сервисам для работы, тем меньше шансов, что злоумышленники их смогут использовать в целях компрометации данных или нарушения работы системы. 

  • Активируйте логирование, а также предусмотрите хранение логов. Часто понять, что именно послужило причиной сбоя, можно только по данным из истории работы того или иного сервиса. Сбор логов поможет в расследовании возможных инцидентов безопасности. 

  • Не забывайте о своевременном обновлении программного обеспечения, которое вы используете. Регулярно проверяйте доступные версии и по возможности обновляйте веб-сервер.

Резервный сервер

Теперь, когда у нас есть первый ресурс с доступом в сеть, создадим второй сервер, который будет играть роль резервного. 

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

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

В этой схеме оба сервера доступны по публичным IP, а также связаны между собой по локальной сети для взаимодействия развернутых сервисов. Уже неплохо, но подобная организация инфраструктуры небезопасна. Ресурсы уязвимы к атакам, а связанность по L2 в случае взлома даст злоумышленнику возможность получить доступ сразу ко всем ресурсам. Подобная ситуация не выглядит подходящей даже в рамках нашего тестового кейса. Давайте добавим немного специфических узлов в нашу сеть.

Облачные серверы

Рабочие станции для сотрудников

Для оперативных задач заведем несколько облачных серверов. Это решение позволит легко масштабировать ресурсы, добавляя или удаляя новые рабочие станции при необходимости — например, после завершения работ.

Чтобы каждый раз не настраивать систему с нуля, мы можем подготовить одну референсную виртуальную машину. После того, как система будет укомплектована необходимым набором сервисов — создать образ. То есть некую копию файловой системы, на базе которой потом можно разворачивать новые облачные серверы или загрузочные диски. Сделать это можно как с использованием специализированного ПО, так и непосредственно в панели управления облачной платформы, во вкладке Образы.

Альтернативный вариант оптимизировать время на развертывание инфраструктуры — подход Infrastructure as Code. Его суть — в автоматизации рутинных действий, таких как создание новых серверов, конфигурирование сервисов в операционной системе, установка ПО и прочее. 

Для настройки ресурсов в облачной платформе Selectel можно использовать Terraform. Если вам интересно узнать больше о работе с данным инструментом, вы можете ознакомиться с нашей статьей.

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

Также важно помнить, что автоматизация — не повод нарушать принцип наименьших привилегий, или же Zero Trust. Этот подход распространяется не только на «системные» серверы, где работают только сервисы по типу веб-серверов или мониторинга, но и на рабочие станции, к которым будут подключаться сотрудники. 

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

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

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

Облачные ресурсы: усложняем инфраструктуру

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

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

Сетевые ресурсы: повышение безопасности

Мы уделили достаточно внимания созданию серверов и их дальнейшей настройке. Связав ресурсы по L3, мы использовали локальную сеть внутри инфраструктуры Selectel. Но нельзя говорить о работе какой-либо информационной системы, не упоминая организацию публичного доступа до нее. 

Каждый хост в рассмотренной схеме имеет доступ в интернет через соответствующий порт. Оставив это так, мы увеличим зону для проведения потенциальной атаки на нашу систему.

Рабочие станции в облачной платформе достаточно не перманентны в плане работы. Сотрудники регулярно взаимодействуют с ними, ВМ создаются и удаляются, а системы этих серверов все время остаются доступны для злоумышленников. Чтобы усилить защиту рабочих станций, мы можем организовать работу с ними через промежуточный хост. Связь с ВМ будет происходить по локальной сети через глобальный роутер только после авторизации на одном из «публичных серверов» нашей организации.

Настроить LDAP или Active Directory мы сможем на резервном выделенном сервере. Сотрудники, подключаясь к нему по публичному адресу, будут проходить авторизацию и только после этого получать доступ к рабочим станциям в облачной платформе. Чтобы не было способа обойти настроенное средство защиты и подключиться к серверам напрямую, доступ в публичную сеть на ВМ потребуется закрыть. А именно — настроить маршруты таким образом, чтобы весь трафик проходил через резервный сервер и оттуда маршрутизировался во внешнюю сеть.

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

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

Межсетевой экран

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

При выборе МСЭ важно учитывать задачи, которые мы хотим решить. В данном случае для примера был выбран UserGate, который можно арендовать в Selectel. После заказа ресурса в панели управления, межсетевой экран будет подготовлен инженерами дата-центра.

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

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

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

Сервисы и ПО

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

Защита от DDoS-атак

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

DDoS‑атаки реализуются на разных уровнях сетевой модели OSI — и для каждого требуются свои меры защиты. На уровнях L3 (сетевой) и L4 (транспортный) злоумышленники направляют UDP-флуд, а их цель — перегрузить канал и сервер. На уровне L7 (прикладной) атакуют боты, имитирующие реальных пользователей. Такие атаки сложнее обнаружить, так как запросы выглядят легитимно. В этом может помочь дополнительная услуга WAF (Web Application Firewall). 

Резервное копирование

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

Часто данные могут быть повреждены или удалены из-за аппаратной неисправности серверов, сбоя программного обеспечения и даже из-за простой человеческой невнимательности. Поэтому опытные системные администраторы знают, что «бэкапов много не бывает» и важно позаботиться о своевременном резервном копировании.

Настройка безопасности на стороне панели управления

Управление доступом

В панели управления можно настроить управление доступом к инфраструктуре с помощью системы Identity and Access Management (IAM), которая проверяет каждый запрос и гарантирует, что операции с ресурсами выполняют только пользователи с соответствующими правами.

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

Логирование

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

  • В облачных и выделенных серверах можно собирать и экспортировать события операционной системы и информационной безопасности во внешние системы управления. С этим помогут такие инструменты, как Osquery, Filebeat (ELK), Wazuh, Falco.

  • В Managed Kubernetes можно получать логи кластера, контейнеров и аудитные логи. Для этого нужно настроить интеграцию, например, с SIEM-системой Wazuh.

  • Аудит-логи в панели управления позволяют отслеживать операции с ресурсами и пользователями, а в случае подозрительной активности — сбросить все сессии и сменить пароль. О том, как с ними работать, рассказали в документации.

Менеджер секретов

Часто утечки данных происходят по причине неправильного хранения конфиденциальной информации. Для управления секретами и сертификатами можно использовать менеджер секретов. Он позволяет безопасно хранить чувствительные данные: логины, пароли, SSH-ключи, ключи API и другие конфиденциальные данные.

Дополнительные способы обеспечения безопасности

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

Некоторые из упомянутых способов повышения безопасности вы сможете найти прямо в панели управления. Так, услуга «Защита сервера» предоставляет программные и программно-аппаратные средства защиты информации на сервере. Эти сервисы будут полезны, если у вас появится задача реализовать информационную систему с повышенными требованиями к ИБ. 

В рамках этой услуги можно заказать различные решения: Kaspersky Endpoint Security, Secret Net LSP, Secret Net Studio, средство доверенной загрузки Dallas Lock и программно-аппаратный комплекс «Соболь». Средства помогают защитить серверы от угроз, несанкционированного доступа, сетевых и мошеннических атак, а также обеспечивают контроль и управление различными аспектами безопасности информационной системы.

Защищенные инфраструктурные решения

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

Под защищенным инфраструктурным решением понимается платформа для размещения информационной системы с повышенными требованиями к безопасности данных. Она должна соответствовать нормативным требованиям, включая приказы ФСТЭК России и законы о персональных данных.

В данном случае вы можете работать с любыми удобными для вас услугами, будь то выделенные или облачные серверы.

Данные решения по умолчанию включают защиту от DDoS-атак, межсетевые экраны, а также сканирование на уязвимости. Техническая составляющая включает всю необходимую инженерную инфраструктуру и системы контроля безопасности.

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

Комментарии (0)