вторник, 28 мая 2019 г.

Чек-лист параметров безопасности сервера Windows/Linux


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

Плановая перезагрузка
Windows.
Linux
Физическая безопасность
Исключите физический доступ третьих лиц к серверу (для арендуемых физических и виртуальных серверов за вас это cделает дата-центр). Не подключайте непроверенные носители к вашему серверу.Установите пароль для входа в BIOS
Идентично Windows
Файловая система
Желательно выполнить NTFS-форматирование всех разделов. Используйте различные разделы для работы системы и под пользовательские программы/файлы.
Используйте разные разделы для системных и пользовательских файлов (директории /home). Желательно выполнить шифрование разделов (LVM Encryption). Настройте fstab для контроля доступа к дискам. Установите для раздела boot права только на чтение.
Регулярные обновления безопасности
Настройте сервер на автоматическое получение важных обновлений через Центр обновления Windows.
Вы можете настроить планировщик cron на периодическую установку обновлений.
Firewall
Firewall (Брандмауэр Windows) должен быть включен и корректно настроен на контроль ПО и портов.
Детально настройте iptables. Это можно сделать вручную, либо с использованием вспомогательных инструментов (самые популярные из них: UFW для Debian/Ubuntu, FirewallD для CentOS).Используйте систему SELinux для контроля доступа (в т.ч. приложений к ресурсам).
Пароли
С помощью локальных политик безопасности установите требование сложных паролей и срок их действия.Также стоит активировать временную или постоянную блокировку учетной записи после нескольких неверных попыток ввода пароля.
Установите требование сложных паролей и блокировку учетной записи после нескольких неверных попыток ввода пароля.Используйте ssh-сертификаты для подключения к серверу и отключите доступ по паролю.Запретите доступ пользователям с пустым паролем через инструмент passwd.
Пользователи
С помощью локальных политик безопасности и групповых политик безопасности отключите гостевые учетные записи, активируйте автоматическое завершение сессий пользователей при бездействии и запрос пароля для аккаунта при выходе из режима ожидания, а также запретите вход для аккаунтов с пустым паролем. Используйте предустановленные и собственные группы пользователей и разграничьте их права. Это проще, чем каждый раз устанавливать индивидуальные права доступа к файлам и сервисам.По возможности, не наделяйте пользователей лишними правами и используйте для задач, не требующих административных привилегий, учетную запись с ограниченными правами.
Создайте пользователя с ограниченными правами, и делегируйте ему права суперпользователя (добавлением в группу sudo). Выполняйте операции, для которых не требуются root-полномочия, от имени этого пользователя. Заблокируйте ssh и ftp-подключения для пользователя root (вы всегда сможете войти в его аккаунт, выполнив команду sudo –s или su root от имени рядового пользователя).
Настройте ssh на вход по ключу, отключите вход по паролю.Мастер настройки безопасности
Запустите мастер настройки безопасности (Security Configuration Wizard) на всех Windows-узлах вашей сети.
Не актуально для Linux-систем
Групповые политики
Корректно настройте групповые политики Active Directory, не используйте Рабочие Группы (Workgroup) в критической инфраструктуре.
Не актуально для Linux. Другое дело, если Linux-машины интегрированы в сеть Windows и работают с Active Directory – в этом случае изучите аспекты безопасности Samba. Используйте преднастроенные и собственные группы пользователей и разграничивайте их права. Это удобнее и надежнее, чем регулярно настраивать индивидуальные права.
Сеть
Активируйте доступ только из внутренней сети для машин и сервисов, которым не требуется интернет-доступ из внешней сети для полноценной работы. Используйте VLAN и VPN для сегментации групп узлов и безопасности каналов между ними. Готовые услуги по развертыванию VLAN иногда предлагаются самими хостинг-провайдерами. Смените порты стандартных сервисов на самих хостах или измените и переадресуйте порты сервисов на сетевом оборудовании (офисном роутере или виртуальном маршрутизаторе). Используйте IPsec для шифрования трафика, активируйте использование ключей и сертификатов (Secure Key Exchange) между сайтами.
Аналогично Windows + обратите внимание на системы централизованного контроля доступа, такие как Kerberos и OpenLDAP. Используйте TCPWrappers для фильтрации интернет-доступа. Используйте утилиту netstat для просмотра всех открытых портов и связанного с ними ПО.
Изоляция ролей и сервисов
В идеале, один сервер должен выполнять одну конкретную функцию (контроллер домена, файловый сервер, терминальный сервер и т.д.). На практике такая диверсификация ролей редко оказывается возможной в полной мере, но вы можете реализивать его достаточной степени, например, с помощью виртуальных машин, развернутых для выполнения отдельных ролей.Отключайте неиспользуемые роли и службы на сервере.
Избегайте установки на сервер лишних пакетов и работы неиспользуемых сервисов. Получить список запущенных сервисов можно с помощью chkconfig Физически (например, с помощью виртуализации) и логически изолируйте функции серверов. Для логической изоляции процессов вы можете использовать jail
Резервное копирование и восстановление
Настройте периодическое резервное копирование на отдельный диск, раздел или в безопасное удаленное хранилище. Сделать это можно с помощью стандартных инструментов Windows или стороннего ПО (например, Acronis). Если вы арендуете сервер у хостинг-провайдера, то, возможно, он предлагает готовые решения по резервному копированию.Не храните резервные копии незашифрованными и в незащищенных хранилищах.
Выполняйте регулярное резервное копирование на отдельный диск, раздел или в безопасное удаленное хранилище. Сделать это можно с помощью стандартных средств Linux или стороннего ПО (например, Acronis). При аренде сервера на хостинге вы можете использовать готовые решения по резервному копированию, предоставляемые хостинг-провайдером.Не храните резервные копии незашифрованными и в незащищенных хранилищах.
Удаленные рабочие столы
Выполните настройку безопасности RDP-подключений: запретите подключение к удаленным рабочим столам для пользователей с пустым паролем, смените стандартный порт Remote Desktop Protocol, настройте SSL для RDP. Хорошим способом усиления безопасности служб удаленных рабочих столов является использование шлюза терминальных серверов (TS Gateway)
Не включайте доступ через VNC для root-пользователя, особенно на постоянной основе. Используйте VNC через SSH для обеспечения безопасности удаленных рабочих столов на Linux-машинах. Используйте для VNC-сессий пароли, отличные от используемых в системе sudo-пользователями.
SQL (Базы данных)
Не используйте один и тот же SQL-сервер для работы со всеми критически важными базами. Если вы используете Active Directory, настройте запуск SQL-сервера от имени пользователя домена с минимальными полномочиями. Для аудита безопасности SQL-сервера вы можете обратиться к соответствующему списку рекомендаций Microsoft.
Для настройки параметров безопасности MySQL изучите и измените параметры файла my.cnf (/etc/mysql.cnf): bind-address, local-infile, log. Проверьте MySQL на наличие пользователей с пустым паролем. Измените правила удаленного администрирования MySQL (вместо любого адреса подключения укажите белый список IP, от которых будут приниматься обращения). Измените имя root-пользователя MySQL.
Веб-сервер
Отключите неиспользуемые функции IIS (например, FTP-сервер). Настройте параметры безопасности сервера IIS:права доступа к файлам, папкам, сайту, MIME-Type, фильтрацию запросов, пул приложений, ведение логов.
Используйте систему безопасности SE Linux. Установите и настройте modsecurity – firewall для веб-серверов. Отключите поддержку SSLv3 для Apache
Общий доступ к файлам
Измените права по умолчанию на доступ к общим директориям исходя из принципа установки минимально необходимого уровня прав доступа для пользователя. Давайте полные права только администраторам. Удалите лишние группы и пользователей.Предпочтительнее создавать группы пользователей и делегировать права им, а не отдельным клиентам. Не разрешайте анонимный доступ общим директориям. Используйте SFTP вместо FTP и уделите внимание его конфигурации.
Аналогично Windows + уделите внимание конфигурации безопасности Samba (при ее использовании).
Антивирусное ПО и системы мониторинга подозрительной активности
Если на вашем сервере выполняются действия, инициируемые пользователями (напр., работа с удаленными рабочими столами, сетевыми хранилищами), рекомендуется установка антивирусного ПО и его настройка на автоматическое обновление. В анализе состояния безопасности Windows-инфраструктуры вам также поможет Microsoft Baseline Security Analyzer.
Антивирусное ПО не требуется, но обязательны детальная настройка Firewall и мониторинг безопасности сервера (например, c помощью утилиты Tiger). Установите и настройте инспектор подозрительной активности (напр., fail2ban) для автоматического мониторинга и блокировки несанкционированных подключений.
Логи
Настройте ведение подробных логов, хотя бы по работе критически важных сегментов вашей инфраструктуры, и регулярно инспектируйте их.
Идентично Windows
Во время проведения регламентных операций происходит подтормаживание сервера, а так же плановые перезагрузки, поэтому эти операции в рабочие время клиента выполнять нельзя. Мы выполняем их в нерабочее время клиента, обычно в пятницу вечером.

Пожалуй, самая большая проблема в проведении регламентных операций – это регулярность их выполнения сотрудниками. Пресловутый «человеческий» фактор может дать о себе знать. Для решения этой проблемы мы придумали следующее: задачи на проведение регламентных операций ставятся сотрудникам системой ERP. На основании этой задачи сотрудник заполняет чек-лист, сгенерированный системой конкретно по объекту проверки. Если эта задача проигнорирована сотрудником, то у него происходит блокировка ERP до выполнения задачи. Также об этом сразу уведомляется руководитель, что позволяет контролировать своевременность исполнения регламентных операций.

Для контроля качества выполнения регламентных операций мы разработали три автоматизированных алгоритма проверки («роботов») которые в фоновом режиме постоянно проверяют на всех серверах ряд параметров: наличие открытых портов, наличие актуальных ненулевых резервных копий и наличие установленных обновлений системы за последний месяц. Эти параметры позволяют сказать проводились ли регламентные операции по факту.

Эффект от внедрения регламентных операций

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

Поражение операционной системы вредоносным ПО снизилось — на 75%

Снижение факта отсутствия актуальной целостной резервной копии — на 95%

Снижение сбоев операционной системы после неудачной установки обновлений — на 80%

Снижение сбоев, проявляющихся после перезагрузки сервера — на 70%

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

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

Комментариев нет:

Отправить комментарий