Представляем вашему вниманию чек-лист безопасности сервера, который пригодится вам при конфигурации и первичной проверке защищенности инфраструктуры виртуального сервера Windows- или Linux. В статье вы найдете простые и эффективные меры по исключению потенциальных атак.
Параметр | Windows | Linux |
Физическая безопасность | Необходимо исключить вероятность несанкционированного доступа к серверу посторонним людям. Если вы арендуете физический/виртуальный сервер – это должен обеспечить дата-центр. НЕ подключайте к серверу непроверенные носители. Используйте надежный пароль для входа в BIOS. |
Аналогично |
Файловая система | Проведите NTFS-форматирование всех разделов. Для работы системы применяйте различные разделы и подпользовательские программы/файлы. |
Следует использовать разные разделы для системных и пользовательских файлов (директории /home). Также рекомендуется провести шифрование разделов (LVM Encryption). Для контроля доступа к дискам настройте fstab. Для раздела boot установите права только на чтение. |
Регулярные обновления безопасности | Необходимо настроить сервер на автоматическое получение важных обновлений (Центр обновления Windows). | Рекомендуется настроить планировщик cron на периодическую установку обновлений. |
Firewall | Обязательно включите и корректно настройте Firewall (Брандмауэр Windows) на контроль ПО и портов. | Детально настройте iptables - либо вручную, либо с помощью специальных инструментов (UFW для Debian/Ubuntu, FirewallD для CentOS). |
Пароли | Установите требования сложных паролей и срок их действия, используя локальные политики безопасности. Активируйте временную или постоянную блокировку учетной записи после нескольких неверных попыток ввода пароля. |
Установите требование сложных паролей и блокировку учетной записи после нескольких попыток ввода некорректного пароля. Для подключения к серверу используйте ssh-сертификаты и отключите доступ по паролю. Запретите доступ пользователям с пустым паролем через инструмент passwd. |
Пользователи | Отключите гостевые учетные записи, активируйте автоматическое завершение сессий пользователей при бездействии и запрос пароля для аккаунта при выходе из режима ожидания, а также запретите вход для аккаунтов с пустым паролем. Для этого используйте локальные и групповые политики безопасности и. Используйте предустановленные и собственные группы пользователей, разграничив их права. Это будет проще и эффективней, чем каждый раз фиксировать индивидуальные права доступа. Не рекомендуется наделять пользователей лишними правами. Для задач, не требующих административных привилегий, используйте учетную запись с ограниченными правами. |
Создайте пользователя с ограниченными правами и предоставьте ему права суперпользователя (при помощи добавления в группу sudo). Все операции, для которых не нужны root-полномочия, проводите от имени этого пользователя. Заблокируйте ssh и ftp-подключения для пользователя root (у вас останется возможность войти в его аккаунт с помощью команды sudo –s или su root от имени рядового пользователя). Настройте ssh на вход по ключу. Отключите вход по паролю. |
Мастер настройки безопасности | На всех Windows-узлах вашей сети запустите мастер настройки безопасности (Security Configuration Wizard). | Не актуально |
Групповые политики | Настройте групповые политики Active Directory как можно более корректно. Не используйте Рабочие Группы (Workgroup) в критической инфраструктуре. | Не актуально для Linux, кроме тех случаев, когда Linux-машины интегрированы в сеть Windows и работают с Active Directory. В таком случае необходимо изучить аспекты безопасности Samba. Также примените преднастроенные и собственные группы пользователей и разграничьте их права. Это проще и эффективней, чем регулярно настраивать индивидуальные права. |
Сеть | Для машин и сервисов, которые не нуждаются в интернет-доступе из внешней сети, активируйте доступ только из внутренней сети. Применяйте VLAN и VPN для сегментации групп узлов и обеспечения безопасности каналов между ними. Некоторые хостинг-провайдеры предоставляют готовые услуги по развертыванию VLAN. Смените порты стандартных сервисов на самих хостах или измените и переадресуйте порты сервисов на сетевом оборудовании (офисном роутере или виртуальном маршрутизаторе). Применяйте IPsec для шифрования трафика, между сайтами активируйте использование ключей и сертификатов (Secure Key Exchange). |
Аналогично Windows. Дополнительно можете использовать системы централизованного контроля доступа (Kerberos и OpenLDAP). Обратите внимание на TCPWrappers для фильтрации интернет-доступа. Рекомендуется утилита netstat для просмотра всех открытых портов и связанного с ними ПО. |
Изоляция ролей и сервисов | В идеальном раскладе, один виртуальный сервер должен выполнять одну конкретную функцию. В реальности это трудно достижимо, но вы можете использовать виртуальные машины, рассчитанные на выполнение отдельных задач. Отключайте неиспользуемые роли и службы на сервере. |
По возможности не устанавливайте на VDS лишние пакеты и редко используемые сервисы. Просмотреть такие сервисы вы можете с помощью chkconfig. Физически (посредством виртуализации) и логически (jail) изолируйте функции серверов. |
Резервное копирование и восстановление | При помощи стандартных инструментов Windows или стороннего ПО (например, Acronis) настройте периодическое резервное копирование на отдельный диск, раздел или в безопасное удаленное хранилище. В случае аренды сервера у хостинг-провайдера вы можете воспользоваться готовыми решениями по резервному копированию. Исключите хранение резервных копий незашифрованными и в незащищенных хранилищах. |
Регулярное резервное копирование необходимо производить на отдельный диск, раздел или в безопасное удаленное хранилище. Используйте для этого стандартные средства Linux или стороннее ПО (например, Acronis). В случае аренды сервера у хостинг-провайдера вы можете воспользоваться готовыми решениями по резервному копированию. Исключите хранение резервных копий незашифрованными и в незащищенных хранилищах. |
Удаленные рабочие столы | Настройте безопасность RDP-подключений: настройте SSL для RDP, запретите подключение к удаленным рабочим столам для пользователей с пустым паролем, смените стандартный порт Remote Desktop Protocol. Повысьте уровень безопасности служб удаленных рабочих столов при помощи шлюза терминальных серверов (TS Gateway) |
Не включайте доступ через VNC для root-пользователя, особенно на постоянной основе. Для большей безопасности удаленных рабочих столов на Linux используйте VNC через SSH. Используйте для VNC-сессий пароли, отличающиеся от используемых в системе sudo-пользователями. |
SQL (Базы данных) | Один и тот же SQL-сервер для работы со всеми критически важными базами использовать НЕЛЬЗЯ. Применение Active Directory требует настройки запуска SQL-сервера от имени пользователя домена с минимальными полномочиями. Используйте рекомендации Microsoft для проверки безопасности SQL-сервера. |
Чтобы настроить параметры безопасности 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. |
Антивирусное ПО и системы мониторинга подозрительной активности | Установите и настройте на автоматическое обновление антивирусное ПО - если на VPS проводятся действия, инициируемые пользователями (напр., работа с удаленными рабочими столами, сетевыми хранилищами). Используйте Microsoft Baseline Security Analyzer для проверки состояния безопасности Windows-инфраструктуры. |
В антивирусном ПО нет необходимости, однако обязательно настройте Firewall и осуществляйте мониторинг безопасности сервера (можно использовать утилиты Tiger). Установите и настройте инспектор подозрительной активности (напр., fail2ban) для автоматического мониторинга и блокировки несанкционированных подключений. |
Логи | Рекомендуется настроить ведение подробных логов, по критически важным сегментам инфраструктуры это обязательно. Проводите регулярный мониторинг логов. | Аналогично Windows |
techsupport@cloudlite.ru - служба техподдержки
sales@cloudlite.ru - вопросы по услугам, оплате, документам и партнерству
partner@cloudlite.ru - партнерская программа